Code_Aster ®
Version
7.4
Titrate:
Macro command MACRO_PROJ_BASE


Date:
08/02/05
Author (S):
E. BOYERE, Y. PONS. J. PIGAT Key
:
U4.63.11-E Page
: 1/6

Organization (S): EDF-R & D/AMA

Handbook of Utilization
U4.6- booklet: Elementary matrices/Vecteurs and assembly
Document: U4.63.11

Macro command MACRO_PROJ_BASE

1 Goal

To project matrices and/or vectors assembled on a modal basis or a basis of RITZ.
projected matrices and vectors results will be used by the calculation algorithms in components
generalized (DYNA_TRAN_MODAL [U4.53.21] for example).

This macro-command replaces the following sequence controls:

·
NUME_DDL_GENE [U4.65.03] which establishes the classification of the generalized degrees of freedom,
·
one or more occurrences of PROJ_MATR_BASE [U4.63.12] to project one or
several assembled matrices,
·
one or more occurrences of PROJ_VECT_BASE [U4.63.13] to project one or more
assembled vectors.
Handbook of Utilization
U4.6- booklet: Elementary matrices/Vecteurs and assembly
HT-66/05/004/A

Code_Aster ®
Version
7.4
Titrate:
Macro command MACRO_PROJ_BASE


Date:
08/02/05
Author (S):
E. BOYERE, Y. PONS. J. PIGAT Key
:
U4.63.11-E Page
: 2/6

2 Syntax
MACRO_PROJ_BASE
(
BASE
=
Ba, [mode_meca]
[base_modale]
[mode_gene]



NB_VECT =/9999,
[DEFAUT]
/
Nm,









[I]

PROFIL
=
/“DIAG”,
[DEFAUT]
/“PLEIN”,




MATR_ASSE_GENE
=_F (
MATRICE = CO (“MT”),

[matr_asse_gene_R]






/MATR_ASSE = my,

[matr_asse_DEPL_R]
/
MATR_ASSE_GENE
=
my,
[matr_asse_gene_R]







),


VECT_ASSE_GENE
=_F (VECTEUR = CO (“vt”),
[vect_asse_gene]








TYPE_VECT =/“FORC”,
[DEFAUT]


/

typ,
[KN]








/VECT_ASSE = goes,

[cham_no_DEPL_R]









/VECT_ASSE_GENE = goes,
[vect_asse_gene]









),


INFO =/1,
[DEFAUT]






/2,
)
Handbook of Utilization
U4.6- booklet: Elementary matrices/Vecteurs and assembly
HT-66/05/004/A

Code_Aster ®
Version
7.4
Titrate:
Macro command MACRO_PROJ_BASE


Date:
08/02/05
Author (S):
E. BOYERE, Y. PONS. J. PIGAT Key
:
U4.63.11-E Page
: 3/6

3 Operands

3.1 Operand
BASE

BASE = Ba

Concept of the mode_meca type, base_modale or mode_gene (for the under-structuring), which
contains the vectors defining the subspace of projection.

3.2 Operand
NB_VECT


NB_VECT = Nm

A number of vectors used in the base (one takes the Nm first). It is checked that number Nm
is quite lower than the number of vectors of the base, in the contrary case (Nm = 9999) one uses
all provided vectors.

3.3 Operand
PROFIL



PROFILE =/“DIAG”
[DEFAUT]
/
“PLEIN”

Cf NUME_DDL_GENE [U4.65.03].

If a matrix presents a profile “DIAG” and a another profile “PLEIN”, two
classifications will be created with NUME_DDL_GENE.

3.4 Word
key
MATR_ASSE_GENE


MATR_ASSE_GENE

Key word factor defining the name of the projected matrix result and the name of the matrix in
to project. This key word must be repeated time as many as there are matrices to project.

3.4.1 Operand
MATRICE


MATRICE = CO (“MT”)

Concept of the matr_asse_gene_R type, generalized matrix result.

3.4.2 Operands
MATR_ASSE/MATR_ASSE_GENE


/MATR_ASSE = my

Concept of the matr_asse_DEPL_R type, assembled matrix which one wishes to project.

