Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
1/18
Organization (S): EDF/IMA/MN
Handbook of Descriptif Informatique
D6.06 booklet:
Document: D6.06.01
Use of the structures of data counts
Summary:
This document describes the routines making it possible to use the structures of data counts described in [D4.02.05].
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
2/18
Contents
1 General information ....................................................................................................................................... 3
1.1 What a table? : ........................................................................................................ 3
1.2 Some properties of the tables ............................................................................................... 3
2 List of the utilities for the tables ..................................................................................................... 4
3 Routines of management of a table ..................................................................................................... 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 a table ................................................................................ 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 a table ............................................................................... 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 a cell ................................................................... 8
6 Routines of filtering and sorting of a table ............................................................................................ 9
6.1 Mechanism of filtering of lines in a table ....................................................................... 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: “TABLEAU” ............................................................................................................ 13
7.3 FORMAT: “MOT_CLE” ............................................................................................................ 13
7.4 FORMAT “EXCEL” with pagination (here definite by parameter “NOEUD”) ............................ 14
8 Routine TBEXLR: Transformation of a table into a 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 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: recognition 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 a table .............................................................. 17
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
3/18
1 General information
1.1 What is this
that one
counts? :
A table is a structure of data of data-processing nature making it possible 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
NOEUD
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
NOEUD
DX
DY
MAILLE
SIXX
INTITULE 1
1
10.
N1
3.
5.
INTITULE 1
1
10.
N2
6.
7.
INTITULE 1
1
10.
N3
8.
9.
INTITULE 1
2
20.
N1
11.
12.
INTITULE 1
2
20.
N2
15.
13.
INTITULE 1
2
20.
N3
19.
18.
INTITULE 2
2
20.
MA1
- 12.
INTITULE 2
2
20.
MA2
- 14.
1.2
Some properties of the tables
· A table has a limited number of columns (or parameters). These parameters are chosen by
developers of the commands creating of the tables. The name of a parameter is a chain 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. Table T1 above is full. A table which is not full is known as
“digs” (table t2 above).
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
4/18
· 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 declaration of theirs
parameters (routine TBAJPA).
· A table has at least a line. On a line, there can be blank cells: the parameter
associated is not affected (table 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 TBEXTB
[§6.2]
parameters to create a new table of smaller size
To sort the lines of a table according to certain parameters TBTRTB
[§6.3]
selected. The result of the sorting is a table whose lines were
reordered.
To collect in a vector the values corresponding to a parameter TBEXVE
[§5.1]
given
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 a SD TBEXLR
[§8]
LISTR8
3
Routines of management of a table
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 counts (“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”
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
5/18
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 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
CALL 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
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
6/18
If one writes:
ltabin (1) =T1
ltabin (2) =T2
VK (1) = ' ACTION1'
VK (2) = ' ACTION2'
CALL 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,
· the parameters of the 1ère table of ltabin are then added in the order that they have in
ltabin (1)
· the parameters of the 2nd table 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
CALL DETRSD (“TABLE”, nomtab)
3.6
To duplicate a table
CALL COPISD (“TABLE”, “V”, tabin, tabout)
4
Routines of writing of values in a table
4.1
Routine TBAJLI: To add a line to the table
TBAJLI
(nomtab, nbpar, nompar, VI, vr, vc, vk, nume)
nomtab
in
K19
Name of the table where one wants to add a line
jxvar
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: the iième line of the table is replaced
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
7/18
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 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 his parameters.
The mechanism of selection of a line in a table (arguments lipacr, lcrit, lprec, VI,
vr, vc, vk) are explained to [§6.1].
When this line is found (and single), one returns his number what makes it possible to modify this line
using 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:
CALL TBAJLI (T3,1, “B”, ibid, z1, cbid, kbid, 0)
The table then is obtained:
With
B
C
x1
x2
x6
x7
x8
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
8/18
z1
One recovers the number of the line such as A=x1:
CALL TBNULI (T3,1, “A”, ibid, x1, cbid, kbid, 1.d-6, “RELA”, ilig)
The line ilig is modified:
CALL 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 a table
5.1
Routine TBEXVE: Reading of the values of a column of a table
TBEXVE
(nomtab, para, nomobj, basobj, nbval, typval)
nomtab
in
K19
Name of the table in which one wants to extract one
jxin
column
para
in
K16
Parameter indicating the column to be extracted
nomobj
in
K24
Name of object JEVEUX containing the values read in
jxout
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 of the 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
K19
Name of the table in which one wants to extract one
jxin
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
K24
Name of the function to be created
jxout
basfon
in
K1
Base “G”, “V” on which one creates the function
5.3
Routine TBLIVA: Reading of the value of a cell
TBLIVA
(nomtab, npacri, lipacr, VI, vr, vc, vk, lcrit, lprec, para, ctype,
vali, valr, valc, valk, ier)
nomtab
in
K19
Name of the table in which one wants to extract the value
jxin
of a cell
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
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
9/18
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) are 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
CALL TBLIVA (T3,2, lipacr, VI, vr, vc, vk, lcrit, lprec, “It, ctype,
vali, valr, valc, valk, ier)
at output one a:
valk=' Z'
ier=0
ctype=' K8'
6
Routines of filtering and sorting of a table
6.1
Mechanism of filtering of lines in a table
In 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.
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
10/18
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)
VIDE
blank cell
NON_VIDE
Nonempty cell
Note:
In 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 contain the values associated with these criteria
(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 I1 parameters, I2, I3 of the “whole” type and K1, K2 of the 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 lies between 12 and 21
3) the value of I3 is worth 999
4) the value of I1 is “nonempty”
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 2nd 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:
The types of criterion “VIDE” 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:
“EGAL”
“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|
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
11/18
Example:
That is to say a table containing the whole parameters: I1 and I2, the 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
K19
Name of the table which one wants to extract from the lines
jxin
basout
in
K1
“G”, “V”: base creation of tabout
tabout
in
K19
Name of the table which will contain the lines extracted from
jxout
tabin
npacri
in
I
A number of parameters implied in the criteria
of extraction (dimension of lipacr and 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 the 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”
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
12/18
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
CALL TBEXTB (T3, “G”, T3 B, 3, lipacr, lcrpa, VI, vr, vc, vk, lprec, lcrit)
at output 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
K19
Name of the table which one wants to classify the lines
jxin
basout
in
K1
Base creation of tabout: G/V/L
tabout
in
K19
Name of the table containing all the lines of tabin
jxout
classified according to following criteria's
will npara
in
I
A number of parameters implied in the sort keys
(dimension of will lipara and 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 = (“NOEUD”, “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).
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
13/18
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: “RESULTAT”,…
nparim
in
I
A number of parameters to be printed
if nparim=0, one prints TOUS the parameters.
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: “IH”
/“IH” (left real, 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
NOEUD
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
:
“TABLEAU”
DX
INST
4.
8.
20.
NOEUD N7
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.
NOEUD: N7 DX: 3.4
DY: 3.8
NUME_ORDRE: 1 INST: 4.
NOEUD: N4 DX: 2.4
DY: 2.8
NUME_ORDRE: 1 INST: 4.
NOEUD: N2 DX: 1.4
DY: 1.8
NUME_ORDRE: 4 INST: 8.
NOEUD: N7 DX: 3.4
DY: 3.8
…
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
14/18
7.4 FORMAT
“EXCEL” with pagination (here definite by the parameter
“NOEUD”)
NOEUD: N7
NUME_ORDRE
INST
DX
DY
1
4.
3.4
3.8
4
8.
3.4
3.8
7
20.
3.4
3.8
NOEUD: N4
NUME_ORDRE
INST
DX
DY
1
4.
2.4
2.8
4
8.
2.4
2.8
7
20.
2.4
2.8
NOEUD: 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 a 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
K8
Name of SD LISTR8 result
jxout
base
in
K1
Base creation of lr8: “G”, “V”,…
8.3
Restrictions of use of TBEXLR
Routine TBEXLR can transform a table into LISTR8 only if this table is “diagonal by
blocks “. If it is not the case, the routine will stop in fatal error.
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
15/18
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
is table transformed into LISTR8?
That is to say the table
parameter
B
C
D
E
F
G
H
I
K
type K1 values
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.
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
16/18
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
type values 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: recognition of the “blocks” of the “diagonal” table
parameter
C
D
F
H
I
K
type values 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 the produced LISTR8 contains (3 * 3+2 * 4+1 * 5) + 3 * 2 + 1 realities simply
put end to end.
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
17/18
9
Simple example of creation and exploitation of a table
That is to say the example of the T2 table:
ACTION
NUME_ORDRE
INST
NOEUD
DX
DY
MAILLE
SIXX
INTITULE 1 1
10.
N1
3.
5.
INTITULE 1 1
10.
N2
6.
7.
INTITULE 1 1
10.
N3
8.
9.
INTITULE 1 2
20.
N1
11.
12.
INTITULE 1 2
20.
N2
15.
13.
INTITULE 1 2
20.
N3
19.
18.
INTITULE 2 5
20.
MA1
- 12.
INTITULE 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.
% Declaration of the table on basis GLOBALE:
CAL TBCRSD (“T2”, “G”)
% Declarations 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)
CONTINUE
CONTINUE
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)
CONTINUE
ENDIF
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A
Code_Aster ®
Version
4.0
Titrate:
Use of the structures of data counts
Date:
19/03/98
Author (S):
E. SCREWS, J. PELLET
Key:
D6.06.01-B
Page:
18/18
Intentionally white left page.
Handbook of Descriptif Informatique
D6.06 booklet:
HI-75/97/032 - Ind A