background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
1/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
Organization (S):
EDF/IMA/MN
Data-processing manual of Description
D6.06 booklet:
Document: D6.06.01
Use of the structures of data
count
Summary:
This document describes the routines making it possible to use the structures of data
count
described in [D4.02.05].
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
2/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
Contents
1 General information ....................................................................................................................................... 3
1.1 What one
count
? : ........................................................................................................ 3
1.2 Some properties of
tables
............................................................................................... 3
2 List of the utilities for the tables ..................................................................................................... 4
3 Routines of management of one
count
..................................................................................................... 4
3.1 Routine
TBCRSD
: To create a new table ................................................................................ 4
3.2 Routine
TBAJPA
: To add parameters to the table ................................................................... 4
3.3 Routine
TBEXIP
: To test the existence and the type of a parameter ................................................... 5
3.4 Routine
TBFUTB
: To amalgamate several tables in only one table ................................................ 5
3.5 To destroy a table ....................................................................................................................... 6
3.6 To duplicate a table .................................................................................................................... 6
4 Routines of writing of values in one
count
................................................................................ 6
4.1 Routine
TBAJLI
: To add a line to the table ............................................................................ 6
4.2 Routine
TBNULI
: Allows to recover a number of line in a table ............................... 7
4.3 Examples ................................................................................................................................... 7
5 Routines of reading of values in one
count
............................................................................... 8
5.1 Routine
TBEXVE
: Reading of the values of a column of a table ............................................... 8
5.2 Routine
TBEXFO
: Create a function starting from a table ............................................................. 8
5.3 Routine
TBLIVA
: Reading of the value of an airframe ................................................................... 8
6 Routines of filtering and sorting of a table ............................................................................................ 9
6.1 Mechanism of filtering of lines in one
count
....................................................................... 9
6.1.1 Particular case of the criteria of equality (or nonequality) for “floating” numbers ...... 10
6.2 Routine
TBEXTB
: Filtering and extraction of a new table .................................................... 11
6.3 Routine
TBTRTB
: Sorting of the table ............................................................................................... 12
7 Routine TBIMPR: Impression of a table ....................................................................................... 13
7.1 FORMAT:
“EXCEL”
................................................................................................................ 13
7.2 FORMAT:
“TABLE”
............................................................................................................ 13
7.3 FORMAT:
“MOT_CLE”
............................................................................................................ 13
7.4 FORMAT
“EXCEL”
with pagination (here definite by the parameter
“NODE”
) ............................ 14
8 Routine
TBEXLR
: Transformation of a table into one
SD LISTR8
.................................................. 14
8.1 Routine ....................................................................................................................... 14 drank
8.2 Interface
TBEXLR
................................................................................................................ 14
8.3 Restrictions of use of
TBEXLR
.......................................................................................... 14
8.3.1 Examples of diagonal tables per blocks ........................................................................ 15
8.3.2 Examples of nondiagonal tables per blocks .................................................................. 15
8.4 How a table it is transformed into
LISTR8
?............................................................. 15
8.4.1 stage 1: one retains only the nonempty columns of type
“I”
or
“R”
........................... 16
8.4.2 stage 2: reconnaissance of the “blocks” of the “diagonal” table .................................... 16
8.4.3 stage 3: setting in vector of the values selected, conversion of the entireties into realities:........... 16
9 simple Example of creation and exploitation of one
count
.............................................................. 17
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
3/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
1 General information
1.1 What is this
that one
count
? :
One
count
is a structure of data of data-processing nature allowing to store one
together of whole values, real, complex or character strings.
A table is comparable with a data base EXCEL (version 5), i.e. one can see it
as a list of columns (the term of “column” is here to make the bringing together with a list
EXCEL; that does not want to say that the impression of a table is always done in column (see [§7])) in
opposite. Each column has a field name, that we call parameter, and contains of
similar data of type:
I, R, C, K8, K16, K24 or K32
.
Example 1:
T1
NUME_ORDRE
INST
NODE
G_LOCAL
1
10.
N1
5.
1
10.
N2
6.
1
10.
N3
7.
1
10.
N4
8.
2
20.
N1
9.
2
20.
N2
9.
2
20.
N3
8.
2
20.
N4
8.
3
30.
N1
7.
3
30.
N2
6.
3
30.
N3
5.
3
30.
N4
4.
Example 2:
T2
ACTION
NUME_ORDRE
INST
NODE
DX
DY
NET
SIXX
ENTITLE 1
1
10.
N1
3.
5.
ENTITLE 1
1
10.
N2
6.
7.
ENTITLE 1
1
10.
N3
8.
9.
ENTITLE 1
2
20.
N1
11.
12.
ENTITLE 1
2
20.
N2
15.
13.
ENTITLE 1
2
20.
N3
19.
18.
ENTITLE 2
2
20.
MA1
- 12.
ENTITLE 2
2
20.
MA2
- 14.
1.2
Some properties of
tables
·
A table has a limited number of columns (or parameters). These parameters are chosen by
developers of the controls creating of the tables. The name of a parameter is a channel of with
more 16 characters.
·
On the other hand, the number of lines of a table is often “dynamic”: it depends in general
choices of the user: nodes of examination, moments of calculations,…
·
The values contained in a column of a table are very in the same way standard FORTRAN: realities,
complexes, entireties or texts. One can store in form “text” in a table of the names of
SD Aster or of the names of objects JEVEUX; for example of the names of functions.
·
A table is known as “full” when all its lines contain values for all them
parameters of the table. The table
T1
above is full. A table which is not full is known as
(table “digs”
t2
above).
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
4/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
·
The lines of a table are naturally ordered by their command of insertion in the table
(routine
TBAJLI
).
·
The columns of a table are naturally ordered by the command of statement of theirs
parameters (routine
TBAJPA
).
·
A table has at least a line. On a line, there can be blank cells: the parameter
associated (table is not affected
t2
above).
2
List utilities for the tables
Function
name
paragraph
To create a new table
TBCRSD
[§3.1]
To declare the parameters
TBAJPA
[§3.2]
To recover the existence and the type of a parameter
TBEXIP
[§3.3]
To amalgamate several tables in only one
TBFUTB
[§3.4]
To destroy a table
DETRSD
[§3.5]
To duplicate a table
COPISD
[§3.6]
To build a table while adding to it of the lines to one
TBAJLI
[§4.1]
To recover the number of a line in a table
TBNULI
[§4.2]
To print a table on listing
TBIMPR
[§7]
To filter the lines of a table by imposing criteria on one or more
parameters to create a new table of smaller size
TBEXTB
[§6.2]
To sort the lines of a table according to certain parameters
selected. The result of the sorting is a table whose lines were
reordered.
TBTRTB
[§6.3]
To collect in a vector the values corresponding to a parameter
given
TBEXVE
[§5.1]
To create a function starting from 2 columns of a table
TBEXFO
[§5.2]
To see the value associated with a parameter given for a line with a table
TBLIVA
[§5.3]
To recover all the numerical values of a table in one
SD
LISTR8
TBEXLR
[§8]
3
Routines of management of one
count
3.1
Routine
TBCRSD
: To create a new table
TBCRSD
(nomtab, bases)
nomtab
in
K19
Name of the new table to be created
If it already exists, it is destroyed + emission <A>
base
in
K1
Base creation of the table
count (“G”, “V”,…)
3.2
Routine
TBAJPA
: To add parameters to the table
TBAJPA
(nomtab, nbpar, nompar, typpar)
nomtab
in
K19
Name of the table where one wants to add parameters
nbpar
in
I
A number of parameters to be added
nompar
in
V (K16)
List names of the parameters to be added
typpar
in
V (K8)
List types of the parameters:
“R”, “I”, “It, “K8”, “K16”, “K24”, “K32”
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
5/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
3.3
Routine
TBEXIP
: To test the existence and the type of a parameter
TBEXIP
(nomtab, para, exist, typpar)
nomtab
in
K19
Name of the table to be examined
para
in
K16
parameter to be tested
exist
out
L
.
TRUE
. : the parameter already exists in the table
nomtab
typpar
out
K8
type of the parameter if there exists déjàdans the table:
“R”, “I”, “It, “K8”, “K16”, “K24”, “K32”
3.4
Routine
TBFUTB
: To amalgamate several tables in only one table
TBFUTB
(tabout, basout, ntab, ltabin, para, typpar, VI, vr, vc, vk)
tabout
in
K19
Name of the table which one wants to create
basout
in
K1
Base creation of the table
tabout (“G”, “V”,…)
ntab
in
I
A number of tables which one wants to amalgamate
ltabin
in
K19
Names of the tables which one wants to amalgamate
para
in
K16
New parameter (optional) which will make it possible to distinguish
the origin of each line of the new table
if
para=' '
the following arguments are not used.
typpar
in
K8
Type of the new parameter (optional)
VI
in
V (I)
List values for the new parameter
“I”
(optional)
vr
in
V (R)
List values for the new parameter
“R”
(optional)
vc
in
V (C)
List values for the new parameter
“It
(optional)
vk
in
V (K *)
List values for the new parameter
“K”
(optional)
This routine can be practical to create a hollow table, the developer can realize each
under-table separately and to use the routine
TBFUTB
to amalgamate them in only one table.
Example:
One wants to amalgamate the 2 tables: T1 and T2
With
B
C
D
x1
x2
x3
x4
x5
x6
x7
x8
With
B
E
y1
y2
y3
y4
y5
If one writes:
ltabin (1) =T1
ltabin (2) =T2
CAL TBFUTB (T3, “V”, 2, ltabin, '', kbid, ibid, rbid, cbid, kbid)
The table is obtained: T3
With
B
C
D
E
x1
x2
x3
x4
x5
x6
x7
x8
y1
y2
y3
y4
y5
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
6/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
If one writes:
ltabin (1) =T1
ltabin (2) =T2
VK (1) = ' ACTION1'
VK (2) = ' ACTION2'
CAL TBFUTB (T3, “V”, 2, ltabin, “, “K8”, ibid, rbid, cbid, VK)
The table is obtained: T3
NR
With
B
C
D
E
ACTION1
x1
x2
x3
ACTION1
x4
x5
ACTION1
x6
x7
x8
ACTION2
y1
y2
y3
ACTION2
y4
y5
Remarks on the command of the lines and the columns of the new table:
The lines of the new table are ordered by putting the lines of the tables end to end that
one amalgamates.
To order the parameters the following rules are adopted:
·
the new parameter (optional) is numbered in first,
·
parameters of the 1
era
count of
ltabin
are then added in the order that they have in
ltabin (1)
·
parameters of the 2
ème
count of
ltabin
are then added (except those already present
in
ltabin (1)
) in the order which they have in
ltabin (2)
·
3.5
To destroy a table
CAL DETRSD (“TABLE”, nomtab)
3.6
To duplicate a table
CAL COPISD (“TABLE”, “V”, tabin, tabout)
4
Routines of writing of values in one
count
4.1
Routine
TBAJLI
: To add a line to the table
TBAJLI
(nomtab, nbpar, nompar, VI, vr, vc, vk, nume)
nomtab
in
jxvar
K19
Name of the table where one wants to add a line
nbpar
in
I
A number of parameters for the line
nompar
in
V (K16)
List names of the parameters of the line
VI
in
V (I)
List values for the parameters
“I”
vr
in
V (R)
List values for the parameters
“R”
vc
in
V (C)
List values for the parameters
“It
vk
in
V (K *)
List values for the parameters
“K”
nume
in
I
/
0
: one adds the line at the end of the table
/
I
: one replaces
I
ième line of the table
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
7/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
Example:
That is to say a table containing the “whole” parameters of the type
“I1”, “I2”, “I3”
, parameters
“real”
“R1”
and
“R2”
and parameters “character strings”
“K1”
and
“K2”
Let us suppose that one wants to add a line to it containing:
I2=i2, R1=r1, K2=k2, K1=k1
.
One will be able to call the routine
TBAJLI
with the arguments:
nbpar = 4
nompar = (“I2”, “R1”, “K2”, “K1”)
VI = (i2)
vr = (r1)
vk = (k2, k1)
nume = 0
4.2
Routine
TBNULI
:
Allows to recover a number of line in
a table
TBNULI
(tabin, npacri, lipacr, VI, vr, vc, vk, lprec, lcrit, nume)
tabin
in
K19
Name of the table which one wants to recover a line
npacri
in
I
A number of parameters implied in the criteria of selection
line (dimension of
lipacr
)
lipacr
in
V (K16)
List names of the parameters criteria
VI
in
V (I)
Values of the criteria for the parameters
“I”
vr
in
V (R)
Values of the criteria for the parameters
“R”
vc
in
V (C)
Values of the criteria for the parameters
“It
vk
in
V (K)
Values of the criteria for the parameters
“K”
lcrit
in
V (K8)
List secondary criteria of equality for the parameters
floating:
“EQUAL”
,
“RELA”
,
“ABSO”
[§6.1.1].
lprec
in
V (R)
List precise details (for the criteria of equality of the parameters
floating [§6.1.1].)
nume
out
I
= 0
: There is no line corresponding to the criteria.
= I
: The line
I
is the only one which corresponds to the criteria of
selection
< 0: There are several lines corresponding to the criteria
One seeks a line in the table
tabin
by imposing conditions on its parameters.
The mechanism of selection of a line in a table (arguments
lipacr, lcrit, lprec, VI,
vr, vc, vk
) is explained to [§6.1].
When this line is found (and single), one returns his number what makes it possible to modify this line
using the routine
TBAJLI
.
4.3 Examples
That is to say the table: T3
With
B
C
x1
x2
x6
x7
x8
One adds a line to T3:
CAL TBAJLI (T3,1, “B”, ibid, z1, cbid, kbid, 0)
The table then is obtained:
With
B
C
x1
x2
x6
x7
x8
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
8/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
z1
One recovers the number of the line such as A=x1:
CAL TBNULI (T3,1, “A”, ibid, x1, cbid, kbid, 1.d-6, “RELA”, ilig)
The line is modified
ilig
:
CAL TBAJLI (T3,1, “It, ibid, z2, cbid, kbid, ilig)
The table then is obtained:
With
B
C
z2
x6
x7
x8
z1
5
Routines of reading of values in one
count
5.1
Routine
TBEXVE
:
Reading of the values of a column of a table
TBEXVE
(nomtab, para, nomobj, basobj, nbval, typval)
nomtab
in
jxin
K19
Name of the table in which one wants to extract one
column
para
in
K16
Parameter indicating the column to be extracted
nomobj
in
jxout
K24
Name of the object
JEVEUX
containing the values read in
the table
basobj
in
K1
Base
“G”, “V”
on which one created the vector
nomobj
nbval
out
I
Numbers of extracted values
typval
out
K4
Type
JEVEUX
extracted values:
I/R/C/K8, K16,…
5.2
Routine
TBEXFO
:
Create a function starting from a table
TBEXFO
(nomtab, parax, paray, nomfo, basfon)
nomtab
in
jxin
K19
Name of the table in which one wants to extract one
function.
parax
in
K16
Parameter X-coordinate indicating the column to be extracted
paray
in
K16
Parameter ordered indicating the column to be extracted
nomfo
in
jxout
K24
Name of the function to be created
basfon
in
K1
Base
“G”
,
“V”
on which one creates the function
5.3
Routine
TBLIVA
:
Reading of the value of an airframe
TBLIVA
(nomtab, npacri, lipacr, VI, vr, vc, vk, lcrit, lprec, para, ctype,
vali, valr, valc, valk, ier)
nomtab
in
jxin
K19
Name of the table in which one wants to extract the value
of an airframe
npacri
in
I
A number of parameters implied in the criteria of
choice of the line (dimension of
lipacr
)
lipacr
in
V (K16)
List parameters criteria
VI
in
V (I)
Values of the criteria for the parameters
“I”
vr
in
V (R)
Values of the criteria for the parameters
“R”
vc
in
V (C)
Values of the criteria for the parameters
“It
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
9/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
vk
in
V (K *)
Values of the criteria for the parameters
“K”
lcrit
in
V (K8)
List secondary criteria of equality for
floating parameters:
“EQUAL”
,
“RELA”
,
“ABSO”
[§6.1.1]
lprec
in
V (R)
List precise details (for the criteria of equality of
floating parameters [§6.1.1])
para
in
K16
Parameter associated with the column with the sought value
ctype
out
K8
Type of the found value
vali
out
I
Found value if parameter
“I”
valr
out
R
Found value if parameter
“R”
valc
out
C
Found value if parameter
“It
valk
out
K *
Found value if parameter
“K”
ier
out
I
Code return:
0
: OK
1
: para does not exist in the table for the found line
2
: no the line found corresponding to the criteria
3
: several lines found corresponding to the criteria
This routine makes it possible to read the value associated with a parameter given for a selected line
in a table. One selects the line by imposing values on certain parameters.
mechanism of selection of a line in a table (arguments
lipacr, lcrit, lprec, VI,
vr, vc, vk
) is explained to [§6.1.1].
Example:
That is to say the table:
T3
With
B
C
7.
4
“Z”
12.
0
“A1”
4
“A2”
lipacr (1) = ' A', vr (1) =6.999, lcrit (1) = ' RELA', lprec (1) =0.01
lipacr (2) = ' B', VI (1) = 4
CAL TBLIVA (T3,2, lipacr, VI, vr, vc, vk, lcrit, lprec, “It, ctype,
vali, valr, valc, valk, ier)
at exit one a:
valk=' Z'
ier=0
ctype=' K8'
6
Routines of filtering and sorting of one
count
6.1
Mechanism of filtering of lines in a table
In the routines
TBLIVA
,
TBNULI
and
TBEXTB
, it is necessary “to filter” an existing table for
to retain only one of them (or several) lines. It is this mechanism which we explain here.
To filter a table, the user forces criteria on certain parameters. He will say for example
to retain that lines of the table for which
NUME_ORDRE=1
.Il can use several criteria of
selection of the lines and the same parameter can appear several times in the list of the criteria.
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
10/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
The “types” of possible selection criterion are:
EQ
“equality” for the entireties, the texts, realities or the complexes.
For the floating numbers (real or complex), this criterion is supplemented by one
“secondary” criterion explained below (cf 6.1.1).
“not-equality” (cf.
EQ
)
LT
“smaller than”
Relations of command:
- natural for the entireties and realities
- alphabetical for the texts
- invalid for the complexes
WP
“larger than” (cf.
LT
)
“smaller or equal to” (cf.
LT
)
GE
“larger or equal to” (cf.
LT
)
VACUUM
blank cell
NON_VIDE
Nonempty airframe
Note:
In the routines
TBLIVA
and
TBNULI
, the type of criterion of selection is (for the moment) always
equality (
“EQ”
). The list of the criteria given in these 2 routines (
lcrit
) is thus the list of
“secondary” criteria (cf 6.1.1).
Arguments:
VI, vr, vc, vk
of these routines the values associated with these criteria contain
(according to the type associated with each parameter to which the criteria relate).
We will explain the use of all these arguments on an example (without floating numbers):
That is to say a table containing of the parameters
I1, I2, I3
of “whole” type and
K1, K2
of type “character”.
One wants to extract from them the lines which satisfy the following criteria:
1) the value of
K1
is different from '
ACTION1
'
2) the value of
I2
is included/understood enters
12
and
21
3) the value of
I3
is worth
999
4) the value of
I1
is “
not vacuum
5) the value of
K2
is “higher” (within the meaning of the alphabetical order) than
“III”
One will give like arguments of
TBEXTB
:
npacri=6
There are 6 selection criteria because the 2
ème
criterion is double: (x>12) and (x<21)
lipacr = (“K1”, “I2”, “I2”, “I3”, “I1”, “K2”)
lcrpa = (“”, “WP”, “LT”, “EQ”, “NON_VIDE”, “WP”)
vk (1) = ' ACTION1', VI (1) =12, VI (2) =21, VI (3) =999, vk (2) = ' III'
Note:
Types of criterion
“VACUUM”
and
“NON_VIDE”
do not require arguments in the tables
VI, vr
,…
6.1.1 Particular case of the criteria of equality (or nonequality) for numbers
“floating”
The equality of the floating numbers is a dangerous concept in data processing because it can depend on
certain truncations: round-off errors for example. For these criteria of selection, one thus uses
a list of secondary criteria which specify which equality is desired. There is three possible type for
secondary criteria:
“EQUAL”
“exact” equality of the 2 floating numbers
“ABSO”
equality of the 2 floating numbers except for an epsilon (
eps
) in absolute comparison:
truth if
|x1-x2| < eps
“RELA”
equality of the 2 floating numbers except for an epsilon (
eps
) in relative comparison:
truth if
|x1-x2| < eps * |x1|
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
11/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
Example:
That is to say a table containing the whole parameters:
I1
and
I2
, real parameters
R1
and
R2
and
complex parameters
C1
and
C2
. One wants to extract the lines from them corresponding to the following criteria:
1)
I1 > 12
2)
C1 = c1
with
0.01
near in “absolute”
3)
R1 = r1
with
0.1
near in “relative”
4)
C2/= c2
with
0.02
near in “relative” (the numbers which are not in the disc of center
c2
and of radius
0.002 * c2
)
5)
R2/= r2
with
0.2
near in “absolute” (the numbers which are not in the interval of center
r2
and of radius
0.2
)
One will give like arguments of
TBEXTB
:
npacri=5
lipacr = (“I1”, “C1”, “R1”, “C2”, “R2”)
licrpa = (“WP”, “EQ”, “EQ”, “”, “”)
VI (1) = 12, vr (1) =r1, vr (2) =r2, vc (1) =c1, vc (2) =c2
lcrit = (“ABSO”, “RELA”, “RELA”, “ABSO”)
lprec = (0.01, 0.1, 0.02, 0.2)
6.2
Routine
TBEXTB
:
Filtering and extraction of a new table
TBEXTB
(tabin, basout, tabout, npacri, lipacr, lcrpa, VI, vr, vc, vk,
lprec, lcrit)
tabin
in
jxin
K19
Name of the table which one wants to extract from the lines
basout
in
K1
“G”, “V”
: base creation of
tabout
tabout
in
jxout
K19
Name of the table which will contain the lines extracted from
tabin
npacri
in
I
A number of parameters implied in the criteria
of extraction (dimension of
lipacr
and of
lcrpa
)
lipacr
in
V (K16)
List parameters criteria [§6.1]
lcrpa
in
V (K10)
List criteria of selection:
EQ, LT, WP, IT, GE, EMPTY, NON_VIDE
The significance of these criteria is given to [§6.1].
lcrit
in
V (K8)
List secondary criteria of equality for
floating parameters:
“EQUAL”
,
“RELA”
,
“ABSO”
[§6.1.1].
lprec
in
V (R)
List precise details (for the criteria of equality of
floating parameters [§6.1.1].)
VI
in
V (I)
Values of the criteria for the parameters
“I”
vr
in
V (R)
Values of the criteria for the parameters
“R”
vc
in
V (C)
Values of the criteria for the parameters
“It
vk
in
V (K)
Values of the criteria for the parameters
“K”
Note:
When one recovered in
tabin
lines satisfying all the criteria given, one
preserve in the table
tabout
that the columns for which there is at least a value.
The same parameter can appear several times in the list of the criteria (
lcrpa
).
Example:
That is to say the table:
T3
With
B
C
4
“Z”
11.
0
“A1”
24.
9
“A2”
240.
9
“A2”
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
12/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
12.
12.
lipacr (1) = ' A'
lcrpa (1) = ' NON_VIDE'
lipacr (2) = ' B'
lcrpa (2) = ' GT'
VI (1) = 1
lipacr (3) = ' A'
lcrpa (3) = ' LE'
vr (1) = 1.d2
CAL TBEXTB (T3, “G”, T3 B, 3, lipacr, lcrpa, VI, vr, vc, vk, lprec, lcrit)
at exit
T3 B
contains:
With
B
C
24.
9
“A2”
12.
12.
6.3
Routine
TBTRTB
:
Sorting of the table
TBTRTB
(tabin, basout, tabout, will npara, lipara, lcrit)
tabin
in
jxin
K19
Name of the table which one wants to classify the lines
basout
in
K1
Base creation of
tabout
:
G/V/L
tabout
in
jxout
K19
Name of the table containing all the lines of
tabin
classified according to following criteria's
will npara
in
I
A number of parameters implied in the sort keys
(dimension of
will lipara
and of
lcrit
)
will lipara
in
V (K16)
List parameters criteria
lcrit
in
V (K2)
List types of criteria:'
CR'
or
“DR.”
“CR”
: ascending order
“DR.”
: descending order
This routine is used to create a new table (
tabout
) by permuting the command of the lines of a table
existing (
tabin
) according to certain sort keys.
Sorting
Values
R, I
: By ascending values or decreasing
Values
K8, K16, K24, K32
: Alphabetically growing or decreasing
Example:
will npara = 2
will lipara = (“NODE”, “INST”)
lcrit = (“CR”, “DR.”)
The new table (
tabout
) will be ordered:
·
firstly alphabetically crescent of the names of nodes,
·
secondly by order descending of the moments of calculation.
Note:
The 2nd criterion does not apply that if there is equality within the meaning of the first criterion.
The blank cells are classified in “head” (they are smallest for the relation of command).
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
13/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
7
Routine
TBIMPR:
Impression of a table
TBIMPR
(table, format, file, nparim, lipaim, nparpg, lipapg, formar,
formac)
count
in
K19
Name of the table which one wants to print
format
in
K8
Format of impression of the table:
“EXCEL”
,
“TABLE”
,
“MOT_CLE”
file
in
K *
Name of the file listing:
“RESULT”
,…
nparim
in
I
A number of parameters to be printed
if
nparim=0
, ALL the parameters are printed.
lipaim
in
V (K16)
List parameters to be printed.
The command of impression of the parameters is that of the list
lipaim
nparpg
in
I
A number of parameters of “pagination”
lipapg
in
V (K16)
List parameters of pagination
formar
in
K8
/
Format of writing of the actual values
/''
=> default value:
1PE12.5
formac
in
K2
Convention of writing of the complex numbers:
/''
=> default value: '
RI'
/“IH”
(real part, imaginary part)
/“MP”
(module, phase)
The user with the possibility of printing his results under the following formats:
7.1 FORMAT
:
“EXCEL”
NUME_ORDRE
INST
NODE
DX
DY
1
4.
N7
3.4
3.8
1
4.
N4
2.4
2.8
1
4.
N2
1.4
1.8
4
8.
N7
3.4
3.8
4
8.
N4
2.4
2.8
4
8.
N2
1.4
1.8
7
20.
N7
3.4
3.8
7
20.
N4
2.4
2.8
7
20.
N2
1.4
1.8
7.2 FORMAT
:
“TABLE”
DX
INST
4.
8.
20.
N7 NODE
3.4
3.4
3.4
N4
2.4
2.4
2.4
N2
1.4
1.4
1.4
7.3 FORMAT
:
“MOT_CLE”
NUME_ORDRE: 1 INST: 4.
NODE: N7 DX: 3.4
DY: 3.8
NUME_ORDRE: 1 INST: 4.
NODE: N4 DX: 2.4
DY: 2.8
NUME_ORDRE: 1 INST: 4.
NODE: N2 DX: 1.4
DY: 1.8
NUME_ORDRE: 4 INST: 8.
NODE: N7 DX: 3.4
DY: 3.8
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
14/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
7.4 FORMAT
“EXCEL”
with pagination (here definite by the parameter
“NODE”
)
NODE: N7
NUME_ORDRE
INST
DX
DY
1
4.
3.4
3.8
4
8.
3.4
3.8
7
20.
3.4
3.8
NODE: N4
NUME_ORDRE
INST
DX
DY
1
4.
2.4
2.8
4
8.
2.4
2.8
7
20.
2.4
2.8
NODE: N2
NUME_ORDRE
INST
DX
DY
1
4.
1.4
1.8
4
8
1.4
1.8
7
20.
1.4
1.8
By defect the format of impression is the format
“EXCEL”
, i.e. presentation in columns of
various selected parameters.
8
Routine
TBEXLR
:
Transformation of a table into one
SD
LISTR8
8.1
Routine drank
To reach quickly (on the level of the routines te00ij for example) information contained
in tables, one can transform these tables into SD of the type LISTR8 .C' is the object of the routine
TBEXLR
.
Note:
The reading of this paragraph 8 can be jumped by all those which are not interested in the routine
very particular that is
TBEXLR
.
8.2 Interface
of
TBEXLR
TBEXLR
(table, lr8, base)
count
in
K19
Name of the table which one wants to transform into SD
LISTR8
lr8
in
jxout
K8
Name of the SD
LISTR8
result
base
in
K1
Base creation of
lr8
:
“G”
,
“V”
,…
8.3
Restrictions of use of
TBEXLR
The routine
TBEXLR
cannot transform one
count
in
LISTR8
that if this table is “diagonal by
blocks “. If it is not the case, the routine will stop in fatal error.
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
15/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
8.3.1 Examples of diagonal tables per blocks
With
B
C
D
E
F
1.
2.
2.1
3.
8.
9.
10.
11.
19.
With
B
C
D
E
1.
3.
10.
11.
8.3.2 Examples of nondiagonal tables per blocks
With
B
C
D
E
F
1.
2.
2.1
3.
5.
7.
8.
9.
10.
11.
19.
With
B
C
D
E
F
1.
2.
2.1
3.
8.
9.
10.
11.
4.
19.
8.4 How
one
count
it is transformed into
LISTR8
?
That is to say the table
parameter
B
C
D
E
F
G
H
I
K
values type
K1
R
I
K1 R
R
I
I
R
W
1.
2
S
3.
2.
2
S
3.
W
3.
2
S
3.
S
1
2
S
1
3
S
1
4
S
1
5
S
12.
13.
14.
S
15.
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
16/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
S
16.
8.4.1 stage 1: one retains only the nonempty columns of `type
I
'or `
R
'
parameter
C
D
F
H
I
K
values type
R
I
R
I
I
R
1.
2
3.
2.
2
3.
3.
2
3.
1
2
1
3
1
4
1
5
12.
13.
14.
15.
16.
8.4.2 stage 2: reconnaissance of the “blocks” of the “diagonal” table
parameter
C
D
F
H
I
K
values type
R
I
R
I
I
R
1.
2
3.
2.
2
3.
3.
2
3.
1
2
1
3
1
4
1
5
12.
13.
14.
15.
16.
8.4.3 stage 3: setting in vector of the values selected, conversion of the entireties into
realities:
One puts end to end in the vector of realities the numerical values found in the blocks of
count:
nb_blocs, nb_col (bloc1), nb_lig (bloc1), values (bloc1), nb_col (bloc2),
nb_lig (bloc2), values (bloc2),…
The values of a block are written line by line. The table above becomes the vector of realities then
below.
3.
3.
3.
1.
2.
3.
2.
2.
3.
3.
2.
3.
2.
4.
1.
2.
1.
3.
1.
4.
1.
5.
1.
5.
12.
13.
14.
15.
16.
Note:
We presented the list of realities on 4 lines to facilitate the reading of the result of
transformation, but
LISTR8
produced contains
(3 * 3+2 * 4+1 * 5) + 3 * 2 + 1
realities simply
put end to end.
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
17/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
9
Simple example of creation and exploitation of one
count
That is to say the example of the table
T2
:
ACTION
NUME_ORDRE
INST
NODE
DX
DY
NET
SIXX
ENTITLE 1 1
10.
N1
3.
5.
ENTITLE 1 1
10.
N2
6.
7.
ENTITLE 1 1
10.
N3
8.
9.
ENTITLE 1 2
20.
N1
11.
12.
ENTITLE 1 2
20.
N2
15.
13.
ENTITLE 1 2
20.
N3
19.
18.
ENTITLE 2 5
20.
MA1
- 12.
ENTITLE 2 5
20.
MA2
- 14.
Notice preliminary:
The detailed interfaces of the utility routines are given to the paragraph [§2]. But them
some lines of FORTRAN below can be included/understood without their reading.
%
Statement of the table on the basis
TOTAL
:
CAL TBCRSD (“T2”, “G”)
%
Statements of the parameters of the table and the types of their data:
CAL TBAJPA (“T2”, 1, “ACTION”, “K8”)
CAL TBAJPA (“T2”, 1, “NUME_ORDRE”, “I”)
CAL TBAJPA (“T2”, 1, “INST”, “R”)
CAL TBAJPA (“T2”, 1, “NODE”, “K8”)
CAL TBAJPA (“T2”, 1, “DX”, “R”)
CAL TBAJPA (“T2”, 1, “DY”, “R”)
CAL TBAJPA (“T2”, 1, “MESH”, “K8”)
CAL TBAJPA (“T2”, 1, “SIXX”, “R”)
%
Addition of the lines in the table:
REAL * 8 VR (3)
CHARACTER * 8 VK (2)
INTEGER VI (1)
CHARACTER * 16 LPARA1 (6), LPARA2 (5)
DATED LPARA1/“ACTION”, “NUME_ORDRE”, “INST”, “NODE”, “DX”, “DY”/
DATED LPARA2/“ACTION”, “NUME_ORDRE”, “INST”, “MESH”, “SIXX”/
%
VK (1) = action
IF action = intitule1
C nume_ordre = 1,2
VI (1) = nume_ordre
VR (1) = T = urgent (nume_ordre)
C node = N1, N2, N3
VK (2) = node
VR (2) = DX (node, T)
VR (3) = DY (node, T)
CAL TBAJLI (“T2”, 6, LPARA1, VI, VR, CBID, VK, 0)
CONTINUOUS
CONTINUOUS
ELSE IF action = intitule2
VI (1) = 5 = nume_ordre
VR (1) = T =instant (5)
C nets = MA1, MA2
VK (2) = mesh
VR (2) = SIXX (mesh, T)
CAL TBAJLI (“T2”, 5, LPARA2, VI, VR, CBID, VK, 0)
CONTINUOUS
ENDIF
background image
Code_Aster
®
Version
4.0
Titrate:
Use of the structures of data
count
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
18/18
Data-processing manual of Description
D6.06 booklet:
HI-75/97/032 - Ind A
Intentionally white left page.