/
MATR_ASSE_GENE
=
my

Concept of the matr_asse_gene_R type, assembled matrix resulting from
under-structuring, which one wishes to project.

Handbook of Utilization
U4.6- booklet: Elementary matrices/Vecteurs and assembly
HT-66/05/004/A

Code_Aster ®
Version
7.4
Titrate:
Macro command MACRO_PROJ_BASE


Date:
08/02/05
Author (S):
E. BOYERE, Y. PONS. J. PIGAT Key
:
U4.63.11-E Page
: 4/6

3.5 Word
key
VECT_ASSE_GENE


VECT_ASSE_GENE

Key word factor defining the name of the vector projected result and the name of the vector to be projected. It
key word must be repeated time as many as there are vectors to project.

3.5.1 Operand
VECTEUR


VECTEUR = CO (“vt”)

Concept of the vect_asse_gene type, vector generalized result.

3.5.2 Operand
TYPE_VECT



TYPE_VECT = typ

Character string describing the type of the field represented by the assembled vector, by
defect one awaits a field of the type forces “FORC”, the other possibilities are “DEPL”,
“VITE” and “ACCE”.

3.5.3 Operands
VECT_ASSE/VECT_ASSE_GENE


/VECT_ASSE
= goes

Concept of the cham_no_DEPL_R type, assembled vector which one wishes to project.

/
VECT_ASSE_GENE
=
goes

Concept of the vect_asse_gene type, assembled vector resulting from the under-structuring, that
one wishes to project.

3.6 Operand
INFO


INFO
=
/
1
[DEFAUT]




/2

Level of impression of information for command NUME_DDL_GENE (cf [U4.65.03]).

Handbook of Utilization
U4.6- booklet: Elementary matrices/Vecteurs and assembly
HT-66/05/004/A

Code_Aster ®
Version
7.4
Titrate:
Macro command MACRO_PROJ_BASE


Date:
08/02/05
Author (S):
E. BOYERE, Y. PONS. J. PIGAT Key
:
U4.63.11-E Page
: 5/6

4 Example
of use


# DYNAMIC TRANSITORY ON MODAL BASIS SYSTEM MASSES AND ARISES

DEBUT ()

RESSORT=LIRE_MAILLAGE ()

