Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 1/10
Organization (S): EDF-R & D/AMA, SINETICS
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
D4.06.11 document
Structure of Données SOLVEUR
Summary:
This document describes the structure of data SOLVEUR which defines the method of resolution of the systems
linear mono-field (LDLT, MULT_FRONT, MUMPS or GCPC) or multi-fields (FETI).
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 2/10
1 General information
An object of the type SOLVEUR is created (via routines CRESOL or CRESO2 (for DYNA_LINE_TRAN))
on the basis volatile and used in the following total commands:
· CALC_FORC_AJOU (OP0152)
· CALC_MATR_AJOU (OP0199)
· DYNA_LINE_TRAN (OP0048)
· DYNA_NON_LINE (OP0070 via NMLECT)
· DYNA_TRAN_EXPLI (OP0069 via NMLECT)
· MECA_STATIQUE (OP0046 via NMLECT)
· THER_LINEAIRE (OP0025 via NXLECT)
· THER_NON_LINE (OP0186 via NXLECT)
· THER_NON_LINE_MO (OP0171)
· STAT_NON_LINE (OP0070 via NMLECT)
This object defines the method of resolution of the linear systems mono-field (LDLT, MULT_FRONT
or GCPC) or multi-fields (FETI) and a certain number of parameters necessary to its setting in
work.
It is used as driving belt between the various stages of the algorithms which make resolutions
of linear system.
2
Relations with the other SD
This SD is internal with the above mentioned total commands and does not have any interaction with the SD of
the user.
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 3/10
3 Tree structure
SOLVEUR (K19)
::=record
“.SLVK”:
OJB
S V K24
“.SLVR”:
OJB
S V R
“.SLVI”:
OJB
S V I
% if solvor FETI (SLVK (1) = ' FETI'):
“.FETS”: OJB
S V K24
indirect (*)
dim=nbsd
(a number of under-fields)
(*): SOLVEUR not FETI (i.e. FETS (K) .SLVK (1) “FETI” and for the moment
imposed on “MULT_FRONT”)
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 4/10
4
Contents of the basic objects
4.1 Case
FETI
One speaks here about the contents of the “total” SOLVEUR.
.SLVK:
S V K24 DIM=9
SLVK (1) = method of resolution: “FETI”
SLVK (2) = prepacking of the matrix of work. The possible values are:
.“LUMPE”
.“SANS”
SLVK (3) = Actuellement used to transmit the command to check the coherence of
structure of data SD_FETI with respect to calculation in progress.
The possible values are:“OUI” or “NON”
SLVK (4) = method of renumerotation. The possible values are:
.“MANDELEVIUM” or “MDA” or “METIS”
The parameter setting is identical for the main SD and the SD slaves.
SLVK (5) = symmetrized approximation of the operator of work (carried out in
ASMATR) started by key word SOLVEUR/SYME=' OUI'/“NON”
The possible values are:“OUI” or “NON”
The parameter setting is identical for the main SD and the SD slaves.
SLVK (6) = name of the structure of data of the type SD_FETI
SLVK (7) = method of reorthogonalisation of the directions of descent of the GCPPC of
FETI.
The possible values are: “GS” or “GSM” or “IGSM”
SLVK (8) = option of scaling of the preconditionnor of the GCPPC of FETI.
The only possible value is: “MULT”
SLVK (9) = parameter of storage of the matrix of projection GI.
The possible values are:
.“OUI” (storage in the shape of a vector)
.“NON” (one each time rebuilds it starting from objects MATR_ASSE.FETR)
.“CAL” (“NON” if size of GI > average size of the .VALE of the MATR_ASSE slaves,
“OUI” if not)
.SLVR:
S V R DIM=4
.SLVR (1): unutilised
.SLVR (2) = resi_rela
it is the allowed relative precision on the residue
.SLVR (3): unutilised
.SLVR (4) = test_co
it is the precision of the test of continuity to the interfaces during the rebuilding of
local fields
.SLVI:
S V I DIM=5
SLVI (1) = nprec
it is the number of figures of the mantissa for the test of relative precision on the pivot.
SLVI (2) = nmax_iter
it is the maximum number of authorized iterations
SLVI (3) = istop
test of singularity during factorization (takes value 1 if STOP_SINGULIER =
“NON”, 0 if not).
SLVI (4): unutilised
SLVI (5) = nbreor (if FETI)
it is the maximum number of directions of descent used for the phase of
reorthogonalisation of the GCPPC of FETI
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 5/10
.FETS:
S V Indirect K24 (*) dim=nbsd (a number of under-fields)
(*): SOLVEUR not FETI (i.e. FETS (K) .SLVK (1) “FETI” and for
the moment imposed on “MULT_FRONT”).
Object JEVEUX listing specific SD SOLVEUR to each under-field.
FETS (I) = name of SD SOLVEUR of the ième under-field.
4.2 Case
LDLT or MULT_FRONT
.SLVK:
S V K24 DIM=5
SLVK (1) = method of resolution: “LDLT” or “MULT_FRONT”
SLVK (2): unutilised
SLVK (3): unutilised
SLVK (4) = method of renumerotation. The possible values are:
.“RCMK” or “SANS” (if LDLT)
.“MANDELEVIUM” or “MDA” or “METIS” (if MULT_FRONT)
SLVK (5) = symmetrized approximation of the operator of work (carried out in
routine ASMATR) started by key word SOLVEUR/SYME=' OUI'/“NON”
The possible values are:“OUI” or “NON”
.SLVR:
S V R DIM=3
.SLVR (1): unutilised
.SLVR (2): unutilised
.SLVR (3) = size block (if LDLT)
it is the size of a block in the case of a storage in line of sky [D4.06.07].
.SLVI:
S V I DIM=4
SLVI (1) = nprec
it is the number of figures of the mantissa for the test of relative precision on the pivot.
SLVI (2): unutilised
SLVI (3) = istop
test of singularity during factorization (takes value 1 if STOP SINGULIER =
“NON”, 0 if not).
SLVI (4): unutilised
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 6/10
4.3 Case
GCPC
.SLVK:
S V K24 DIM=5
SLVK (1) = method of resolution: “GCPC”
SLVK (2) = prepacking of the matrix of work. The possible values are:
.“LDLT_INC”
.“SANS”
SLVK (3): unutilised
SLVK (4) = method of renumerotation. The possible values are:
.“RCMK” or “SANS”
SLVK (5) = symmetrized approximation of the operator of work (carried out in
routine ASMATR) started by key word SOLVEUR/SYME=' OUI'/“NON”
The possible values are:“OUI” or “NON”
.SLVR:
S V R DIM=3
.SLVR (1): unutilised
.SLVR (2) = resi_rela
it is the allowed relative precision on the residue
.SLVR (3): unutilised
.SLVI:
S V I DIM=4
SLVI (1): unutilised
SLVI (2) = nmax_iter
it is the maximum number of authorized iterations
SLVI (3): unutilised
SLVI (4) = niremp (if SLVK (2) = ' LDLT_INC')
it is the level of filling of the incomplete prepacking of the GCPC.
4.4 Case
MUMPS
.SLVK:
S V K24 DIM=5
SLVK (1) = method of resolution: “MUMPS”
SLVK (2): unutilised
SLVK (3): algorithm of resolution wished:
“NONSYM”: not-symmetrical matrix (factorization LU)
“SYMGEN”: symmetrical matrix “general”
“SYMDEF”: symmetrical matrix “definite positive”
SLVK (4): renumerotation: “SANS”
SLVK (5) = symmetrized approximation of the operator of work (carried out in
routine ASMATR) started by key word SOLVEUR/SYME=' OUI'/“NON”
The possible values are:“OUI” or “NON”
.SLVR:
S V R DIM=3
.SLVR (1): unutilised
.SLVR (2) = resi_rela
It is the relative precision required for the solution (defect: 1.e-6)
If resi_rela <= 0., one does not control the quality of the solution obtained, but
less expensive in time CPU.
.SLVR (3): unutilised
.SLVI:
S V I DIM=4
SLVI (1): unutilised
SLVI (2): PCPIV percentage of additional memory necessary to the swivellings
late (by defect: 20). PCPIV can be > 100.
SLVI (3): unutilised
SLVI (4): unutilised
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 7/10
5
Complements in the case of solvor FETI
5.1
Structure of recursive data SOLVEUR
In the case of method FETI, the structure of data SOLVEUR is recursive on two levels. One
“Main” SD SOLVEUR, concerning the total field (SLVK (1) = ' FETI'), gathers the objects
Usual JEVEUX with in more one object .FETS. This last is a pointer indicating the SD
SOLVEUR “slaves” associated with each under-fields.
These local SD SOLVEUR are consisted of same objects JEVEUX as a mono linear solvor
usual field (such MULT_FRONT or LDLT) and are concerned with the same parameter setting. On the level
of a under-field, one has to be worried only inversions of local matrices and not, for example,
name of SD SD_FETI or type of reorthogonalisation installation by the solvor of interface
total (of which the parameter setting is contained in “main” SD SOLVEUR).
For the moment, the implementation of FETI in Code_Aster presupposes that these under-fields
use all the same linear solvor mono-field (SLVK (1) = “MULT_FRONT” imposed by
defect) and with same parameter setting (RENUM and STOP_SINGULIER/NPREC). This homogeneity
facilitate handling of the matrices and second local members.
under-field 1
SD SOLVEUR
“main”
(total field)
…
.FETS
under-field I
SD SOLVEUR
“slaves”
…
(under-fields)
Appear 5.1-a: Structure of recursive data SOLVEUR if solvor FETI
5.2
Regulate naming
In the case of a solvor FETI, one chose the following rule of naming for SD SOLVEUR
slaves dependant each on a under-field J:
nom_de_la_SD_SOLVEUR_maître (1:11)//“F”//chaîne_de_caractères_libre (2:8)
The free character string is generated by a call to routine GCNCON.
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 8/10
5.3
Particular case of parallelism MPI
During an execution in parallel mode MPI, a processor sees itself allotting a certain number of
under-fields (cf objects annex “&FETI.LISTE…” structure of data
SD_FETI [D4.06.21]). “Main” SD SOLVEUR is always built, but its pointer .FETS
will indicate that under-fields concerned with the processor running: .FETS (jk) will be K24
validate that if the jk under-field is in the perimeter of the processor J.
For the processor J
vacuum
SD SOLVEUR
j1 under-field
“main”
(total field)
.FETS
under-field J
SD SOLVEUR “slaves”
2
(under-fields concerned with
…
the processor J)
Appear 5.3-a: Structure of recursive data SOLVEUR if solvor FETI and parallelism MPI
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 9/10
5.4 Example
In the case test FETI002A, partitioning in four under-fields leads to SD SOLVEUR
following:
Built a main SD SOLVEUR “&&OP0046.SOLVEUR”
====> IMPR_CO OF THE STRUCTURE OF DATA: &&OP0046.SOLVEUR?????
ATTRIBUT: F CONTENTS: T BASE: >V<
A NUMBER Of OBJECTS (OR COLLECTIONS) FIND: 4
================================================================================
IMPRESSION OF THE CONTENTS OF THE OBJECTS FIND:
--------------------------------------------------------------------------------
SEGMENT IMPRESSION OF VALUES >&&OP0046.SOLVEUR .FETS
1 - >&&OP0046.S. SOF0000000 <>&&OP0046.SOF0000001 <
3 - >&&OP0046.S. SOF0000002 <>&&OP0046.SOF0000003 <
--------------------------------------------------------------------------------
SEGMENT IMPRESSION OF VALUES >&&OP0046.SOLVEUR .SLVI <
1 - 8.100 0 0 100
--------------------------------------------------------------------------------
SEGMENT IMPRESSION OF VALUES >&&OP0046.SOLVEUR .SLVK <
1 - >FETI <>LUMPE <
3 - >OUI <>METIS <
5 - >NON <>SDFETI <
7 - >GSM <>MULT <
9 - >CAL
--------------------------------------------------------------------------------
SEGMENT IMPRESSION OF VALUES >&&OP0046.SOLVEUR .SLVR <
1 - 0.00000D+00 1.00000D-08 8.00000D+02 1.00000D-08
and of SD SOLVEUR slaves “&&OP0046.SOF0000000”
====> IMPR_CO OF THE STRUCTURE OF DATA: &&OP0046.SOF0000000?????
ATTRIBUT: F CONTENTS: T BASE: >V<
A NUMBER Of OBJECTS (OR COLLECTIONS) FIND: 3
================================================================================
IMPRESSION OF THE CONTENTS OF THE OBJECTS FIND:
--------------------------------------------------------------------------------
SEGMENT IMPRESSION OF VALUES >&&OP0046.SOF0000000.SLVI
1 - 8.100 0 0 100
--------------------------------------------------------------------------------
SEGMENT IMPRESSION OF VALUES >&&OP0046.SOF0000000.SLVK <
1 - >MULT_FRO <>LUMPE <
3 - >OUI <>METIS <
5 - >NON <
7 - >GSM <>MULT <
9 - >CAL
--------------------------------------------------------------------------------
SEGMENT IMPRESSION OF VALUES >&&OP0046.SOF0000000.SLVR <
1 - 0.00000D+00 1.00000D-08 8.00000D+02 1.00000D-08
====> FINE IMPR_CO OF STRUCTURE OF DATA: &&OP0046.SOF0000000?????
…
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Code_Aster ®
Version
8.1
Titrate:
Structure of Données SOLVEUR
Date:
29/09/05
Author (S):
J. Key PELLET, O.BOITEAU
:
D4.06.11-D Page
: 10/10
Intentionally white left page.
Handbook of Descriptif Informatique
D4.06 booklet: Structures related to the finite elements
HT-66/05/003/A
Outline document