Code_Aster ®
Version
4
Titrate:
Utilities of management of the CARTES
Date:
28/01/1999
Author (S):
J. PELLET
Key:
D6.10.01
Page:
1/6
Department Mécanique and Modèles Numériques
Index:
With
Diffusion:
Users - Developers
Handbook of Descriptif Informatique
D6.10 booklet:
D6.10.01 document
Utilities of management of the CARTES
1
Introduction
The cards are fields [D4.06.05] “constant by element”. Formally a card is one
structure of data which puts in correspondence meshs and occurrences of same
size (for example MATER for the characteristics of material).
The cards are often used to store the data affected by the user on “zones”
of its grid (commands AFFE_CHAR_MECA, AFFE_MATERIAU, AFFE_CARA_ELEM,…).
These fields can then be used like “inputs” of elementary calculations [D3.02.01].
Four routines are at the disposal of the programmers to build CARTES:
MECACT
:
to create a constant card.
ALCART
:
“to allocate” a card.
NOCART
:
to write a couple (size, zone_affectée) in a card.
TECART
:
“to finish” a card (optional operation).
EDF
Direction of Etudes and Recherches
Electricity of France
Project Code de Mécanique
Copyright EDF/DER 1997

Code_Aster ®
Version
4
Titrate:
Utilities of management of the CARTES
Date:
28/01/1999
Author (S):
J. PELLET
Key:
D6.10.01
Page:
2/6
2
To create a constant CARTE: routine MECACT
CALL MECACT (card, mocle, nommoa, nomgd, ncmp, licmp, ICMP, rcmp, K8cmp)
CARTE
K19
in
name of the card to be created.
jxout
MOCLE
K6
in
/“MAILLA”:
one affects all the meshs of the specified MAILLAGE
in NOMMOA (1:8)
/“MODELE”:
one affects all the late meshs of the LIGREL
specified in NOMMOA (1:19)
NOMMOA
K *
in
name of the MAILLAGE (or the LIGREL) on which rests the card.
NOMGD
I
in
name of the size associated with the card.
NCMP
I
in
a number of CMPS of the affected size
LICMP
L_K8
in
list names of the CMP of the affected size.
ICMP
L_I
in
list values of the CMPS of the affected size if this one is of
“whole” type
RCMP
L_R
in
list values of the CMPS of the affected size if this one is of
“real” type
K8CMP
L_K8
in
list values of the CMPS of the affected size if this one is of
type “K8”
Example:
licmp (1) = “DX”
licmp (2) = “DY”
rcmp (1)
= 1.0
rcmp (2)
= 2.0
CALL MECACT (“ma_carte”, “netted”, MAILLA, “depl_r”, 2, licmp, ibid, rcmp, '')
will cause to create a constant card of the size “DEPL_R” for which, all them
meshs of the grid will be affected by the values: (DX = 1.0, DY = 2.0).
3
To create a CARTE by “zones”
3.1
Principle of creation by zones
A card is an ordered list of couples (size, zone_affectée). When for example, one
user written in his command file:
AFFE_CHAR_MECA (….
PRES_REP:(
TOUT: “OUI”
PRES: 0. )
PRES_REP:(
GROUP_MA: (GM1, GM3)
PRES: 2. )
PRES_REP:(
MAILLE: (M7, M8)
PRES: 7. )
PRES_REP:(
MAILLE: (M9)
PRES: 9. )
The card of size “PRES_R” contains 5 zone_affectée and the sizes which are attached there.
It will be said that the card was created “by zone”. In the “large” made program:
CAL ALCART
allowance of the card
CAL NOCART
TOUT:“OUI”
PRES:0.
“writing” of the 1ère zone_affectée in
CARTE
CAL NOCART
GROUP_MA: GM1
PRES: 2.
“writing” of 2nd zone_affectée in
CARTE
CAL NOCART
GROUP_MA: GM3
PRES: 2.
“writing” of 3rd zone_affectée in
CARTE
Handbook of Descriptif Informatique
D6.10 booklet:
Index A

Code_Aster ®
Version
4
Titrate:
Utilities of management of the CARTES
Date:
28/01/1999
Author (S):
J. PELLET
Key:
D6.10.01
Page:
3/6
CAL NOCART
MAILLE:(M7, M8)
PRES: 7.
“writing” of 4th zone_affectée in
CARTE
CAL NOCART
MAILLE:(M9)
PRES: 7.
“writing” of 5th zone_affectée in
CARTE
3.2
To allocate a CARTE: routine ALCART
Cal ALCART (card, netted, nomgd, nasmax, nmamax)
CARTE
K19
in
name of the card to be created.
jxout
MAILLA
K8
in
name of the grid on which the card is based.
jxin
NOMGD
K8
in
name of the size associated with the card.
NASMAX
I
in
raising number of zone_affectée of the card.
NMAMAX
I
in
raising total number of meshs forming the lists of meshs of
zone_affectée
For the example of [§3.1] one will make:
Cal ALCART (“ma_carte”, “mailla_1”, “depl_r”, 5, 3)
3.3
To write in a CARTE: routine NOCART
Cal NOCART (Carte, code, group, mode, nma, limano, limanu, nomlig, ncmp)
CARTE
K19
in
name of the card where one wants “to write”
jxvar
CODE
I
in
code zone_affectée:
+1:the whole of the meshs of grid (TOUT: “OUI”)
- 1:the whole of the late meshs of a LIGREL
+2:a GROUP_MA of the grid
+3:a list of meshs of the grid
- 3:a list of late meshs of a LIGREL
GROUPE
K8
in
used only if Code = 2
it is the name of a group of meshs of the grid.
MODE
K3
in
used only if code = ± 3.
mode = “NUM” if one is useful oneself of numbered meshs: LIMANU
mode = 'NOM' if one is useful oneself of named meshs: LIMANO
NMA
I
in
used only if code = ± 3.
it is the number of meshs in list LIMANU (or LIMANO)
LIMANO
L_K8
in
used only if code = + 3
it is the list of the names of the meshs of the grid which are affected by
size.
LIMANU
L_I
in
used only if code = ± 3
it is the list of the numbers of the meshs which one affects.
NOMLIG
K19
in
used only if code = - 1 or = ­ 3.
it is the name of the LIGREL where meshs TARDIVES are defined.
NCMP
I
in
it is the number of CMP which one wants to note in the card.
Information not transmitted by arguments.
The description of the size which one wants to note in the card makes via 2
objects of work which are allocated by ALCART:
Handbook of Descriptif Informatique
D6.10 booklet:
Index A

Code_Aster ®
Version
4
Titrate:
Utilities of management of the CARTES
Date:
28/01/1999
Author (S):
J. PELLET
Key:
D6.10.01
Page:
4/6
CARTE (1:19)//“.NCMP”
V (K8)
CARTE (1:19)//“.VALV”
V (?)
(? = I, R, C, K8.)
·
in CARTE (1:19)//“.NCMP”, the programmer writes the name of the components of
size which he wants to note.
·
in CARTE (1:19)//“.VALV”, the programmer writes the values of the components
(in the same order as .NCMP).
3.4
Processing of the example of [§3.1]
CALL ALCART (CARTE, netted, “PRES_r”, 5, 4)
CAL JEVEUO (CARD (1:19)//“.NCMP”, “E”, IANCMP)
ZK8 (IANCMP) = ' PRES'
CAL JEVEUO (CARD (1:19)//“.VALV”, “E”, IAVALV)
ZR (IAVALV) =0.
CAL NOCART (CARD, 1, ““,””, 0, ““, IBID,””, 1)
ZR (IAVALV) =2.
CAL NOCART (CARD, 2, “GM1”, ““, 0,””, IBID, '', 1)
ZR (IAVALV) =2.
CAL NOCART (CARD, 2, “GM3”, ““, 0,””, IBID, '', 1)
ZR (IAVALV) =7.
LIMANO (1) = ' M7'
LIMANO (2) = ' M8'
CAL NOCART (CARD, 3, ““, “NAME”, 2, LIMANO, IBID,””, 1)
ZR (IAVALV) =9.
LIMANO (1) = ' M9'
CAL NOCART (CARD, 3, ““, “NAME”, 1, LIMANO, IBID,””, 1)
3.5
Principle of overload
The principle of overload is applied for a CARTE: in the list of the affected zones, one
element of the list overloads the elements which precedes it in the list. That wants to say that if one
mesh belongs to several zone_affectée different, the size which is associated is for him that
associated the zone_affectée last which contains this mesh.
If in the preceding example, the M8 mesh belongs to 2 GROUP_MA GM1 and GM3, the pressure which him
is associated is 7.
Important remark:
The overload is total for all the CMPS of the size.
If one makes for example (card of “DEPL_R”):
GM1 - >
DX: 1.
DY: 2.
GM3 - >
DX: 3.
DZ: 4.
The meshs of GM3 are affected by the size:
(DX: 3. DZ: 4.)
The meshs of GM1 (except those of GM3) are affected by the size
:
(DX: 1. DY: 2.)
One can want that the principle of overload is more “fine” and that meshs of the intersection
GM1 and GM3 “profit” from the 2 assignments and that their associated size is:
DX: 3. DY: 2. DZ: 4.
This is possible thanks to routine TECART [§3.6]
Handbook of Descriptif Informatique
D6.10 booklet:
Index A

Code_Aster ®
Version
4
Titrate:
Utilities of management of the CARTES
Date:
28/01/1999
Author (S):
J. PELLET
Key:
D6.10.01
Page:
5/6
3.6
Overload “fine”: routine TECART
CALL TECART (card)
CARTE
K19
in
name of the card “to be finished”
jxvar
This routine is has to call after the last call to NOCART.
This operation modifies the contents of the card to take account of the rule of “fine” overload
defined in the preceding paragraph.
Practically, one “extends” the card on all the meshs, one determines on each one of them the size
who is associated to him by a “fine” overload of the type:

M1: DX = 1.
DY =
2.0
command of the calls
+ M1: DX = 3.0
DZ = 4.0
with NOCART
M1: DX = 3.0 DY =
2.0
DZ = 4.0

In the second time, one recompacte the card, by gathering the meshs which are affected by
even size.
Handbook of Descriptif Informatique
D6.10 booklet:
Index A

Code_Aster ®
Version
4
Titrate:
Utilities of management of the CARTES
Date:
28/01/1999
Author (S):
J. PELLET
Key:
D6.10.01
Page:
6/6
Intentionally white left page.
Handbook of Descriptif Informatique
D6.10 booklet:
Index A