background image
Code_Aster
®
Version
8.2
Titrate:
Operator
NUME_DDL
Date:
31/01/06
Author (S):
J. PELLET
Key
:
U4.61.11-I1
Page
:
1/4
Instruction manual
U4.6- booklet: Elementary matrices/Vectors and assembly
HT-62/06/004/A
Organization (S):
EDF-R & D/AMA














Instruction manual
U4.6- booklet: Elementary matrices/Vectors and assembly
Document: U4.61.11



Operator
NUME_DDL






1 Goal
To number the unknown factors of a system of linear equations. This operator “also prepares”
assembly of the matrix associated with this system with equations.
It is in this operator that the method of resolution of the linear systems is selected: LDLT,
gradient combined or multi-frontal.
Product a structure of data of the nume_ddl type.
background image
Code_Aster
®
Version
8.2
Titrate:
Operator
NUME_DDL
Date:
31/01/06
Author (S):
J. PELLET
Key
:
U4.61.11-I1
Page
:
2/4
Instruction manual
U4.6- booklet: Elementary matrices/Vectors and assembly
HT-62/06/004/A
2 Syntax

naked [nume_ddl] = NUME_DDL
(
/
MODEL
=
Mo,
[model]
CHARGE
=
lchar,
/
[l_char_meca]
/
[l_char_ther]
/
[l_char_acou]
/
MATR_RIGI
=
lmel,
/
[l_matr_elem_TEMP_R]
/
[l_matr_elem_DEPL_R]
/
[l_matr_elem_DEPL_C]
/
[l_matr_elem_PRES_C]
/
METHOD
=
“MULT_FRONT”
,
[DEFECT]
RENUM
=
/
“MONGREL”,
,
[DEFECT]
/
“MANDELEVIUM”,
/
“MDA”
,
/
METHOD
=
“LDLT”
,

RENUM
=
/
“RCMK”
,
[DEFECT]
/
“WITHOUT”
,
/
METHOD
=
“MUMPS”
,
/
METHOD
=
“GCPC”
,

RENUM
=
/
“RCMK”
,
[DEFECT]
/
“WITHOUT”
,
INFORMATION
=
/
1
,
[DEFECT]
/2,
)
background image
Code_Aster
®
Version
8.2
Titrate:
Operator
NUME_DDL
Date:
31/01/06
Author (S):
J. PELLET
Key
:
U4.61.11-I1
Page
:
3/4
Instruction manual
U4.6- booklet: Elementary matrices/Vectors and assembly
HT-62/06/004/A
3 General information
This control makes it possible to number the equations (and the unknown factors) of the linear systems with
to solve. One also prepares the work of assembly of the matrices, by drawing up the tables of
pointers corresponding to the storage chosen for these matrices.
The choice of the method is made by the key word
METHOD
(method “MULT_FRONT” by defect).