MODELE=AFFE_MODELE (MAILLAGE=RESSORT,
AFFE=_F (ALL = “YES”, PHENOMENON = “MECHANICAL”,
MODELING = “DIS_T'))

CHAMPCAR=AFFE_CARA_ELEM (MODELE=MODELE,
DISCRET= (
_F (MAILLE = (“E1”, “E2”, “E3”, “E4”, “E5”, “E6”, “E7”, “E8”, “E9”),
CARA = “K_T_D_L', VALE = (1.E5, 1., 1.,)),

_F (MAILLE = “E1”,
CARA = “A_T_D_L', VALE = (250., 1., 1.,)),

_F (MAILLE = (“E2”, “E3”, “E4”, “E5”, “E6”, “E7”, “E8”),
CARA = “A_T_D_L', VALE = (50., 1., 1.,)),

_F (MAILLE = “E9”,
CARA = “A_T_D_L', VALE = (25., 1., 1.,)),

_F (MAILLE= (“P1”, “P2”, “P3”, “P4”, “P5”, “P6”, “P7”, “P8”),
CARA = “M_T_D_N', VALE = 10.)) )

CHARGE=AFFE_CHAR_MECA (MODELE=MODELE, DDL_IMPO= (
F (ALL = “YES”, DY = 0., DZ = 0.),
_F (NODE = (“N1”, “N10”), DX = 0.0)) )

EFFORT=AFFE_CHAR_MECA (MODELE=MODELE,
FORCE_NODALE=_F (NODE = “N5”, FX = 1.) )

RIGIELEM=CALC_MATR_ELEM (MODELE=MODELE, OPTION=' RIGI_MECA',
CARA_ELEM=CHAMPCAR, CHARGE=CHARGE)

MASSELEM=CALC_MATR_ELEM (MODELE=MODELE, OPTION=' MASS_MECA',
CARA_ELEM=CHAMPCAR, CHARGE=CHARGE)

AMORELEM=CALC_MATR_ELEM (MODELE=MODELE, OPTION=' AMOR_MECA',
CARA_ELEM=CHAMPCAR, CHARGE=CHARGE)

EFFOELEM=CALC_VECT_ELEM (CHARGE=EFFORT, OPTION=' CHAR_MECA',
CARA_ELEM=CHAMPCAR)

NUMEROTA=NUME_DDL (MATR_RIGI=RIGIELEM)

MATRRIGI=ASSE_MATRICE (MATR_ELEM=RIGIELEM, NUME_DDL=NUMEROTA)

MATRMASS=ASSE_MATRICE (MATR_ELEM=MASSELEM, NUME_DDL=NUMEROTA)

MATRAMOR=ASSE_MATRICE (MATR_ELEM=AMORELEM, NUME_DDL=NUMEROTA)

VECTASS=ASSE_VECTEUR (VECT_ELEM=EFFOELEM, NUME_DDL=NUMEROTA)

MODES=MODE_ITER_INV (MATR_A=MATRRIGI, MATR_B=MATRMASS,
CALC_FREQ=_F (OPTION = “ADJUSTS”,
FREQ = (5., 10., 15., 20., 24., 27., 30., 32.,))
)
Handbook of Utilization
U4.6- booklet: Elementary matrices/Vecteurs and assembly
HT-66/05/004/A

Code_Aster ®
Version
7.4
Titrate:
Macro command MACRO_PROJ_BASE


Date:
08/02/05
Author (S):
E. BOYERE, Y. PONS. J. PIGAT Key
:
U4.63.11-E Page
: 6/6


FONCTIO1=DEFI_FONCTION (NOM_PARA=' INST', NOM_RESU=' ALPHA',
VALE= (0., 1., 1., 1., 1.0000001, 0.,),
PROL_DROITE=' CONSTANT')

MACRO_PROJ_BASE (BASE=MODES,
MATR_ASSE_GENE= (
_F (
STAMP = CO (“MASSEGEN”),
MATR_ASSE = MATRMASS),
_F (
STAMP = CO (“RIGIDGEN”),
MATR_ASSE = MATRRIGI),
_F (
STAMP = CO (“AMORTGEN”),
MATR_ASSE = MATRAMOR,
PROFILE = “FULL”)),
VECT_ASSE_GENE=
_F (
VECTOR = CO (“EFFOGENE”),
VECT_ASSE = VECTASS))

DYNAMODA=DYNA_TRAN_MODAL (MASS_GENE=MASSEGEN, RIGI_GENE=RIGIDGEN,
AMOR_GENE=AMORTGEN,
EXCIT=_F (VECT_GENE = EFFOGENE,
FONC_MULT = FONCTIO1),
INCREMENT=_F (INST_INIT = 0.,
INST_FIN = 1.5, NOT = 0.00001)
)
FIN ()

# Sequence of the commands equivalent to macro-command MACRO_PROJ_BASE:

_0000000 = NUME_DDL_GENE
(
BASE=MODES,
STOCKAGE=' DIAG'
)

MASSEGEN = PROJ_MATR_BASE (BASE=MODES,
NUME_DDL_GENE
=_0000000,
MATR_ASSE=MATRMASS
)


RIGIDGEN = PROJ_MATR_BASE (BASE=MODES,
NUME_DDL_GENE
=_0000000,
MATR_ASSE=MATRRIGI
)


_0000001 = NUME_DDL_GENE
(
BASE=MODES,
STOCKAGE=' PLEIN'
)
AMORTGEN = PROJ_MATR_BASE (BASE=MODES,
NUME_DDL_GENE
=_0000001,
MATR_ASSE=MATRAMOR
)

EFFOGENE = PROJ_MATR_BASE (BASE=MODES,
NUME_DDL_GENE
=_0000001,
VECT_ASSE=VECTASS)

Handbook of Utilization
U4.6- booklet: Elementary matrices/Vecteurs and assembly
HT-66/05/004/A

Outline document