4 Operands
4.1 Operand
MODEL/LOAD
/MODEL = Mo, LOAD = lchar
The code will number the degrees of freedom of the elements of the model
Mo
as well as the degrees of
freedom of dualisation of the conditions kinematics dualized possibly present in
loads of the list
lchar
.
4.2 Operand
MATR_RIGI
/MATR_RIGI = lmel
List
matr_elem_ *
allowing to establish the classification of the unknown factors of the problem.
The goal of this operator is to number all the degrees of freedom of the problem. These degrees of
freedom are those carried by the elementary matrices calculated by the operator
CALC_MATR_ELEM (lmel).
Because of dualisation of the conditions “kinematics”, the degrees of freedom of Lagrange are
carried by the matr_elem calculated by option “RIGI_MECA” (or “RIGI_THER”,…) on the loads
where the conditions kinematics are defined.
It is thus important to give in lmel, the list of all the matr_elem of “rigidity” and of
not to forget the loads in operator CALC_MATR_ELEM [U4.61.01].
4.3 Operand
METHOD
This operand is used to choose the method of resolution which one will apply to the future linear systems
who will be built on the nume_ddl produced by this control.
/“MULT_FRONT”
method “multi_frontale” without swivelling
/“MUMPS”
method “multi_frontale” with swivelling
/“LDLT”
factorization of the type LU without swivelling
/“GCPC”
combined gradient
The choice of the method of resolution has an important influence on the mode of storage of
assembled matrices (future)
matr_asse_ *
/
“LDLT”
storage “line of sky” per blocks
/“MULT_FRONT”,
“MUMPS”
or
“GCPC”
storage “Morse”
The storage Morse (which preserves only the nonnull terms of the matrix) is much more
economic that line storage of sky.
On the other hand for a large system, this storage imposes a size important memory because the matrix
is stored in only one vector, whereas line storage of sky is cut out in several blocks
of size fixed by the key word
TAILLE_BLOC
control
BEGINNING
.
background image
Code_Aster
®
Version
8.2
Titrate:
Operator
NUME_DDL
Date:
31/01/06
Author (S):
J. PELLET
Key
:
U4.61.11-I1
Page
:
4/4
Instruction manual
U4.6- booklet: Elementary matrices/Vectors and assembly
HT-62/06/004/A
4.4 Operand
RENUM
This operand is used to renumber (if it is wished) the unknown factors of the problem.
“MANDELEVIUM”
(Degree Minimum): it is the method of renumerotation associated with the resolution
MULT_FRONT. It minimizes the filling of the matrix during its factorization
(i.e.: appearance of nonnull terms).
“MDA”
(Degree Minimum Approximate): it is an approximate method of the preceding method. With
priori, classification obtained is a little less optimal than by
“MANDELEVIUM”
(for what
relate to the filling), but it is less expensive to establish.
“MONGREL”
another method of classification for the multi-frontal method. It is based on one
technique of “encased dissection”.
“WITHOUT”
one keeps the initial command of the nodes given in the file of mesh
“RCMK”
“Reverse CUTHIL MAC KEE” this algorithm of renumerotation is often effective for
to reduce the place necessary to storage “line of sky” of the assembled matrix. It is thus
also effective in time CPU during the triangulation of such a matrix, by the operator
FACT_LDLT
[U4.55.01].

4.5 Operand
INFORMATION
INFORMATION
=
/
1
on the file
MESSAGE
.
-
numbers total degrees of freedom, numbers nodes,
-
a number of degrees of freedom of LAGRANGE,
-
maximum height of a column (and average height),
-
a number of terms stored (for storage
“MORSE”
),
-
a number of blocks (for line storage of sky),
-
information concerning the renumerotation.
5 Examples
# for a resolution “LDLT” with renumerotation “RCMK”:
naked = NUME_DDL (MATR_RIGI = mel, METHOD =
“LDLT”
,
)
K = ASSE_MATRICE (MATR_ELEM = mel, NUME_DDL = naked
,
)
K = FACT_LDLT (MATR_ASSE = K,
reuse = K,
)
U = RESO_LDLT (MATR_ASSE = K,
CHAM_NO = F,
)
# for a resolution “MULTI_FRONTALE”:
naked
=
NUME_DDL
(MATR_RIGI
=
mel,
)
K = ASSE_MATRICE (MATR_ELEM = mel, NUME_DDL = naked
,
)
K = FACT_LDLT (MATR_ASSE = K,
reuse = K,
)
U = RESO_LDLT (MATR_ASSE = K,
CHAM_NO = F,
)
# for a resolution “GRADIENT COMBINES”:
naked = NUME_DDL (MATR_RIGI = mel, METHOD =
“GCPC”
,
)
K = ASSE_MATRICE (MATR_ELEM = mel, NUME_DDL = naked
,
)
K2
=
FACT_GRAD
(MATR_ASSE
=
K,
)
U = RESO_GRAD (MATR_ASSE = K,
MATR_FACT = K2, CHAM_NO = F,
)