PRESENTATION and USE of 
CASTEM 2000

http://www.castem.org:8001 /

http://semt2.smts.cea.fr:8001 /

by
E Fichoux
ENSTA - LME
 


Contents


Introduction

CASTEM 2000 is a computer code for the analysis of structures by the finite element method. This code was developed by the Mechanical Department and Technology (DMT) of the French Police station with Atomic Energy (ECA).

The development of CASTEM 2000 enters within the framework of an activity of search in the field of the mechanics of which the goal is to define a high level instrument, being able to be used as support for the design, the dimensioning and the analysis of structures and components, in the field of the nuclear power as in the traditional industrial sector.

Accordingly, CASTEM 2000 integrates not only the computing processes themselves but also the functions of construction of the model (preprocessor) and the functions of processing of the results (postprocessing). CASTEM 2000 is a program which the user can adapt to his needs to solve his own problems.

Go to Contents



General presentation of CASTEM 2000

Go to Contents



History

The development of the computer codes evolved/moved of par with computer equipement. At the beginning, the calculation programmes were written to solve problems given and generally functioned out of black box.

Three programs constituting the core of system CASTEM were developed with the CEA/DMT: it was of a program of grid, a calculation programme and a programme of visualization of the results. The multiplicity of the problems then resulted in developing distinct calculation programmes able to communicate between them if necessary.

Progress of computer equipement then made it possible to develop many functions which reduced the set-up times of the data files. Thus, it was necessary to give on level all the codes while reflecting in each one the improvements and corrections carried out in one of them. Moreover, the data files became increasingly complicated and postprocessing was to be able to read again different files according to computer codes' used. With these problems were added new needs such as more complex structures concerning varied and coupled phenomena (coupling mechanics-thermics) or well integration of the functions of grid in the computing process (optimization of form).

All these considerations resulted in reconsidering at the base the problem numerical calculation so as to develop a computer code of new generation: CASTEM 2000.

Contrary to the old computer codes, written to solve problems given and to which the user must yield, CASTEM 2000 can adapt to the user's needs to solve his problems. Moreover, CASTEM 2000 makes known to the user of the actually posed problem and the methods employed.

GO UP



Organization of a calculation

A general analysis carried out using the finite element method can break up into four great stages:

     the choice of the geometry and the grid,
     the definition of the mathematical model,
     the resolution of the discretized problem,
     analysis and the postprocessing of the results.

Each stage can also be broken up into a series of elementary processes.

1.- Choice of the geometry and the grid: 2.- Definition of the mathematical model: 3.- Resolution of the discretized problem: 4.- Analyze and postprocessing of the results:
The calculation programmes by traditional finite elements are structured according to this logic, each stage being associated with a module of the code: It appears clearly that a traditional computer code bars from any intervention on behalf of the user who would wish to make modifications meeting his own needs. However, it can prove very useful to be able to define step by step the sequence best adapted among the elementary processes available for each stage.
This is all the more valid when the user must solve problems varied and localised in various points of the process of resolution.

Indeed, in addition to the three great obligatory stages, it is necessary to be able to have facilities such as:

Each stage can be broken up into a series of elementary processes. Each one of these elementary processes acquires existing information, formats it, the draft and manufactures new information. To make a calculation thus amounts selecting the elementary processes adapted to the type of the problem and providing them existing or new necessary information.

It is accordingly that CASTEM 2000 was developed, in order to exceed the limits of adaptability offered by the conventional computer codes.

GO UP

Principles of development of CASTEM 2000

CASTEM 2000 is before a whole tool to make calculations. It integrates all the processes used in the past and must be able to accomodate all those which one will need in the future to deal with new problems. It makes it possible to the user to adapt his calculations according to problems' which it must solve. It makes known to the user of the problem arising and the methods employed.

This was made possible by the application:

GO UP

Simplicity

It is about a principle of common sense, but whose application is not so easy. It is the base of the scientific step: it is easy to make complicated things starting from simple things. In addition, simple does not mean simplistic.
 

GO UP



The orthogonality of the processes

This rule is based on two ideas:

It results from it that one can test the operation of the processes in an independent way.
GO UP



Visibility and the locality of the processes

The visibility aims at removing the existence of hidden data, while imposing that all the data are indicated to the process in a visible way, where they are used. The locality mainly makes it possible to detect the data errors at the place where they are defined and not much further in calculation, which would make their diagnosis difficult.

This double rule has an immediate corollary: the information created by the process must also be visible.

GO UP



Regularity of the processes

It is on the one hand about the regularity in the use of the processes and on the other hand of the regularity in the possibilities of a process.

GO UP



The documentation of the processes

The documentation of a process forms part of the process and it must be developed simultaneously with the process. It is it which makes it possible to the user to know the function of the process and its use.

The rule is that it is the documentation which is right and not the programming of the process.

GO UP



Setting in uvre

GO UP



Concept of process elementary

There are two types of elementary process: OPERATORS and DIRECTIVES. Information is called OBJECTS.

There is no distinction between the operators or directives of preprocessing, calculation and postprocessing, they can thus be used constantly of the program according to needs' for the problem.
GO UP



Language Gibiane

In order to convert the names of the objects into data-processing entities usable by the program, it is necessary to have an interface. It is the language GIBIANE which will make it possible to the user to communicate directly with the program.

The operations with GIBIANE consist of a handling of the existing objects with an aim of modifying them or of creating the new ones.

GO UP



Possibilities of CASTEM 2000

GO UP

Processing of new problems

To deal with new problems, one can be brought to develop in CASTEM 2000 of new operators or new types of objects.

The development of a new operator is facilitated by the orthogonality of the operators between them. On the other hand, the addition of new types of objects is less frequent since it requires not only the addition of new operators able to treat this new type of object but also the modification of many existing general operators under the terms of the rule of regularity.

GO UP



Repetitive and alternative executions

Certain problems require the repetition of some elementary operations or well the conditional execution of certain operations. This is made possible grãce with certain operators (REPETER, TO LEAVE, IF, IF NOT, etc...). The user can thus widen the possibilities of the program according to his type of problem.
 

GO UP



Use of procedures

One of the consequences of the architecture adopted for CASTEM 2000 is the possibility of creating procedures, i.e. méta-processes made up of a unit of elementary processes.

These procedures are created for needs of various nature:

The procedures are written in language of data and have the following properties: Thanks to the procedures, the user can program itself the processes necessary to the resolution of its problem. It can still write and test very quickly new algorithms without needing to modify the software.

Conversely, the procedures make it possible to make transparent for the user of the algorithms and the relatively complex methods, such as the calculation algorithms in plasticity, great displacements, unilateral contacts, etc...

GO UP



General aspects of use


System of units

CASTEM 2000 does not have any particular system of measuring units. It is to the user to provide the data in a coherent system checking the fundamental law of dynamics: . Once that the measuring units used in the data are defined, all the results will be expressed in these same units.

There is an exception to this rule concerning the measurement of the angles which must always be expressed in degrees. On the other hand, the temperatures and the thermal dilation coefficient must be expressed in coherent units.

The following table gathers some examples of systems of coherent measuring units.
 

Longitud
Masa
Fuerza
Tiempo
Densidad
Presion
m
kg N seg kg/m3 Pa(= N / m2)
mm 103 kg N seg 10-12 kg/m3 M Pa( = N / mm2)
in lb.seg2 / in lb seg lb.seg2 / in4 psi( = lb / in2 )
GO UP



General syntactic rules

Here the list of the principal syntactic rules to observe during the use of language GIBIANE:

It is strongly disadvised to the users allotting to an object the name of an existing operator, because it cannot any more in the continuation of the data file to be used to provide its initial function.

Example of data file:

OPTI DIME 3 ELEM SEG2 MODE TRID ;
OPTI ECHO 0 ;
*--Definition of points--
OEIL1 =  0.  0.  100. ;
P0 =  0.  0.  0. ;
P1 =  5.  0.  0. ;
P2 =  9.  0.5  0. ;
*-- Definition of lines--
C1  =  C  15  P0  P1  P2 ;
L1  =  D  5  P2  P0 ;
TRAC  OEIL1 QUAL (C1  ET  L1) ;
MESS ´Fin de 1 exemple´ ;
FIN ;
GO UP

Execution of the program

CASTEM 2000 can be used in batch mode or interactive. The session of execution in both cases is memorized completely in a file (fort.98) which can be published then subjected to program CASTEM 2000.

It is possible to proceed in several stages for the debugging of a calculation: for each stage, one carries out several successive passages then one transmits the data generated to the following stage. For that, there are operators who carry out the data back-up on file and their recovery for the following executions (see paragraph 3.3.3: Environment in CASTEM 2000).

In the execution of CASTEM 2000, it is necessary to use at least two directives:

GO UP



General options of calculation

The values of the principal parameters of control created by directive OPTI are:

DIME : corresponds to the dimension of the space used by the operators of grid and calculation. Values: 1, 2 or 3.

MODE : corresponds to the mode of calculation.

PLAN CONT : plane constraints
PLAN DEFO : plane deformations
PLAN GENE P1 : generalized plane deformations (P1 = not support)
AXIS : axisymmetric
FURNACE NN : analyze in Fourier series (NN=numéro of the harmonic)
TRID : three-dimensional
ECHO : corresponds to the echo.
0: the data do not appear at output
1: all the data appear at output
DONN : corresponds to the logical unit on which the program reads the data.
5: the data are read with the keyboard
3: affected number by defect with the data file
To stop the execution of the program in batch mode, it is necessary to type in the data file command OPTI DONN 5 at the place where the interruption is wished; the user can then type his instructions with the keyboard. If he wants to take again the execution of the program in progress, he must type OPTI DONN 3.
DENS : corresponds to the current density (the entered value specifies the reference length of an element).
ELEM : corresponds to the type of elements to manufacture.

Ejemplo :
*Declaration de Parameters
OPTI ´DIME´3 ´ELEM´ QUA4 ´MODE´PLAN CONT ;

GO UP

Operators and directives

One can insert between the directives OPTI and END any operator or directive.

OBJ1 is the  ' résult'  object created by the operator.
OBJi is the ' given' object or argument necessary to the operator. The number of arguments depends on the selected operator.
Ejemplo :
LIG1 = DROITE PA PB ;
El operador DROITE crea un segmento delimitado por los puntos PA y PB. En este ejemplo, los argumentos del operador DROITE son los puntos fronteras del segmento.
There are also optional arguments which, according to cases', are not obligatory at the time of the call of the operator. Let us take again the preceding example by adding an optional argument to it:
Ejemplo :
LIG1 = DROITE 10 PA PB ;
The optional argument relates to the number of elements generated on the segment. If it is not specified, the program takes a valuer by defect, function of the densities associated with points PA and PB.
Certain operators call upon arguments which must be preceded by key words in order to avoid any confusion between the various arguments of the operator. Always on the same example, one can specify the densities associated with the points borders of the segment, for that, it is necessary to insert key words DINI and DFIN in front of the arguments relating to the densities:
  • A directive is written in the form: Nom_directive OBJi;

  • OBJi is the object ' donnée' or argument necessary to the directive. The number of arguments depends on the selected directive.
  • If the provided objects are incompatible with the operator or the directive, a message is printed informing the user of nonobtaining the result and giving an indication on the nature of the error.
  • Example :
    $   *  OPTI DIME 3 ELEM SEG2;
    $   *
    $   *  PA = 10.  10.  0. ;
    $   *  PB = 20.  20 ;
    ***** ERROR 37 ***** in the operator =
    Third coordonnee?
    The reading of the data continues on the terminal
    Premiere line = given:  second line = standard of the data.
    20.  20.
    FLOATING FLOATING
    $


    The most current error messages are detailed in chapter 10: Traditional errors. We could not too much advise to attentively read all the lines of the error message in particular the second and the two last lines.
     

    GO UP



    Environment in  CASTEM 2000

    It exists several directives of environment which allows obtaining the on line help (in interactive mode), the data entry to the keyboard, the filing and the restoration of information (which makes it possible to stop calculations and to take them again later on), etc... We will present the most usual directives here.

    INFO: provides documentation relating to the operator requested and is used as follows:

    INFO 'name of the opérateur' ;
    This directive makes it possible to produce a note of the whole of the operators and procedures of CASTEM 2000.
    AIDE : list all the operators using the key word requested and is used as follows:
    AIDE 'mot-clé' ;
    After this instruction, the list of all the found operators is printed.
    SORTIR : allows to leave a grid object in the file defined in the options by
    ´OPTI SORT Nfichier' (Nfichier can be a logical number of unit or a file name).
    LIRE : allows to read a grid object in the file defined in the options by :
    ´OPTI LECT Nfichier´.
    SAUVER: allows to write one or more objects in the file defined in the options by
    ´OPTI SAUV Nfichier'. That makes it possible to stop calculations and to take them again later on.
    RESTITUER : allows to give in memory the objects contained in the file defined in the options by
    ´OPTI REST Nfichier´.
    OBTENIR: allows to seize one or more objects with the keyboard.

    LISTE: allows to display all information relating to an object.

    Example :
    OBTE NBRE1*FLOTTANT NBENT2*ENTIER ;
    LIST NBRE1 ;
    LIST NBENT2 ;
    OPTI SAUV ´resu1.sort´;
    SAUV NBRE1 NBENT2 C1 ;
    The objects NBRE1 and NBENT2 and C1 are recorded in the file of name ´result.fort´.
    It is possible to obtain the English note (like all the messages of execution) while specifying in the options: OPTI ENGLISH LANG.
    GO UP



    Objects

    The data-processing structure of CASTEM 2000 is based on the concept of objects which are data relating to each process. The objects are classified according to the type of information which they contain and according to the significance that takes this information during the analysis.

    Certain types represent only mathematical or data-processing data (entirety, floating, list of words, list entireties...). Others are more physical and adapt to a modeling by finite elements (fields by point, fields by element, matrices of rigidity...).

    During an execution of CASTEM 2000, the type of the objects can be obtained by listing their contents with directive LIST.


    Classification of the objects

    The following list indexes the principal types of object, classified by category:

     
    Type of Objet Description
    VECTEUR Object relating to the visualization of a field by points by means of vectors.
    DEFORME Object relating to the characterization of a deformed field (obtained by superimposing an object of the GRID type to an object of the type CHPOINT 
    GO UP

    Use of the elementary objects

    GO UP



    Objects of the INTEGER type

    To create an object of the WHOLE type, one uses the sign =. One can carry out elementary arithmetic operations on these entireties with the operators +, -, *, /, **.

    Example :
    I1  =  24 ;
    I2  =  3 ;
    I3  =  I1 + I2 ;
    I4  =  I3/3 ;
    I5  =  I4**2 ;
    LIST I5 ;
    I4**2 corresponds to I42. The directive LIST makes it possible to list with the screen the contents and the type of 15.

    Example :
    $   *  LIST I5 ;
    Integer being worth: 81

    GO UP

    Objects of the FLOATING type

    They are created in the same way that the entireties but the numbers must contain a point or be expressed in notation power.

    Example :
    F1  =  2.5 ;
    F2  =  4E-1 ;
    F3  =  F1 + F2 ;
    MESS ´V of F3 :´F3 ;
    The operator MESS makes it possible to publish in the form of  message the allotted arguments (of type INTEGER, FLOATING or WORDS).
    GO UP

    Objects of the LOGICAL type

    These objects contain a logical variable of value TRUTH or FORGERY. To create them, one can affect directly to them words ' VRAI' or ' FAUX'. One can also create them with the operators of comparison EGA, >EG, <EG, <, > and NEG. The logical variables are used with the directives IF, IF NOT, FINSI.

    Example :
    I1  =  2; I2  =  4 ;
    I3  =  I1 + 2 ;
    LOG2  =  I2 EGA I3 ;
    SI LOG2 ;
    MESS ´The two entireties I2 and I3 are equal ' ;
    SINON ; MESS ´ Les deux entiers ne sont pas égaux ´ ;
    FINSI ;
    GO UP

    Objects of the type LISTENTI, LISTREEL and LISTMOTS

    These objects are lists of entireties, realities or words. To create them, one can use operator PROG for realities, operator LECT for the entireties or the operator WORDS for the words.

    Example :
    LISR1  =  PROG 5*1. ;
    LISR2  =  PROG 1.  1.  1.  1.  1.  ;
    LISR3  =  PROG 1. ´PAS´ 1.  ´NPAS´ 4 ;
    LISI1  =  LECT 4*3 ;
    LISI2  =  LECT  1  ´PAS´ 1  4 ;
    LISI3  =  LISI1  +  LISI2 ;
    LISI4  =  LISI1 et LISI2 ;
    LISM1  =  MOTS EXX1  EXX2  EYY1  EYY2 ;
    GO UP

    Use of the objects of grid

    GO UP

    Objects of the type POINT

    This type of object is used to represent a point or a vector. To create an object of the type POINT, one can use the sign =. It is necessary to declare the dimension of space (with directive OPTI DIME) before any creation of object of the type NOT.

    Example :
    OPTI  DIME 3 ;
    X2  =  10.  *  (COS 30) ;

    Not whose number is currently 1
    Coordonnees:  0.00000e+00 0.00000e+00 0.00000e+00 Density:  0.00000E+00
    $ * LIST P2;
    Not whose number is currently 2
    Coordonnees:  8.6603 5.0000 0.00000e+00 Density:  0.00000E+00
    $ *
    $ * FIN ;

    When one lists an object of the type POINT, it appears an additional quantity with the co-ordinates. It is about the density. This value is null by defect, one can modify it with directive DENS.

    The density makes it possible to control the local size on the sides of the elements being connected to a point.
    It is expressed in the same unit as the co-ordinates of the points. If one creates several elements between two points, the size of the elements in these two points will be about equal to the associated density and the size of the other elements will be a geometric progression. We will reconsider the concept of density in chapter 6: Grid.

    It is possible to create objects of the type NOT with the operator MORE who allows to carry out translations.

    Example :
    P1  =  0.  1. ;
    VEC1  =  1.  1. ;
    P2  =  P1  PLUS  VEC1  ;
    VEC1 represents the vector of translation, the point P2 will have as coordinates : (1. 2.).
    GO UP

    Objects of the MAILLAGE type

    The objects of the GRID type represent the elements which can be lines, surfaces or volumes. There are many manners of creating them. We will detail all these operators in chapter 6: Grid.

    To create a segment of right-hand side, the operator RIGHT-HAND SIDE is used and to create an arc of circle, the operator RINGS. According to the type of elements specified in directive OPTI ELEM, the lines created will have 2 Nuds (SEG2) or 3 Nuds (SEG3).

    Example :
    OPTI ELEM SEG2  ;
    P1  =  0.  0.  ;
    P2  =  1.  1.  ;
    LIG1  =  DROITE  2  P1  P2  ;
    OPTI  ELEM  SEG3  ;
    LIG2  =  DROITE  2  P1  P2  ;
    LIST  LIG1  ;
    LIST LIG2  ;

    MAILLAGE 4637:  2 element(S) of type SEG2
    0 under-reference(s)
    1ere line number element:  2nd color:  3rd... node
               1         2
       DEFA  DEFA

               1         3
               3         2
    $ * LIST LIG2 ;
    MAILLAGE 4641:  2 element(S) of type SEG3
    0 under-reference(s)
    1ere line number element:  2nd color:  3rd... node
               1         2
       DEFA  DEFA

               1          5
               4          6
               5          2

    The intermediate points are not named, the user does not have safe access there by naming them.

    GO UP


     
  • Use of the objects of calculation
  • GO UP



    Object of the type CHPOINT

    In an object of the type CHPOINT, also called field by points, the field is defined by its values in each node of referred the grid object. It can contain one or more components. The components are located by their name which can be chosen by the user or be arbitrarily determined by the operator who created object CHPOINT. A name of component comprises to the maximum 4 characters.

    It is possible to create an object CHPOINT manually, for that one uses operator MANU followed by key word CHPO.

    Example :
    LIST1  =  PROG  0.1  PAS  0.1  NPAS  9  ;
    CHP1  =  MANU  ´CHPO´  LIG1  2  ´UX´  LIST1  ´UY´  0.5  ;
    LIST  CHP1  ;
    The field by points CHP1 is pressed on Nuds grid LIG1 (which contains 10 points). For giving the names of the components and their values, it is necessary to specify the number of components (here 2). The list of the values of component UX with each node is given in the form of list of realities (objects of the type LISTREEL). This list must comprise values as many than there is Nuds in the geometrical support (object of the GRID type or NOT). Component UY is constant on all the points of the grid, one can then directly re-enter a value (standard ENTIRETY or FLOATING) in the place of a list of realities.

    CHPOINT of pointer 4649 container 1 under-field
    Titles :
    Type  :
    The attribute of nature of the CHPOINT is:  INDETERMINE
    Option de calcul:  PLAN
        Points   Inconnue.....
                                UX                UY                                 UX                  UY
            1        1.00000E-01    5.00000E-01     2         1.00000E+00    5.00000E-01
            3        2.00000E-01    5.00000E-01     4         3.00000E-01     5.00000E-01
            5        4.00000E-01    5.00000E-01     6         5.00000E-01     5.00000E-01
            7        6.00000E-01    5.00000E-01     8         7.00000E-01     5.00000E-01
            9        8.00000E-01    5.00000E-01   10         9.00000E-01     5.00000E-01

    When one lists an object of the type CHPOINT, it appears various information: the title, the type, the attribute of nature and the option of calculation. The nature of the field can be unspecified (like here), diffuse or discrete: when the field represents a continuous size (for example a field of displacement), it is of diffuse nature; when it represents a nodal field are equivalent (for example a nodal force), it is of discrete nature.

    It is possible to create starting from an object CHPOINT with several components a standard object CHPOINT in the same way by extracting one or more components given. For that, one uses operator EXCO. One can keep the same names of component or give the new ones well.

    Example :
    CHP2  = EXCO  ´UX´  CHP1  ;
    CHP3  =  EXCO  ´UX´  CHP1  ´U1´  ;
    CHP4  =  EXCO (MOTS  UX  UY)  CHP1 (MOTS  U1  U2)  ;
    Field CHP2 will have a component of name UX and whose values will be equal to those of component UX of CHP1. Field CHP3 will have a component of name U1 and whose valuers will be equal to those of component UX of CHP1. Field CHP4 will have two components of name U1 and U2 and whose valuers will be equal to those of components UX and UY of CHP1.
    It is possible to change the name of the components of an object CHPO with operator NOMC.
    Example :
    CHP5  =  NOMC  ´DEP´  CHP2  ;
    CHP6  =  NOMC (MOTS  UX  UY)  (MOTS  u1  U2)  CHP1  ;
    Field CHP5 will be identical to field CHP2 but the name of its component will be EPD and either UX. Field CHP6 will be identical to field CHP1 but the names of its components will be U1 and U2 and either UX and UY.
    GO UP

    Object of the type MCHAML

    An object of the type MCHAML, also called field by elements, contains definite data for each element of the referred grid. They can be the characteristics of materials, of the geometrical characteristics of the elements (section, thickness...), of the constraints, the deformations... Like objects CHPOINT, it can contain one or more components.

    In each element, the values of the field can be defined:

    An object MCHAML can be created with operator MANU followed by key word CHML or CHAM, according to whether the field is constant well on all nodes or no one everywhere safe in a point.
    Example :
    CHAM1  =  MANU  ´CHML´  LIG1  G  9.81  ;
    CHAM2  =  MANU  ´CHAM´  MODL1  ´POSI´  GRAVITE  GP  2  1  50.  ;
    Field CHAM1 rests on LIG1 (object of the GRID type), it has only one component of name G and constant on all the elements of the grid. Field CHAM2 rests on MODL1 (object of the type MMODEL), its component of name GP is null safe everywhere in a point (item 1 of element 2) where it is worth 50. The field is defined in the centre of gravity of element.

    $  *  LIST  CHAMP2  ;

    +-----------------------------------------------------------------------------+
    |     OBJECT MCHAML CONTAINING 1 ZONE ELEMENTAIRE(S)       |
    |     TYPE:                                                                                                      |
    |     OPTION OF CALCULATION PLANE DEFORMATIONS                  |
    +-----------------------------------------------------------------------------+
                ZONE ELEMENTAIRE NUMBER   1
                ----------------------------------------
    POINTEUR SUR L´OBJET MAILLAGE      4637
    NUMERO DE L´HARMONIQUE                         0
    POINTEUR SUR LES POINTS SUPPORTS         4691
    VALEURS DONNEES AU CENTRE DE GRAVITE
    NOM DU CONSTITUANT                                        4683
    NOMBRE DE COMPOSANTES            1

        1-ERE COMPOSANTE      -    NOM  :  GP         -         TYPE  :  REAL*8
    ELEMENT                             1                     2                 3                 4                 5
    POINT     1             0.000E+00     5.000E+01  0.000E+00  0.000E+00 0.000E+00 ELEMENT                             6                     7                 8                 9
    POINT     1             0.000E+00     0.000E+00  0.000E+00  0.000E+00

    If the support is not specified during the creation of an object CHAML with operator MANU, the field will be by defect defined in Nuds of the elements. One can use operator EXCO on objects MCHAML in thesame way as with objects CHPOINT (operator NOMC is used only with objects CHPOINT).
    GO UP



    Handling of objects CHPOINT and MCHAML

    It is possible to build an object CHPOINT starting from an object MCHAML with operator CHAN(GER) followed by key word CHPO. The opposite operation is possible with CHAN followed by key word CHAM.

    Example :
    CHP7  =  CHAN  ´CHPO´  MODL1  CHAM2 ;
    CHAM3  =  CHAN  ´CHAM´  CHP7  MODL1  ´GRAVITE´  ;
    LIST  CHAM2  ;
    LIST  CHP7  ;
    LIST  CHAM3  ;
    One can notice that while passing by again of the field by points CHP7 with the field by elements CHAM3, the values obtained are different from the initial field by elements CHAM2. This is related to the principle of the operator CHAN who works on averages.
     
    One can use on objects CHPOINT and MCHAML the elementary operators of calculus: +, -, *, /, ** It is preferable that the components of the various fields have the same names and are based on the same grids or models. Indeed, the operator + for example does not carry out the sum of the two fields if they different but are made an addition.
    GO UP



    Object of the type MMODEL

    The objects of the type MMODEL associate with a grid a physical field, a model of behavior of material and the type of finite elements to use.

    Example :
    MODL1  =  MODEL  LIG1  MECANIQUE  ELASTIQUE  COQ2  ;
    Grid LIG1 is associated with a mechanical formulation, the material is elastic isotropic, the finite elements of thin hull type to use.
    GO UP

    EVOLUTION and TABLE objects

    GO UP



    Object of the EVOLUTION type

    This type of object makes it possible to define the evolution of a size i.e. the representation of f(x) according to X the values of X are defined in a list of real LIS1, the corresponding values of f(x) are defined in another list of real of the same LIS2 cuts than LIS1. The object of the EVOLUTION type is created with operator EVOL followed by key word MANU.

    Example :
    LIS1  =  PROG  0.  PAS  10.  360.  ;
    LIS2  =  SIN  LIS1  ;
    EV1  =  EVOL  ´MANU´ ´Abscisses´  LIS1  ´Ordonneess´  LIS2  ;
    DESS  EV1  ;
    Evolution EV! represent the curve of sin(x) of 0 with 360º.
    Operator EVOL supports other key words, in particular:
    GO UP



    Object of the type TABLE

    To create an object of the type COUNTS, one uses the operator COUNTS. This type of object comprises a structure in tree structure. Each object of table can be of the unspecified type and is characterized by an unspecified index.

    Example :
    TAB1  =  TABLE  ;
    TAB1  .FORCE  =  TABLE  ;
    TAB1  .FORCE.GRAVITE  =  CHAM1  ;
    TAB1  .FORCE.LOCAL  =  CHAM2  ;

     $  list  TAB1  .FORCE  ;
    *   list  TAB1  .FORCE  ;
    TABLE de pointeur  4741
                    Indice                                      Object
            Type        Valeur                     Type        Valeur
    MOT         GRAVITE            MCHAML          4719
    MOT         LOCAL                MCHAML         4707

    GO UP

    Procedures

    It is possible to call upon procedures during the execution of a program. The user can create his own procedures or use those placed at his disposal in program CASTEM 2000. The existing procedures in the program are used like elementary operators.
    We will detail in this chapître the way in which the user can create his own procedures.

    The procedures can be defined in the implementation plan or well in an external file.

    Go to Contents



    Definition of a procedure during the execution

    A procedure contains a succession of elementary instructions of which first is DEBP and the last FINP. Operator DEBP must be followed name of the procedure and list of the arguments necessary for his use.

    Example :
    DEBP  nom_procédure  OBJ1*type1  OBJ2/type2  ;
    -
    opérations élémentaires
    -
    FINP  ;
    The objects whose type is preceded by * are obligatory data at the time of the call of the procedure. The objects whose type is preceded by / are optional data at the time of the call of procedure.
    The objects created during the execution of the procedure are not accessible outside the procedure. If one wishes to recover objects created during the execution of the procedure, it is necessary to specify the list of the objects generated after operator FINP.
    Example :
    DEBP  NORME1  P1*POINT  P2*POINT  ;
    X1  =  COOR  1  P1  ;  Y1  =  COOR  2  P1  ;
    X2  =  COOR  1  P1  ;  Y2  =  COOR  2  P2  ;
    L2  =  ((X2  -  X1)**2)  +  ((Y2  -  Y1)**2)  ;
    L  0  L2  **  0.5  ;
    FINP  L  ;
    OPTI  DIME  2  ;
    P1  =  0.  0.  ;
    P2  =  1.  1.  ;
    NORM1  =  NORME1  P1  P2  ;
    NORM1 contains the value of the object become in argument after the operator FINP.
    GO UP



    Definition of a procedure in an external file

    The user can memorize his procedures in an external file. It is possible to write several procedures in the same file. Each procedure must start with$ follow-ups of the name of the procedure (in capital letter). The contents of the procedure identical to the contents are described previously, starting with operator DEBP and finishing by FINP. The file must end in$.

    Example  :
    $$$$  NORM_2D
    DEBP  NORM_2D  ...  ;
    ...
    FINP
    $$$$  NORM_3D
    DEBP  NORM_3D  ...  ;
    ...
    FINP  ...  ;
    $$$$
    This external file contains two procedures:  NORM_2D and NORM_3D.
    It is necessary to put at the good format the file containing the procedures by creating a file of random access. This new file will be stored under the name of UTILPROC. To create this file UTILPROC, it is necessary to use directive UTIL(ISATEUR) followed by key word PROC(EDURE).
    Example :
    UTIL  PROC  ´nom_fichier_externe.proc´  ;
    GO UP

    Mesh

    In the majority of the preprocessors of the computer codes by finite elements, the geometrical model is created in two stages:
    initially, the definition of the geometry by basic geometric standards (points, lines, surfaces, volumes) then in the second time the generation of the grid starting from the geometries created. In CASTEM 2000, a geometrical object exists only in discretized form. The discretization of the field in elements is carried out at the time of the definition of the geometry. We will introduce inthis chapître the principal geometrical operators who create objects of the GRID type (points, lines, surfaces, volumes). The general step is the following one:

    The objects of the GRID type constitute the geometrical support of the finite elements which will be defined later on. The type of the geometrical supports must thus be in agreement with the finite elements which will be used: for example, if the elements are of beam type, bars or axisymmetric hull, the corresponding geometrical supports will have to be SEG2 (segments with 2 nodes).
    Go to Contents



    Creation of the points and the lines

    In order to point out the creation of the points and the lines, we will comment on the following example. We in particular will highlight the concepts of density. (Note:: the operators RIGHT-HAND SIDE and of CIRCLE can be shortened respectively by D and C).

    Example :
    OPTI  DIME  2  ELEM  SEG2  ;
    P0  =  0.  0.  ;
    P1  =  10.  0.  ;
    P2  =  10.  10.  ;
    P3  =  0.  10.  ;
    CEN1  =  5.  10.  ;
    L1  =  D  P0  P1  ;
    L2  =  D  P1  P1  ´DINI´  1.  ´DFIN´  2.  ;
    N1  =  NBNO  L2  ;  N2  =  NBEL  L2  ;
    L3  =  D  -10  P2  P3  ´DINI´ 2.  ´DFIN´  2.  ;
    L4  =  C  ((-1)*N2)  P3  CEN1 P0  ´DINI´ 2.  ´DFIN´  1.  ;
    CONT1  =  L1  ET  L2  ET  L3  ET  L4  ;
    TRAC  CONT1  ;
    - L1: the number of elements is specified and positive, L1 is thus divided into 10 elements equal length.
    - L2 : the numbers elements is not specified, L2 is divided  into elements of which the number and length are calculated according to the densities of the ends. Here the densities are not identical, the elements are thus different length. The size is calculated by taking account of the densities of the ends. The adjacent element at the point P will have a length equal to DINI(=1)  and the adjacent element to the point P2 a length equal to DFIN (= 2).
    N1 is the number of nodes of L2, obtained with the operator NBNO
    N2 is the number of elements of  L2, obtained with the operato rNBEL.
    - L3; the number of elements is specified and negative, L3 is divided into 10 elements whose size is calculated according to the densities of the ends. Here the densities are identical, the elements is specified and negative. The line is an arc of circle connecting the points P3 and P0 and of  center CEN1.
    - L4: the number of elements is specified and negative. The line is an arc of circle connecting the points P3 and P0 and of center CEN1.
    One could have obtained the same result while assigning to the points P0 and P1 a density of 1 and to the points P2 and P3 a density of 2. The creation of the lines would then not have required key words DINI and DFIN.
    Example :
    OPTI  DIME  2  ELEM  SEG2  ;  DENS  1.  ;
    P0  =  0.  0.  ;
    P1  =  10.  0.  ;
    DENS  2.  ;
    P2  =  10.  10.  ;
    P3  =  0.  10.  ;
    CEN1  =  5.  10.  ;
    l1  =  D  p0  p1  ;
    L2  =  D  P1  P2  ;  N2  =  NBEL  L2  ;
    L3  =  D  10  P2  P3  ;
    L4  =  C  ((-1)*N2)  P3  CEN1  P0  ;
    CONT1  =  L1  ET  L2  ET  L3  ET  L4  ;
    TRAC  CONT1  ;
    It is possible to name a point which was created automatically and is not named yet. One uses for that the operator NOT. To obtain the punctual coordinates, operator COOR is used.
    Example  :
    PCAHR1  =  L1  POIN  5  ;
    PCHAR2  =  L1 POIN  ´PROC´  (6.1  0.)  ;
    X2  =  COOR  1  PCHAR2  ;
    Y2  =  COOR  2  PCHAR2  ;
    X1  Y1  =  COOR  PCHAR1  ;
    - PCHAR1 is the 5éme not line L1.
    - PCHAR2 is the point of the line L1 nearest to the item (6.1 0.).
    - X2 is the X-coordinate of PCHAR2, Y2 the ordinate
    - X1 be the X-coordinate of PCHAR1, Y1 the ordinate.
    There are different geometrical operators:

    CER3  : built an arc of circle passing by three points
    PARA : built an arc of parabola
    CUBP and CUBT : build arcs of cubic
    CURVE  : create a polynomial curve of command (n-1) starting from N points
    UNSPECIFIED  : built a broken line passing by the specified points
    INTERSECTION : built the arc of curve, intersection of two surfaces

    GO UP



    Creation of surfaces

    Surfaces are generally created starting from the lines. Various operators are available:

    SURFACE and TO PAVE : build a surface starting from the lines which constitute the contour of this surface
    REGLER  : built a surface starting from 2 lines on which surface will be pressed.
    TRANSLATION and ROTATION  : built a surface by translation or rotation of line of an unspecified type

    GO UP



    Operators SURFACES and DALLER

    Example :
    OPTI  ELEM  TRI3  ;
    SURF1  =  SURF  CONT1  ´PLAN´  ;
    TRAC  SURF1  ;
    OPTI  ELEM  QUA4  ;
    SURF2  =  SURF  CONT1  ´PLAN´  ;
    SURF3  =  DALL  L1  L2  L3  L4  ;
    TRAC  SURF2  ;  TRAC  SURF3  ;
    The operator SURFACES built a surface starting from a closed contour. The elements used are those specified in directive OPTI. One can notice that with elements QUA4, the automatic maillor inserts all the same with QUA4. It is  necessary that the opposite sides has the same number of elements or then should be used the QUELCONQUE option.
    The coasts defining contour must be directed in the same direction.
     


     


    One can use the operator SURFACES to create a surface comprising of external and interior contours (delimiting holes for example). Interior contours must turn in the opposite direction of external contours.

    Example :
    OPTI  ELEM  TRI3  ;
    P4  =  4.  4.  ;  P5  =  6.  4.  ;
    P6  =  6.  6.  ;  p7  =  4.  6.  ;
    L5  =  D  5  P4  P7  ;
    L6  =  D  5  P7  P6  ;
    L7  =  D  5  P6  P5  ;
    L8  =  D  5  P5  P4  ;
    CONTINT1  =  L5  ET  L6  ET  L7  ET  L8  ;
    CONTTOT  =  CONT1  ET  CONTINT1  ;
    SURF2B  =  SURF  CONTTOT  ´PLAN´  ;
    TRAC  SURF2B  ;

    GO UP

    Operator REGLER

    Example :
    L3I  =  INVE  L3  ;
    SURF4  =  L1  REGLER  10  L3I  ;
    SURF5  =  L1  REGLER  -10  L3I  ´DINI´  1.  ´DFIN´  2.  ;
    TRAC  SURF4  ;  TRAC  SURF5  ;
    Operator REGLER builds a regulated surface being pressed on 2 lines which must be described in the same direction. In order to direct the line L3 in the same direction that the line L1, one uses the operator INVE who reverses the direction of  the line. It is possible to specify the number of layers of generated elements (here 10). According to the same principle that the creation of the lines, one can take account of the densities by giving a negative number of layers.


    GO UP

    Operators TRANSLATION and ROTATION

    Example :
    VEC2  =  0.  10.  ;
    PR1  =  -5.  0.  ;
    SURF6  =  L1  TRAN  10  VEC2  ;
    SURF7  =  L1  TRAN  -10  ´DINI´  1.  ´DFIN´ 2.  VEC2  ;
    SURF8  =  L1  ROTA  10  30  PR1  ;
    TRAC  SURF6  ;
    TRAC  SURF7  ;
    TRAC  SURF8  ;
    The operator TRANSLATION builds the surface generated by the translation of a line according to a vector given (here VEC2).
    The operator ROTATION builds the surface generated by rotation of a line of an angle given (30º) around a point given (PR1).
    45 In both cases, one can indicate here the number of generated layers (10) and one can take account of the densities by giving a negative number of layers.


    GO UP



    Creation of volumes

    Volumes are generally created starting from surfaces. Various operators are available:

    VOLUME  : various options exist with this operator.
    TO PAVE   : built a volume starting from a parallelepipedic envelope.

    GO UP



    Operator Volume

    Example :
    OPTI  DIME  3  ELEM  CUBS  ;
    VEC3  =  0.  0.  10.  ;
    PR2  =  -5.  10.  0.  ;
    SURF9  =  SURF6  PLUS  VEC3  ;
    VOL1  =  SURF6  VOLU  10 ´TRANS´  VEC3  ;
    VOL2  =  SURF6  VOLU  10  ´ROTA´  30.  PR1  PR2  ;
    VOL3  =  SURF6  VOLU  SURF9  ;
    TRAC  CACH  VOL1  TITRE  ´VOL1´  ;
    TRAC  CACH  VOL2  TITRE  ´VOL2´  ;
    TRAC  CACH  VOL3  TITRE  ´VOL3´  ;
     The TRANS option makes it possible to create a volume by the translation of a surface according to a given vector (VEC3).
    Option ROTA makes it possible to create a volume by the rotation of a surface according to a given angle and around the axis defined by 2 points (PR1 and PR2).
    The operator VOLUME used without key word creates volume by connecting two surfaces given (which must be obligatorily homeomorphic).
    It is possible to specify the number of generated layers (here 10), one can as take account of the densities according to the same principle as the lines and surfaces.
    Option CACH of directive TRAC makes it possible to display only the apparent parts of the object.


     

    GO UP

    Operator To pave

    The following example illustrates the use operator TO PAVE it who allows to net with cubes the interior of parallelepipedic volumes. It is necessary to specify the 6 faces of the envelope in a specific order: the opposite faces must be followed in the list and they must be described in an identical way.

    Example :
    OPTI  DIME  3  ELEM  CUB8  DENS  1.  ;
    PP1  =  0.  0.  0.  ;  PP2  =  10.  0.  0.  ;
    PP3  =  10.  10.  0.  ;  PP4  =  0.  10.  0.  ;
    PP5  =  0.  0.  10.  ;  PP6  =  10.  0.  10.  ;
    PP7  =  10.  10.  10.  ;  PP8  =  0.  10.  10.  ;
    LL1  =  D  PP1  PP2  ;  LL2  =  D  PP2  PP3  ;
    LL3  =  D  PP3  PP4  ;  LL4  =  D  PP4  PP1  ;
    LL5  =  DD  PP5  PP6  ;  LL6  =  D  PP6  PP7  ;
    LL7  =  D  PP7  PP8  ;  LL8  =  D  PP8  PP5  ;
    S1  =  DALL  LL1  LL2  LL3  L4  ;  S2  =  DALLL  LL5  LL6  LL7  LL8  ;
    LL9  =  D  PP2  PP6  ;  LL5I  =  INVE  LL5  ;
    LL10  =  D  PP5  PP1  ;
    S3  =  DALL LL1  LL9  LL5I  LL10  ;
    LL3I  =  INVE  LL3  ;
    LL11  =  D  PP3  PP7  ;  LL12  =  D  PP8  PP4  ;
    S4  =  DALL  LL3I  LL11  LL7  LL12  ;
    LL4I  =  INVE  LL4  ;  LL12I  =  INVE  LL12  ;
    S5  =  DALL  LL4I  LL12I  LL8  LL10  ;
    LL6I  =  INVE  LL6  ;  LL9I  =  INVE  LL9  ;
    S6  =  DALL  LL2  LL11  LL6I  LL9I  ;
    V1  =  PAVE  S1  S2  S3  S4  S5  S6  ;
    TRAC  CACH  V1  ;

    GO UP

    Recapitulation of the operators of grid
     
    Type of Object Operators
    POINTS  =,  PLUS,  MOINS,  POINT,  BARYCENTRE
    LINES  starting from points : DROITE,  CERCLE,  CER3,  CONGE,  COURBE,  CUBP,  CUBT,  PARABOLE,  INTERSECTION,  QUELCONQUE.
     starting from lines :  PLUS,  MOINS,  AFFINITE,  HOMOTHETIE,  INVERSE,  PROJECTION,  SYMETRIE,  TOURNER,  COMPRIS,  ELEMENT.
     starting from complex grids:  CONTOUR,  ARTE,  COTE
    SURFACES  starting from lines : TRANS,  ROTATION,  SURFACE,  COUTURE,  REGLER,  GENERATRICE,  DEDUIRE,  DALLER.
     starting from surfaces :  PLUS, MOINS, PROJECTION,  ASSINITE,  HOMOTHETIE,  SYMETRIE,  ORIENTE,  TOURNER,  REGENERER,  INCLUS,  ELEMENT,
     starting from volumes :ENVELOPE,  FACE.
    VOLUMES  starting from surfaces: VOLUME TRANS,  VOLUME ROTA,  PAVER
     starting from volumes: REGENERER,  AFFINITE,  PLUS,  MOINS,  HOMOTHETIE,  TOURNER,  SYMETRIE.

    GO UP



    Example: Grid of a hollow roll

    There are many ways of carrying out a grid. Here two examples of grid of a hollow roll, the complicated first, the simpler second.

    EXAMPLE 1

    OPTI DIME 3 ELEM CUB8  ;
    ********************************************************************************
    *  POINTS
    H1 = 5.  ;  COMM  Height of the cylinder  ;
    R1 = 2.  ;  COMM  Interior Ratio  ;
    R2 = 2.5  ;  COMM Exterior ratio ;
    O1 = 0.  0.  0.  ;  O2 =  0.  0.  H1  ;  COMM Points of  cylinder axe  ;
    P11 =   R1 0.  0.  ;   P12  =   0.  R1  0.  ;
    P13  =  ((- 1.)*R1)  0.  0.  ;  P14  =  0.  ((- 1.)*R1) 0.  ;
    P21  =  R2  0.  0.  ;  P22  =  0.  R2  0.  ;
    P23  =  ((- 1.)*R2)  0.   0.  ;  P24  =  0.  ((- 1.)*R2)   0.  ;
    ********************************************************************************
    *  LINES
    *  Interior contour of the base
    C11   =   C  20  P11  O1  P12  ;
    C12   =   C  20  P12  O1  P13  ;
    C13   =   C  20  P13  O1  P14  ;
    C14   =   C  20  P14  O1  P11  ;
    CONT1  =  C11 ET  C12 ET  C13 ET  C14  ;
    *  Exterior contour of the base
    C21   =  C  20  P22  O1  P21  ;
    C22   =  C  20  P23  O1  P22  ;
    C23   =  C  20  P24  O1  P23  ;
    C24   =  C  20  P21  O1  P24  ;
    CONT2  =  C21 ET  C22 ET  C23 ET  C24  ;

    CONTTOT1  =  CONT1  ET  CONT2  ;
    ********************************************************************************
    *  SURFACE
    SURF1   =  SURF CONTTOT1 ' PLAN'  ;
    ********************************************************************************
    *  VOLUME
    VOL1   =    SURF1  VOLU  10  TRANS  (0. 0.  H1)  ;
    ********************************************************************************
    *  TRACAGE
    TITRE ' MAILLAGE D UN CYLINDRE CREUX'  ;
    TRAC  CACH  QUAL  VOL1  ;
    END;

    Remarks on the file of example 1

    EXAMPLE 2

    OPTI DIME 3 ELEM CUB8;
    ********************************************************************************
    *  POINTS
    H1  =  5.  ;   COMM Height of the cylinder  ;
    R1  =  2.  ;   COMM  Interior Ratio  ;
    R2  = 2.5  ;   COMM Exterior ratio  ;
    O1  =  0.   0.   0.  ;  O2  =  0.   0.   H1  ;  COMM Points of one axe of cylinder  ;
    P11  =  R1  0.   0.  ;
    P21  =  R2  0.   0.  ;

    ********************************************************************************
    L1       =  P11  D  3  P21  ;
    SEC1  =  L!  TRANS  10  (0.  0.   H1)  ;
    VO1   =  SEC1  VOLU 40  ROTA  180  O1  O2  ;
    VO2   =  VO1  VOLU  40  ROTA  180  O1  O2  ;
    VOL1 =  VO1 ET  VO2  ;
    ELIM  0.001  VOL1;

    ********************************************************************************
    *  TRACAGE
    TITRES  ' MAILLAGE D UN CYLINDER CREUX'  ;
    TRAC  CACH  VOL1 ;

    END  ;

    Remarks on the file of example 2

    GO UP



    Preparation of the model of calculation

    The model of calculation represents the whole of the data which must prepare the user to describe the complete characteristics of the problem to be analyzed. It can be described by the following diagram:

  • The geometry represents the form discretized of the field to study. It is made up of objects of the GRID type (see Chapître 6: Grid).
  • The model associates with the grid a law of behavior of material, the finite elements formulation as well as the type of elements used. It is an object of the type MMODEL.
  • The characteristics of materials define the physical properties of materials: Young modulus, coefficient of Poisson,     density, etc... These data are gathered in an object of the type MCHAML to several components (YOUN, NU,  RHO...).
  • The characteristics of the elements relate to certain additional data according to types' of selected elements which cannot result from the geometry. For example, for the hulls it is necessary to indicate their thickness, for the beams their section  and their various inertias. These data are gathered in an object of the type MCHAML to several components (SECT, INRY, EPAI, TORS...). This field can be concaténé with the field of characteristics of materials.
  • The limiting conditions of blocking type must be added to the matrix of rigidity. It is of the objects of the type RIGIDITE. If they are imposed conditions (temperature, displacements...), they must moreover be added to the second member of the equation to solve. It is of the objects of the type CHPOINT.
  • The loading is an object of the type CHPOINT or LOADING (in the case of space and temporal description).
  • Go to Contents



    Model

    The model associates with an object of the GRID type a physical field, a law of behavior of material and the finite elements formulation. It is the operator MODE(LISER) who creates the object of the type MMODEL.

    Example :
    MOD1  =  MODE  GEO1  MECANIQUE  ELASTIQUE  ISOTROPE  POUT  ;
    MOD2  =  MODE  GEO2  MECANIQUE  PLASTIQUE  ISOTROPE  POUT  ;
    MOD3  =  MODE  GEO3  MECANIQUE  ELASTIQUE  ORTHOTROPE  COQ4  ;
    MOD4  =  MODE  GEO4  THERMIQUE  ISOTROPE  QUA8  ;
    MOD5  =  MODE  GEO5  LIQUIDE  MECANIQUE  RACO  ;
    Each model is definite EM assigning to a géometrie (GEOi) a formulation (MECANIQUE, THERMICS, LIQUID MECANIQUE), a law of behavior of material and a type of finite elements.
    The first four models have a simple formulation  (MECANIQUE or THERMICS), the cinquiéme has a coupled formulation (LIQUID  MECANIQUE).
    The behavior of material of MOD1 and MOD3 is linear (ELASTIQUE), that of material of MOD2 is nonlinear (PLASTIQUE).
    LIQUID MECANIQUE formulation does not require a material, the type of finite elements RACO corresponds to a connection liquid-hull.
    The type of the finite elements depends on  the formulation, the geometrical type of support and the selected option of calculation. For example élement the POUT is supported by SEG2 in formulation MECANIQUE with an option of three-dimensional calculation.
    GO UP



    List various formulations

    The names of the formulations and the models of behavior must be written in any letter.
    GO UP



    Materials and characteristic of the elements

    According to the type of calculation and finite elements' used, it is necessary to define certain material and geometrical properties. One uses operator MATE(RIAU) to define the material properties of a given model. For the geometrical properties, one can also use the MATER operator or well operator CARA(CTERISTIQUE). The objects created by the two operators are of type MCHAML to several components:YOUN, NAKED, RHO, EPAI... The characteristics can be constant or variable according to a parameter.

    Example :
    MAT1  =  MATER  MOD1  YOUN  2.E11  NU  0.3  RHO  7850  ;
    CAR1  =  CARAC  MOD1  SECT  0.5  INRY  0.4  INRZ  0.4  TORS  1.  ;
    MATTOT1  =  CAR1  ET  MAT1  ;
    MATTOT2  = MATER  MOD1  YOUN  2.E11  NU  0.3  RHO  7850.  SECT  0.5  INRY  0.4  INRZ  0.4  TORS  1.  ;
    EVYOU1  =  EVOL  MANU  ´YOUN´  (PROG  2.2E11  2.E11  1.8E11)  ´TEMP´  (PROG  20.  100.  200.)  ;
    MATTOT3  =  MATER  MOD1  YOUN  EVYOU1  NU  0.3  ;
    Two objects MATTOT1 and MATTOT2 are equivalent.
    If one defines the material properties separatly of geometrical properties, is needed concatenate then two fields (MAT1 AND CAR1).
    In MATTOT3, the modulus Young is described by an evolution giving component YOUN according to the parameter TEMP.
    GO UP


     

    Limiting conditions and loading

    Limiting conditions

    The conditions limit are treated in CASTEM 2000 by the method of the multipliers of Lagrange. They are written in the form: 
    They are taken into account in the system of linear equations of balance while solving:

    The user must thus build two objects:

    There are different operators making it possible to treat the limiting conditions, in particular: Loading

    The definition of the loading consists in creating a field by points corresponding to the vector of the second member of the equation: . 

    There are specific operators making it possible to define a loading (operators FORCES, MOMENT, PRESSURE...). On the other hand, there are no specific operators for certain current cases of loading, in particular for the actual weight and the thermal loading. The examples of chapters 11 and 12 (mechanical Calculations and thermal Calculations) present methods making it possible to apply these two types of loading.

    Example :
    CL1  =  BLOQUER DEPLA ROTA P1  ;
    CL2  =  BLOQUER  UX  UY  L1  ;
    CL3  =  SYMT  DEPLA  01  02  03  P6  1.E-3  ;
    CL4  =  RELA  1  UZ  P3  - 2  UX  P4  ;
    CLTOT  =CL1  ET  CL2  ET  CL3  ET  CL4  ;
    *
    DEP1  =  DEPI  CL4  0.5  ;
    F1  =  FORCE  FZ  1000.  P5  ;
    FTOT  =  DEP1  ET  F1  ;
    - The operator BLOQUER blocks degrees of freedom of freedom of a geometrical object.
    CL1 indicates that the point P1 is embedded, CL2 indicates that only displacements UX and UY of the line L1 are blocked
    -  CL3 makes it possible to define a relation of symmetry of all displacements of the point P6 compared to the     plan defined by the points O1, O2 and O3.
    - CL4 makes it possible to define a linear combination  between displacements UZ of the points P3 and P4.
    - DEP1 makes it possible to impose a value on rigidity CL4 knowing: UZ(P3) - 2 UZ(P4) = 0.5.
    - F1 defines a force FZ of amplitude 1000 applied to the point P5.
    - FTOT represents the second member of the equation, this object gathers the force applied to the system as well  as the vector of imposed displacements.
    GO UP

    Resolution of a calculation

    Once carried out the preparation of the model of calculation, one can constitute the system


    and to solve it. It is thus necessary initially to build the matrices of mass, damping and rigidity.
    Operator RIGI(DITE) allows to build the matrix of rigidity, AMOR(TISSEMENT) the matrix of damping and MASS the matrix of mass.

    One uses operator RESO(UDRE) to solve a linear system, operator VIBR(ATION) to carry out a modal analysis. We will illustrate the use of these two operators for two simple examples:
    - calculation of the arrow of a embed-free beam (8.2: Analyze static linear)
    - calculation of the clean modes of a square plate (8.3: Modal analysis).



    Construction of the matrices

    Example :
    RIG1  =  RIGI  MOD1  MATTOT1  ;
    MAS1  =  MASS  MOD1  MATTOT1  ;
    AMO1  =  AMOR  TAB1  LREEL1  ;
    - Operator RIGI builds the matrix of rigidity starting from the model and the material and geometric characteristics. He can also create additional stiffnesses.
    - The operator MASSES built the matrix of mass to parir model and characteristics material and geometrical. He can also create additional masses
    - Operator AMOR contruit a diagonal matrix of modal depreciation by assigning to each mode of the base (given contained in TAB1 of the type COUNTS and sub-type BASE_MODALE) a reduced damping (given contained in LREEL1 of the type  LISTREEL).
    GO UP

    Analyze static linear

    In order to illustrate the sequence of a calculation, we will calculate the arrow of a embed-free beam with a bending force applied to the loose lead.

    GO UP



    Facts of the case

    GO UP



    Data file

    OPTI  DIME 3  ELEM  SEG2  OPTI  TRID  ;
    *  DATA
    AMPF  =  -1000.  ;
    LON1  = 1.  ;
    DIA1  =  0.1 ;
    RHOP  =  7800.  ;
    NUP  =  0.3  ;
    YOP  =  2.1E11  ;

    * CALCULATION OF THE GEOMETRICAL DATA
    S1  =  PI*(DIA1**2)/4.  ;
    IY  =  PI*(DIA1**4)/64.  ;
    IZ  =  IY  ;
    IG  =  PI*(DIA1**4)/32.  ;

    *  GEOMETRIE
    P1  =  0.   0.   0.  ;
    P2  =  LON1  0.   0.  ;
    L1  =  D  10  P1  P2  ;

    *  DEFINITION OF THE MODEL AND MATERIAL
    MOD1 =  MODEL  L1 MECANIQUE ELASTIQUE ISOTROPE POUT;
    MAT1  =  MATER MOD1 YOUN YOP NUP RHO RHOP  ;
    CAR1  =  CARAC MOD1 SECT  S1 INRY IY INRZ IZ TORS IG  ;
    MATTOT = MAT1 ET CAR1  ;

    *  LIMITING  CONDITIONS
    CL1  =  BLOQ DEPLA ROTA P1  ;

    *  LOADING
    FOR1  =  FORCE FY AMPF P2  ;

    *  MATRIZ OF RIGIDITE
    RIG1  =  RIGI MOD1 MATTOT  ;
    RIG1  =  RIG1 AND CL1  ;

    *  RESOLUTION
    RES1  =  RESO RIG1 FOR1  ;
    *  RESULTS
    DY  =  EXCO RES1 UY  ;
    DYABS  =  ABS  DY  ;
    DYMAX  =  MAXIMUM  DYABS  ;
    MESS  ' MAXIMUN FLECHE IN METERS (F=1000N)  :  '  DYMAX  ;

    *  DEFORMED
    DEF0  =  DEFO  L1  RES1  0.  VERT  ;
    DEF1  =  DEFO L1  RES1   RED  ;
    OEIL1  =  0.   0.   1000.  ;
    TRAC  OEIL1   (DEF0  ET  DEF1)  ;

    FIN  ;

    GO UP



    Comments

    OPTI  DIME  3  ELEM  SEG2  OPTI  TRID  ;
    Necessary dimension to work with elements of the putre type is 3   (three-dimensional option of calculation).
    P1  =  0.  0.  0.  ;
    P2  =  LON1  0.  0.  ;
    L1  =  D  10  P1  P2  ;
    The geometry is described by a line L1 divided into 10 elements equal length.
    MOD1  =  MODEL  L1  MECANIQUE  ELASTIQUE ISOTROPE  POUT  ;
    MAT1  =  MATER  MOD1  YOUN  YOP  NU  NUP  RHO  RHOP  ;
    CAR1  =  CARAC  MOD1  SECT  S1  INRY  IY  INRZ  IZ  TORS  IG  ;
    MATTOT  =  MAT1  ET  CAR1  ;
    Object MOD1 of the type NMODEL defines a law of mechanical behavior elastic  and assigns to the grid L1 elements of the putre type.
    Material MAT1 defines the  properties of material.
    The characteristics of CAR1 supplement the given  geometrical ones not being able to result from the grid.
    MAT1 and CAR1 are  gathered in the same object. It is possible to create them simultaneously but the reading of the data is some weighed down.
    CL1  =  BLOQ  DEPLA  ROTA  P1  ;
    The point P1 is embedded. All its displacements and rotations are blocked; it is not necessary to associate the vector q with the vector second member of the equation bus q is put at zero per defect.
    FOR1  =  FORCE  FY  AMPF  P2  ;
    The second member of the equation is defined by the field by point created by FORCE. One applies here a force of  component FY and amplitude AMPF. One could also have written:
    RIGI1  =  RIGI  MOD1  MATTOT  ;
    RIG1  =  RIG1  ET  CL1  ;
    One builds the matrix of rigidity starting from the model and his characteristics. One associates then the matrix of clocage C (CL1) to the matrix of rigidity.
    RES1  =  RESO  RIG1  FOR1  ;
     One résoud the system K.u  = F object RES1 is of type CHPOINT, it contains the displacements u
    DY  =  EXCO  RES1  UY  ;
    DYABS  =  ABS  DY  ;
    DYMAX  =  MAXI  DYABS  ;
    MESS 'FLECHE  MAXIMALE  EN   METRES  (F=1000N)  :  'DYMAX  ;
    One creates the standard field DY in the same way than RES1 by extracting component UY with operator EXCO. One creates then field DYABS starting from the absolute DY values with the operator ABS One extracts then the maximum value from field DYABS with the MAXI operator.
    One could have written directly DYMAX = MAXI (ABS DY) to obtain the maximum absolute value of the field DY.
    DEFO  =  DEFO  L1  RES1  0.  VERT  ;
    DEF1  =  DEFO  L1  RES1  ROUGE  ;
    OEIL1  =  0.  0.  1000.  ;
    TRAC  OEIL1  (DEFO  ET  DEF1)  ;
    Operator DEFO(RME) allows to build the deformation of a structure starting from the initial geometry and of the field of displacements. It is possible to specify the color or the factor of amplification. Here DEF0 is affected of a factor 0 in order to visualize the not deformed structure. To visualize the two objects of the type DEFORME, one uses directive TRAC by specifying the point of view of OEIL1 according to which one must trace the deformations.

     
    GO UP




     

    Modal analysis

    To carry out a modal analysis, operator VIBR(ATION) is used. We will calculate the first two clean modes of a square plate embedded on a side in order to illustrate the use of this operator.

    GO UP



    Facts of the case

    GO UP



    Data file

    OPTI  DIME  3  ELEM  QUA4  ;

    A1  =  0.4  ;  PI  =  3.1415927  ;

    *  MESH
    P1 =  0.   0.   0.  ;  P2  =  0.   A1  0.  ;
    VEC1  =  A1  0.   0.  ;
    L1  =  D  12  P1  P2  ;
    S1  =  L1  TRAN  12  VEC1  ;

    *  MATERIAL MODEL AND PROPRIETES
    MOD1  =  MODEL  S1  MECANIQUE  ELASTIQUE  COQ4  ;
    MAT1  =  MATER  MOD1  YOUN  7.E10  NU  0.3 RHO  4200.  ;
    CAR1  =  CARAC  MOD1  EPAI  0.006  ;
    MATTOT  =  MAT1  ET  CAR1  ;

    * BOUNDARY CONDITIONS
    CL1  =  BLOQ  DEPLA  ROTA  L1  ;

    *  MATRICES OF RIGIDITE AND MASS
    RIG1  =  RIGI  MOD1  MATTOT  ;  RIG1  =  RIG1 ET  CL1  ;
    MAS1  =  MASS  MOD1 MATTOT  ;

    *  CALCULATION OF THE MODES
    TAB1  =  VIBR  INTER  0.   100.  MAS1  RIG1  IMPR  TBAS  ;
    TAB2  =  TAB1.modes  ;
    *  Results
    F1  =  (TAB2.1).frequence  ;
    F2  =  (TAB2.2).frequence  ;
    MESS  ' FREQUENCY 1  (HZ)  : '  F1  ;
    MESS  ' FREQUENCY 2  (HZ)  : '  F2  ;

    *  Trace Modal Deformees
    DEP1  =  (TAB2.1).deformee_modale  ;  DEF1  =  DEFO  DEP1  S1  1.  RED  ;
    DEP2  =  (TAB2.2).deformee_modale  ;  DEF2  =  DEFO  DEP2  S1  1.   GREEN  ;
    DEF0  =  defo  DEP1  S1  0.  ;
    TITRE  ' Deformees modal  (MODE 1) '  ;
    TRAC  (DEF0 ET  DEF1)  ;
    TITRE  ' Deformees modal  (MODE 2) '  ;
    TRAC  (DEF0  ET  DEF2)  ;

    END;

    GO UP



    Comments

    TAB1  =  VIBR  INTER  0.  100.  MAS1  RIG1  IMPR  TBAS  ;
    TAB2  =  TAB1.modes  ;
    Operator VIBR seeks the values and clean modes of the system : K - w2.M = 0  (here K=RIG1 and M=MAS1).
    Option INTER(VALLE) calculates the clean modes  whose frequencies are sontenues in a given interval (here [ 0., 100. ]). Key word IMPR indicates that messages of calculation will be displayed during the course of the procedure.
    Key word TBAS indicates that object TAB1 will be of type TABLE  and of sub-type BASE_MODALE (if not it would be of SOLUTION type).

    Organization of the table of sub-type BASE_MODALE:


    To simplify the postprocessing of the results, one creates TAB2 which contains table TAB1.MODES. It will have for sub-type BASE_DE_MODES and indices: MAILLAGE and IMOD (whole varying from 1 with the number of calculated modes).

    F1  =  (TAB2.1).frequence  ;
    F2  =  (TAB2.2).frequence  ;
    MESS  'FREQUENCE 1  (HZ)  :  'F1  ;
    MESS  'FREQUENCE 2  (HZ)  :  'F2  ;
    TAB2.1 is a table of sub-type MODE. One extracts here the frequency from mode 1: (TAB2.1).frequence.
    TAB2.2 is in the same way standard than TAB2.1 .
     

    DEP1 =  (TAB2.1).deformee_modale  ;  DEF1  =  DEFO  DEP1  S1  1.  ROUGE  ;
    DEP2  =  (TAB2.2).deformee_modale  ;  DEF2  =  DEFO  DEP2  S1  1.  VERT  ;
    DEFO  =  defo  DEP1  S1  0.  ;
    TAB2.1 deformee_modale is a CHPOINT representing the clean vector of mode1. One then uses it with operator DEFO as in the preceding example (linear calculation).
     

    GO UP



    Processing of the results

    It proves to be essential to treat the results of an analysis carried out with CASTEM 2000, these results being contained in objects of the type CHPOINT (analyzes static linear) or of SOLUTION type (analyzes modal). This processing allows the calculation of derived sizes easier to apprehend or a visualization for a better interpretation of the results. Two groups of operators are available to this effect, one being reserved with the postprocessing of the data and the other with the chart. It is then possible to back up the results in order to restore them in later calculations.

    Go to Contents



    Operators of post processing

    After a linear static calculation, the result is a field of displacement contained in an object of the type CHPOINT. According to problems', it is necessary to calculate the deformation or stress fields. One uses for this purpose operators SIGMA and EPSI which respectively calculate the tensors of constraints and deformations starting from the field of displacements. One can also calculate the equivalent constraints of Von Mises (operator VMIS), the equivalent constraints of Tresca (operator VERY) or the principal constraints (operator PRIN). One can calculate the reactions on the level of blockings (operator REAC).

    Example :
    SIG1  =  SIGM  MOD1  (MAT1  ET  CAR1)  RES1  ;
    CALSUP  =  CALP  SIG1  CAR1  MOD1  SUPE  ;  EPS1  =  EPSI  MOD1  RES1  CAR1  ;
    VMIS1  =  VMIS  MOD1  SIG1  CAR1  ;
    TRES1  =  TRES  MOD1  SIG1  CAR1  ;
    PRIN1  =  PRIN  SIG1  MOD1  CAR1  ;
    REAC1  =  REAC  RIG1  RES1  ;
    Operator SIGM(A) calculates a stress field SIG1 (standard MCHAML) starting from the field of displacements RES1. He requires the data of the model (MOD1) and the material and geometrical characteristics of model (MAT1 and CAR1). The calculated constraints can be efforts or constraints generalized according to types of elements operator CALP (ACLcul in Skin) calculates a stress field (or deformations) within the meaning of the continuous mediums i.e. local constraints (here in higher skin). Operator EPSI calculates a field of deformations EPS1 (standard MCHAML) starting from the field of displacement RES1. He requires the data of the model (MOD1) and the geometrical characteristics of model    (CAR1). Just as for the constraints, according to the type of elements, the reference mark varies and the deformations can be generalized or relative deformations. There are also operators making it possible to handle the objects of the type CHPOINT or MCHAML.
         EXCO: extract one or more components of a field.
         MAXIMUM, MINI: determine the maximum or minimal value of a field.
         EXTR: extract the numerical value of a component of a field in a precise point.
         REDU: reduced the support of a field, several criteria are possible.
         RTEN: calculate the tensor of the constraints in a new reference mark (for certain types of elements).
         RESU: calculate the resultant of an object of the type CHPOINT.
         XTX: calculate the standard of a field.

    Without forgetting the operators of calcul + - * **...

    GO UP



    Graphs

    There are two directives to trace the results:
    - DESS(IN): allows to draw curves contained in objects of the EVOLUTION type
    - TRAC(ER): allows to visualize several types of objects (grids, isovaleurs, deformations, vectors, drawings animated)

    The following example illustrates the uses of directive TRAC. It is about a square plate pressed on its edges (same geometrical and material data that the problem of the paragraph 8.3 Analyse modal). A pressure of 1 bar is applied to the plate.

    GO UP



    Data files

    OPTI  DIME  3  ELEM  QUA4  ;

    *  DATA
    A1  =  0.4  ;  PI  =  3.1415927  ;
    PRES1  =  -1.E5  ;

    *  MESH
    P1  =  0.   0.   0. ;  P2  =  0.   A1  0.  ;
    VEC1  =  A1  0.   0.  ;  LL1  =  D  12  P1  P2  ;
    S1  =  LL1  TRAN  12  VEC1  ;  L1  L2  L3  L4  =  COTE  S1  ;

    *  MATERIAL MODEL AND PROPRIETES
    MOD1  =  MODEL  S1  MECANIQUE  ELASTIQUE  COQ4  ;
    MAT1  =  MATER  MOD1  YOUN  7.E10  NU  0.3  RHO  4200.  ;
    CAR1  =  CARAC  MOD1  EPAI  0.006  ;
    MATTOT  =  MAT1 ET  CAR1  ;

    *  BOUNDARY CONDITIONS
    CL1  =  BLOQ  DEPLA  L1  ;  CL2  =  BLOQ  DEPLA  L2  ;
    CL3  =  BLOQ  DEPLA  L3  ;  CL4  =  BLOQ  DEPLA  L4  ;
    CLTOT  =  CL1  ET  CL2  ET  CL3  AND  CL4  ;

    *  APPLICATION OF THE LOADING
    CHAR1  =  PRES  COQUE  MOD1  PRES1  DIRE  (0.  0.   1.)

    *  MATRICES OF RIGIDITE AND MASS
    RIG1  =  RIGI  MOD1  MATTOT  ;  RIG1  =  RIG1  ET  CLTOT  ;
    MAS1  =  MASS  MOD1  MATTOT  ;

    *RESOLUTION
    RES1  =  RESO  RIG1  CHAR1  ;

    *  POSTPROCESSING
    * - - - - - - -- - - - CONSTRAINTS -----------*
    ***********************************
    SIG1  =  SIGM  MOD1  MATTOT  RES1  ;
    VEC1  =  1.   0.   0.  ;
    VEC2  =  0.   1.   0.  ;
    SIG2  =  RTEN  SIG1  MOD1  VEC1  VEC2  ;
    CALSUP  =  CALP  SIG2  CAR1  MOD1  SUPE  ;

    * - - - - - TRACE OF L STATE DEFORME -----*
    ***********************************
    DEF0  =  DEFO  RES1  S1  0.  ;
    DEF1   =  DEFO  RES1  S1  ROUGE  ;
    OEIL1  =  100 .  -200.  50  ;
    TRAC  OEIL1  (DEF0  ET  DEF1)  TITRE  ' STATE DEFORME'  ;
    ZZ1  =  EXCO  UZ  RES1  ;
    OPTI  ISOV  LINE  ;
    OEIL2  =  0.   0 .  100. ;
    TRAC  OEIL2  S1  ZZ1  TITRE  ' DISPLACEMENT UZ '  ;

    * - - -- - - - - TRACE D ISOVALEURS -------*
    ***********************************
    OPTI  ISOV  SURFACES  ;
    CALSUPX  =  EXCO  SMXX  CALSUP  ;
    TRAC  OEIL1  MOD1  CALSUPX  S1  TITRE   ' SMXX '  ;
    CAL1  =  CHAN  CHPO  MOD1  CALSUP  ;  CALX  =  EXCO  SMXX  CAL1  ;
    TITRE  ' CONSTRAINT OF SKIN SMXX, FACE SUPERIEURE '  ;
    TRAC  OEIL1  CALX  S1  ;
    CALY  =  EXCO  SMYY  CAL1  ;
    TITRE  ' CONSTRAINT OF SKIN SMYY ON DEFORME, FACE SUPERIEURE '  ;
    TRAC  OEIL1  CALY  DEF1  S1  ;

    * - - - - - TRACE OF VECTOR REACTION ---*
    ***********************************
    REA1  =  REAC  RES1  RIG1  ;
    VECT1  =  VECT  REA1  2.E-5  FX  FY  FZ  ROUGE  ;
    TRAC  OEIL1  VECT1  S1  ;
    END  ;

    GO UP



    Comments
     

    * - - - - - TRACE OF L STATE DEFORME -----*
    ***********************************
    DEF0  =  DEFO  RES1  S1  0.  ;
    DEF1   =  DEFO  RES1  S1  ROUGE  ;
    OEIL1  =  100 .  -200.  50  ;
    TRAC  OEIL1  (DEF0  ET  DEF1)  TITRE  ' STATE DEFORME'  ;
    ZZ1  =  EXCO  UZ  RES1  ;
    OPTI  ISOV  LINE  ;
    OEIL2  =  0.   0 .  100. ;
    TRAC  OEIL2  S1  ZZ1  TITRE  ' DISPLACEMENT UZ '  ;
    One can give to directive TRAC arguments of the type DEFORME.
    One can also represent the isovaleurs of a field by points (here ZZ1), it is then necessary to specify the object of the MAILLAGE type on which the field is based (here S1).
    One specifies the shape of the isovaleurs in directive OPTI (here LINE).

    * - - -- - - - - TRACE D ISOVALEURS -------*
    ***********************************
    OPTI  ISOV  SURFACES  ;
    CALSUPX  =  EXCO  SMXX  CALSUP  ;
    TRAC  OEIL1  MOD1  CALSUPX  S1  TITRE   ' SMXX '  ;
    CAL1  =  CHAN  CHPO  MOD1  CALSUP  ;  CALX  =  EXCO  SMXX  CAL1  ;
    TITRE  ' CONSTRAINT OF SKIN SMXX, FACE SUPERIEURE '  ;
    TRAC  OEIL1  CALX  S1  ;
    CALY  =  EXCO  SMYY  CAL1  ;
    TITRE  ' CONSTRAINT OF SKIN SMYY ON DEFORME, FACE SUPERIEURE '  ;
    TRAC  OEIL1  CALY  DEF1  S1  ;
    The isovaleurs are defined by surfaces.
    Object CALSUPX is of type MCHAML. One extracts one from his somposantes to represent his isovaleurs. It is necessary to specify the object NMODEL on which is pressed the field by elements.
    Object CALX is a CHPOINT, one traces it same manner that ZZ1.
    One can also trace a field on the deformed state, it is then necessary to specify the object of the type DEFORME (here DEF1).

    * - - - - - TRACE OF VECTOR REACTION ---*
    ***********************************
    REA1  =  REAC  RES1  RIG1  ;
    VECT1  =  VECT  REA1  2.E-5  FX  FY  FZ  ROUGE  ;
    TRAC  OEIL1  VECT1  S1  ;
    END  ;
    One calculates the reactions to the supports with REAC. One builds then the object of the VECTEUR type starting from the components of field REA1.
    Operator TRAC also allows to represent an object of the VECTOR type, which is superimposed on the object of the type GRID (S1).

    GO UP



    Traditional errors

    When CASTEM 2000 meets an error in the continuation of the instructions, it stops its execution and displays the error message relating to the recognized error. This message can break up into three parts:
    - the name of the operator where the error is recognized (first line of the message),
    - missing or misused objects followed by their type and their name (intermediate lines),
    - data of the followed ordering of their type (two last lines).
    In fact generally the two last lines of the error message make it possible to the user to recognize the nature of its error.
    This chapter does not aim to draw up an exhaustive list of the messages errors, it presents simply the most current errors. We will not be able to advise too much with the user of always attentively reading the last lines of the error message.

    Example :
    $  y1  =  4.
    $  P1  =  x1  y1  :
    ****  ERREUR  11  *****  dans l'opérateur =
    I1 y a un résultat de type ANNULE et de nom P1
    en trop par rapport aux noms à affecter
    Première ligne  =  données : deuxxième ligne =  type des données.
    4.                   P1                =         X1                  Y1
    FLOTTANT  ANNULE  MOT  FLOTTANT  FLOTTANT
         When a message of this type appears, it is advised to check if each open dimension were indeed closed.
    Example :
    $  mess  'Entree des points  ;
    $  obte  x1  ;  obte  y1  ;
    $  obte  x2  ;  obte  y2  ;
    $  P1  =  x1  y1  ;  P2  =  x2  y2  ;
    ****  ERREUR  3  *****  dans  l'opèrateur  =
    Une  directive  ne  peut  pas  faire  plus  9  cartes
    In this example, the user omitted the semicolon of the first instruction. The following line is thus regarded as the continuation of the data from where the cancellation of  P1 because this object is not known. The user can locate his error by reading the last line of the error message which puts at end the two instructions.
    Example :
    $  opti  dime  2  ;
    $  P2  =  1.  1.  1.  ;
    ****  ERREUR  11 *****  dans l'opérateur  =
    I1  y  a  un  résultat  de  type  FLOTTANT  et  de  nom
    en  trop  par  rapport  aux  noms  à  affecter
    Première  ligne  =  données  :  deuxime  ligne  =  type  des  données.
    1.                    1.                    1.
    FLOTTANT  FLOTTANT  FLOTTANT
    Here declared dimension is 2  whereas the point P2 is described by 3 coordinates.
    The error message is different from the precedent, it is only indicated that there are data in excess and it  is to the user to check if dimension corresponds well to the data which it re-enters.

    Example :
    $  opti  dime  2  elem  seg2  ;
    $  P1  =  0.  0.  ;  P2  =  1.  0.  ;
    $  L1  =  D  4  P1  P2  ;
    $  MODL1  =  MODE  L1  MECANIQUE  ELASTIQUE  POUT  ;
    ****  ERREUR  11  *****  dans l'opérateur  =
    I1 y a un résultat de type MOT et de nom POUT
    en  trop  par  rapport  aux  noms  à  affecter
    Première  ligne  =  données  :  deuxième  ligne  =  type  des  données.
    MODE  L1                MECANIQUE  ELASTIQUE  POUT
    MOT     MAILLAGE  MOT             MOT             MOT
    The program does not recognize word POUT whereas it is a key word indicating the type of elements of the type POUT are used in calculations TRID(imensional), they thus require a dimension of command 3. The user must  gifts always check if the various types of elements which it uses are compatible with the calculation mode and the dimension of space indicated in the options of calculation.
     

  • Type of finite elements

  •  

     

     Example :
    $  opti  dime  2  elem  seg2  ;
    $  P1  =  0.  0.  ;  P2  =  1.  0.  ;
    $  L1  =  D  4  P1  P2  ;
    $  SUR1  =  l1  trans  6  (0.  1.)  ;
    ****  ERREUR  16  *****  dans l; opérateur TRAN
    Type d'élément incorrest
    Première ligne  =  données  :  deuxième  ligne  =  type  des  données.
    L1                   TRANS   6               #1
    MAILLAGE  MOT       ENTIER  POINT
    Operator TRAN must create a surface whereas the type of necessary finite elements is SEG2. The error message is explicit and indicates to the user that it  must modify the type of his elements.

    Go to Contents

    Mechanical calculations

    The objective of this chapter is to present various mechanical calculation cases in order to highlight the sequence of the various stages.


    Standard loading actual weight

    We will take again the example of the embed-free beam of paragraph 7.2 (analyzes static linear), this time the beam will be subjected to its actual weight. Indeed, there does not exist of operator specific to this type of loading, there is thus necessary to include/understand how to represent it in an equivalent way with CASTEM 2000.

    GO UP



    Facts of the case

    GO UP



    Data file

    OPTI  DIME  3  ELEM  SEG 2  MODE  TRID  ;
    * - - - - - - - - - - - - -- - - - - DATA --------------------*
    LON1  =  1.  ;
    DIA1  =  0.1  ;
    RHOP  =  7800.  ;
    NUP  =  0.3  ;
    YOP  =  2.1E11  ;
    * - - - - - - CALCULATION OF THEGEOMETRICAL DATA -------*
    S1  =  PI*(DIA1**2)/4.  ;
    IY =  PI*(DIA1**4)/64.  ;
    IZ  =  IY  ;
    IG  =  PI*(DIA1**4)/32.  ;
    * - - - - - - - -- - - - - - - - - GEOMETRIE ------------------*
    P1  =  0.   0.   0.  ;
    P2  =  LON1  0.   0.  ;
    L1  =  D  10  P1  P2  ;
    * - - - - DEFINITION OF THE MODEL AND THE MATERIAL -----*
    MOD1  =  MODEL  L1  MECANIQUE  ELASTIQUE  ISOTROPE  POUT  ;
    MAT1  =  MATER  MOD1  YOUN  YOP NU  RHO  RHOP  ;
    CAR1  =   CARAC  MOD1  SECT  S1  INRY  IY  INRZ  IZ  TORS  IG  ;
    MATTOT  =  MAT1  AND  CAR1  ;
    * - - -- - - - - - - - - - CONDITIONS LIMIT -------------*
    CL1  =  BLOQ  DEPLA  ROTA  P1  ;
    * - - - - - - - - - - - - - - - - - LOADING-----------------*
    MAS1  =  MASS E MOD1  MATTOT  ;
    CHP1  =  MANU  CHPO  L1  1   UY  -9.81  ;
    CHA1  =  MAS1*CHP1  ;
    * - - - - - - - - - - - - - - TRACE OF THE VECTOR --------------*
    VEC1  =  VECT  CHA1  1.E-3  FX  FY  FZ  ROUG  ;
    OEIL1  =  0.   0.   1000.  ;
    TRAC  OEIL1  VEC1  L1  TITRE  ' VECTOR WEIGHT PROPRE'  ;
    * - - - - - - - - - - - - - MATRIX OF RIGIDITE ------------*
    RIG1  =  RIGI  MOD1  MATTOT  ;
    RIG1  =  RIG1  ET  CL1  ;
    * - - - - - - - - - - - - - -- - - -RESOLUTION  ----------------*
    RES1  =  RESO  RIG1  CHA1  ;
    * - - - -- - - - - - - - - - - - - - - RESULTS ----------------*
    DY  =  EXCO  RES1  UY  ;
    DYABS  =   ABS   DY  ;
    DYMAX  =  MAXI  DYABS  ;
    MESS  ' FLECHE MAXIMALE  EN  METERS  :'  DYMAX  ;
    * - - - - - - - - - - - - - - - - - - - - DEFORMEE----------------*
    DEF0  =  DEFO  L1  RES1  0.   VERT  ;
    DEF1  =  DEFO  L1  RES1  ROUGE  ;
    TITRE  ' DEFORMEE UNDER WEIGHT PROPRE'  ;
    TRAC  OEIL1  (DEF0 ET  DEF1)  ;
    FIN;

    GO UP



    Comments

    Example :
    MAS1  =  MASSE  MOD1  MATTOT  ;
    CHP1  =  MANU  CHPO  L1  1  UY  -9.81  ;
    CHA1  =  MAS1*CHP1  ;
    The actual force of weight (CHA1) is calculated by multiplying the mass by acceleration (F = M.a). One thus builds the matrix of mass MAS1 to the assistance the operator MASSES by specifying the model (MOD1) and characteristics (MATTOT). One then manually creates the field of acceleration CHP1 using operator MANU CHPO by specifying the grid support (L1), the number of components (1), the name of components (UY) and the value (-9.81). One then        multiplies the matrix of mass by the field of acceleration what allows the loading within the meaning of finite elements.
    GO UP

    Axisymmetric calculation

    We will calculate a spherical hull charged by a pressure interns uniform. To simplify the problem which is symmetrical around the three axes, one carries out calculation in 2D by netting only the quarter of a circle, in axisymmetric mode.

    GO UP



    Facts of the case


    GO UP



    Data file

    OPTI  DIME  2  ELEM  SEG2 MODE  AXIS  ;
    * - - - - - - - - - - - - -- - - - - - - - DATA ---------------------*
    PRES1  =  1.E5  ;
    RAY1  =  2.  ;
    EPA1  =  0.01  ;
    NUP  =  0.3  ;
    YOP  =  2.1E11  ;
    * - - - - - - - - - - - - -- - - - - - - GEOMETRIE --------------------*
    P0  =  0.   0. ;
    P1  = 0.  RAY1 ;
    P2  =  RAY1  0.  ;
    L1  =  C  24  P1  P0  P2 ;  TRAC  L1  ;
    * - - - - - -DEFINITION OF THE MODEL AND THE MATERIAL --------*
    MOD1  =  MODEL  L1 MECANIQUE ELASTIQUE  ISOTROPE  COQ2  ;
    MAT1  =  MATER  MOD1  YOUN  YOP  NU  NUP  ;
    CAR1  =  CARAC  MOD1  EPAI  EPA1  ;
    MATTOT  =  MAT1 ET  CAR1  ;
    * - - - -- - - - - - - - - - CONDITIONS LIMIT -----------------*
    CL1  =  SYMT  DEPLA  P1  P0  L1  1.E-4  ;
    CLR1  =  SYMT  ROTA  P1  P0  L1  1.E-4  ;
    CL2  =  SYMT  DEPLA  P2  P0  L1  1.E-4  ;
    CLR2  =  SYMT  ROTA  P2  P0  L1  1.E-4  ;
    CLTOT  =  CL1  ET  CLR1  ET  CL2  ET  CLR2  ;
    * - - - - - - - - - - - - - - - - - -LOADING ---------------------*
    CHA1  =  PRESS  COQUE  MOD1 PRES1  NORM  ;
    VEC1  =  VECT  CHA1  5.E-6   FR  FZ  ROUGE  ;
    TRAC   VEC1  L1  ;
    * - - - - - - - - -- - - - MATRIX OF RIGIDITE -----------------*
    RIG1  =  RIGI  MOD1  MATTOT  ;
    RIG1  =  RIG1 ET  CLTOT  ;
    * - - - - - - - - - - - - - - - - - -RESOLUTION ---------------------*
    RES1  =  RESO  RIG1  CHA1  ;
    * - - - - -RESULTS - - - - - - - - - - - - - - ---------------------*
    DUR  =  EXCO  RES1  UR  ;
    DURMAX  =  MAXI  (ABS DUR)  ;
    MESS  ' DILATION IN METERS : '  DURMAX  ;
    * - - - - - - - - - - - - - - - - - - - DEFORMEE----------------------*
    DEF0   =   DEFO  L1  RES1  0.  VERT  ;
    DEF1  =  DEFO  L1  RES1  ROUGE  ;
    TITRE  '  DEFORMEE UNDER INTERNAL PRESSURE of ' PRES1' Pa'  ;
    TRAC  (DEF0 ET  DEF1)  ;
    FIN  ;

    GO UP



    Comments

    E = 2.1011 Pa

    OPTI  DIME  2  ELEM  SEG2 MODE  AXIS  ;
    The option AXES MODE specifies that calculation is carried out in axisymetry. The X-coordinates correspond to the radial axis Ur and the ordinates with the axis of axisymetry Ux. The degrees of freedom of freedom are indicated by UR, UZ and RT (respectively radial, axial displacements and rotations).
    CL1  =  SYMT  DEPLA  P1  P0  L1  1.E-4  ;
    CLR1  =  SYMT  ROTA  P1  P0  L1  1.E-4  ;
    CL2  =  SYMT  DEPLA  P2  P0  L1  1.E-4  ;
    CLR2  =  SYMT  ROTA  P2  P0  L1  1.E-4  ;
    CLTOT  =  CL1  ET  CLR1  ET  CL2  ET  CLR2  ;
    To deal with this problem, one studies only one quadrant: one must consequently  write limiting conditions relating to symmetry in the plan. Axial symmetry is  automatically taken into account by the axisymmetric mode of calculation. Operator SYMT allows to impose conditions of symmetry on the degrees of freedom of freedom concerned of the geometry L1 compared to the plan defined by the points (P1, P0) then (P2, P0). One could also have written the limiting conditions following:
    CL1  =  BLOQ  UR  RT  P1  ;
    CL2  =  BLOQ  UZ  RT  P2  ;
    CLTOT  =  CL1  ET  CL2  ;

    CHA1  =  PRESS  COQUE  MOD1 PRES1  NORM  ;
    Operator PRESS allows to calculate the nodal loading due to a compressive  force. He is followed here key word COQUE to indicate that the pressure is pressed  on elements of hulls. One must also specify the model (MOD1) on which is applied  the pressure, the value of this pressure (PRES1) and the direction of the pressure  (NORM) which is here normal on the surface and directed according to the positive normal with the element.

    GO UP

    Dynamic calculation step by step

    We will calculate the response of a beam subjected to a variable loading in the course of time. To solve the dynamic equation, one uses a procedure based on the algorithm of centered Newmark.

    GO UP



    Facts of the case

    GO UP



    Data file

    OPTI  DIME  3  ELEM  SEG2  MODE  TRID  ;
    * - - - - - - - - - - - - -- - - - - - - - DATA ---------------------*
    AMP1  =  -100000.  ;
    LON1  =  50  ;
    SEC1  =  1.  ;
    IY1  =  10  ;
    IZ1  =  10  ;
    NUP  =  0.3  ;
    YOP  =  2.1E11  ;
    RHOP   =  1 000.  ;
    RAID1  =  5.E8  ;
    * - - - - - - - - - - - - - - - - - - - -GEOMETRIE --------------------*
    P1  =  0.   0.   0.  ;
    P2  =  LON1  0.   0.  ;
    L1  =  D  4  P1  P2  ;  TRAC  L1  ;
    * - - - - - - DEFINITION OF THE MODEL AND THE MATERIAL --------*
    MOD1  =  MODEL  L1  MECANIQUE  ELASTIQUE  POUT  ;
    MAT1  =  MATER  MOD1  YOUN  YOP  NU  NUP   RHO  RHOP  ;
    CAR1 =  CARAC  MOD1  SECT  SEC1  INRY  IY1  INRZ  IZ1
                    TORS  1.   VECT  (0.  1.   0.)  ;
    MATTOT  =  MAT1   ET  CAR1  ;
    * - - - - - - - - - - - - - - CONDITIONS LIMIT-----------------*
    CL1  =  PPUI  UY  RAID1   P1  ;
    CL2  =  BLOQ  L1  UX  UZ  RX  RY  ;
    CL3  =  APPUI  UY  RAID1  P2  ;
    CLTOT  =  CL1  ET   CL2  ET CL3  ;
    *- - - - - - - MATRICES OF RIGIDITE AND MASS ----------*
    RIG1  =  RIGI  MOD1  MATTOT  ;
    RIG1  =  RIG1  ET  CLTOT  ;
    MAS1  =  MASS  MOD1   MATTOT  ;
    * - -- - - - - - - - - - TEMPORAL EVOLUTION -----------------*
    LIS1  =  PROG  0.   1.   1.025  3.025  ;
    LIS2  =  PROG  0.   1.   0.   0.  ;
    EVT1  =  EVOL  MANU  T  LIS1  G(T)  LIS2  ;
    * - - - - - - - - - - - - - - - - - LOADING----------------------*
    FOR1  =  FORCE  FY  AMP1   L1  ;
    CHA1  =  CHAR  FORC  FOR1  EVT1  ;
    VEC1  =  VECT  FOR1  1.e-4  FX  FY  FZ  ROUGE  ;
    TRAC  VEC1  L1  ;
    * - -- - - - - - - - - - - - - DATA TABLE ------------------*
    TAB2  =  TABLE  ;
    TAB2.CHAR  =  CHA1  ;
    TAB2.RIGI  =  RIG1  ;
    TAB2.MASS  =  MAS1  ;
    TAB2.FREQ  =   20  ;
    TAB2.INST  =  PROG  0.  PAS  1.25E-2  3.  ;
    TAB2.DEPL  =  MANU  CHPO  L1  3  UX  0.   UY  0.   UZ  0.  ;
    TAB2.VITE  =  MANU  CHPO  L1  3  UX 0.   UY  0.   UZ  0.  ;
      * - - - - - - - - - - - - - RESOLUTION STEP TO STEP ----------------*
    TAB1  =  DYNAMIC  TAB2  ;
    * - - - - - - - - - - - - - - - - - -RESULTS ----------------------*
    LT  =  PROG  ;  LUY1  =  PROG  ;
    LUY2  =  PROG  ;   LUY3  =  PROG  ;
    P3  =  L1  POIN  3  ;
    I  =  0  ;
    NBB  =  (DIME  TAB2.INST)  -  1  ;
    REPETER  BOUC1  NBB  ;
    I  =  I  +  1  ;
    LT  =  LT  ET  (PROG  (TAB1.I.TEMP))  ;
    DEP1  =  TAB1.I.DEPL  ;
    LUY1  =  LUY1  ET  (PROG  (EXTR  DEP1  UY  P1))  ;
    LUY2  =  LUY2  ET  (PROG  (EXTR  DEP1  UY  P2))  ;
    LUY3  =  LUY3  ET  (PROG  (EXTR  DEP1  UY  P3))  ;
    FIN  BOUC1  ;
    EVY1  =  EVOL  MANU  ' TEMPS'   LT  ' UY(P1) '  LUY1  ;
    EVY2  =  EVOL  MANU  ' TEMPS'   LT  ' UY(P2) '  LUY2  ;
    EVY3   =  EVOL  MANU  'TEMPS'   LT  ' UY(P3) '  LUY3  ;
    DESS  EVY1  TITR  ' UY POINT P1 '  MIMA  ;
    DESS  EVY2  TITR  ' UY POINT P2 '  MIMA  ;
    DESS  EVY3  TITR  ' UY POINT P3 '  MIMA  ;
    * -- - - - - - - - - - - - - - - - - - DEFORMEE ----------------------*
    DEP1  =  TAB1.   80  DEPL  ;
    DEF0  =  DEFO  L1  DEP1  0.  VERT  ;
    DEF1  =  DEFO  L1  DEP1  ROUGE  ;
    TITRE  ' DEFORMEE TIME  T=1  I=80  '  ;
    TRAC  (DEF0 ET DEF1)  ;
    FIN  ;

    GO UP



    Commentaires
     

    LIS1  =  PROG  0.   1.   1.025  3.025  ;
    LIS2  =  PROG  0.   1.   0.   0.  ;
    EVT1  =  EVOL  MANU  T  LIS1  G(T)  LIS2  ;
    FOR1  =  FORCE  FY  AMP1   L1  ;
    CHA1  =  CHAR  FORC  FOR1  EVT1  ;
    Operator CHAR(GEMENT) creates an object of the LOADING type which contains  space description f(x, y, z) (contained in the field by points FOR1) and the  temporal description g(t) (contained in evolution EVT1) of the loading F(xl, y, Z, t) such as F = f(x, y, z).g(t).
    TAB2  =  TABLE  ;
    TAB2.CHAR  =  CHA1  ;
    TAB2.RIGI  =  RIG1  ;
    TAB2.MASS  =  MAS1  ;
    TAB2.FREQ  =   20  ;
    TAB2.INST  =  PROG  0.  PAS  1.25E-2  3.  ;
    TAB2.DEPL  =  MANU  CHPO  L1  3  UX  0.   UY  0.   UZ  0.  ;
    TAB2.VITE  =  MANU  CHPO  L1  3  UX 0.   UY  0.   UZ  0.  ;
    TAB1  =  DYNAMIC  TAB2  ;
    The arguments of input and output of procedure DYNAMIC are gathered in tables.
    The various indices of the table of input (TAB2) are:
    GO UP



    Thermal calculations

    It is possible to make the following analogy between thermal calculation and mechanical calculation:

    From simple examples, we will introduce the various operators allowing to carry out thermal calculations.


    Calculation of the field of temperatures of a thick tube

    The following problem consists in calculating the field of temperatures in a thick tube subjected to a temperature imposed on its interior wall and to a flow on its external wall. The problem being with symmetry of revolution, calculation will be carried out in axisymmetric mode.

    GO UP



    Facts of the case

    GO UP



    Data file

    TITRE  ' THERMAL CALCULATION OF A TUBE '  ;
    OPTION  DIME  2  ELEM  QUA4  MODE  AXIS;
    OPTION  ECHO  0  ;  SAUT  LIGNE  ;
    *
    * - - - CREATION OF THE GEOMETRIE :
    *
    P1  =  0.05  0.;    P2 =  0 .2  0.    ;
    VEC1  =  0.   0.5  ;
    L1  =  D  10  P1   P2  ;
    SURF1 =  L1  TRANS  1  VEC1  ;
    TRAC  SURF1  ;
    *
    D1  =  COTE  4  SURF1  ;
    D3  = COTE  DIMENSION  2  SURF1  ;
    *
    * - - - FACTS OF THE CASE OF THERMICS :
    *
    * - - - MODELISATION :
    MOD1  =  MODL  SURF1 THERMIQUE  ISOTROPE  ;
    *
    * - - - CARACTERISTIQUES OF MATERIAL:
    MAT1  =  MATR  MOD1  K  130.  ;
    *
    * - - - MATRIX OF CONDUCTIVITE :
    COND1  =  CONDUCTIVITE  MOD1  MAT1  ;
    *
    * - - - BOUNDARY CONDITIONS :  TEMPERATURE IMPOSEES
    CL1  =  BLOQUE  T  D1  ;
    DCL1  =  DEPI  CL1  0.  ;
    *
    * - - - LOADING :  FLOW IMPOSES
    FLU1  =  FLUX  MOD1  100.   D3  ;
    *
    * - - - ASSEMBLY OF THE FIRST AND SECOND MEMBERS :
    CONTOT  =  COND1  ET  CL1  ;
    FLUTOT  =  DCL1  ET  FLU1  ;
    *
    * - - - RESOLUTION :
    CHTER1  =  RESOUDRE  CONTOT  FLUTOT  ;
    *
    * - - - POST PROCESSING
    *
    TITRE  ' FIELD OF TEMPERATURES '  ;
    TRAC  CHTER1  SURF1  ;
    *
    TETA2  =  EXTR  CHTER1  T  P2  ;
      TTHP2  = 0.213  ;
    MESS  ' TEMPERATURE THEORIQUE IN P2 :  ' TTHP2  ;
    MESS  ' TEMPERATURE CALCULEE IN P2 : ' TETA2  ;
    *
    * - - - END OF THE FILE
    FIN  ;

    GO UP



    Comments

    MOD1  =  MODL  SURF1 THERMIQUE  ISOTROPE  ;
    One defines an object of the type MMODE which is based on grid SURF1 and follows an isotropic thermal behavior.

    MAT1  =  MATR  MOD1  K  130.  ;
    One defines the field of material characteristics of model MOD1 by specifying conductivity K.

    COND1  =  CONDUCTIVITE  MOD1  MAT1  ;
    Operator COND(UCTIVITE) builds the matrix of conductivity of object MOD1. The object created COND1 is of type RIGIDITE.

    CL1  =  BLOQUE  T  D1  ;
    DCL1  =  DEPI  CL1  0.  ;
    To fix the limiting conditions, one uses the same operators as for mechanical calculations: the operator BLOQUE allows to fix the temperature T on part of the grid (right D1) by creating an object of the type RIGIDITE; operator DEPI specifies  the value of blocking CL1 by creating an object of the type CHPOINT. Object CL1 must be added to matrix of conductivity and object DCL1 must be added to the  loading.

    FLU1  =  FLUX  MOD1  100.   D3  ;
    The operator FLUX allows to impose a flow of value 100 on part of the contour of the structure defined in object MOD1 (right D3). the object created  FLU1 is of type CHPOINT.

    GO UP



    Tube subjected to a forced convection

    The objective of this example is to calculate the stabilized state of a transfer of heat with forced convection. It is about a tube whose interior wall is subjected to an imposed temperature and of which the wall external is subjected to a forced convection.

    GO UP



    Facts of the case
     

    GO UP



    Data file

    TITRE ' SUBJECTED TUBE A A CONVECTION FORCEE '  ;
    OPTION  DIME  2  ELEM  QUA4  MODE  AXIS  ;
    OPTION  ECHO  0  ;  SAUT  LIGNE  ;
    *
    * - - - CREATION OF THE GEOMETRIE :
    *
    P1  =  6.   0.  ;    P2   =  16.   0.  ;
    VEC1  =  0.   4.  ;
    *
     L1  =  D  8  P1  P2  ;
    SURF1  =  L1   TRANS  5  VEC1  ;
    TRAC  SURF1  ;
    *
    D1  =  COTE  4  SURF1  ;
    D3  =  COTE  2  SURF1  ;
    P3  =  SURF1  POIN  PROC  (16.  4.)
    *
    * - - - FACTS OF THE CASE OF THERMICS :
    *
    * - - -MODELISATION :
    *
    MOD1  =  MODEL  SURF1  THERMIQUE  ISOTROPE   ;
    MOD2  =  MODEL  D3  CONVECTION  ;
    *
    * - - - CARACTERISTIQUES OF MATERIAL :
    *
    MAT1  =  MATER  MOD1  K 8  .;
    MAT2  =  MATER  MOD2  H  5.  ;
    *
    * - - - MATRIX OF CONDUCTIVITE :
    *
    COND1  =  CONDUCTIVITE  MOD1  MAT1  ;
    COND2  =  CONDUCTIVITE  MOD2  MAT2  ;
    *
    * - - - BOUNDARY CONDITIONS:  TEMPERATURE IMPOSEES
    *
    CL1  =  BLOQUE  T  D1  ;
    DCL1  =  DEPI  CL1  100.  ;
    *
    * - - -EQUIVALENT FLOWS A CONVECTION :
    *
    FF1  =  CONVECTION  MOD2  MAT2  T  125.  ;
    *
    * - - - ASSEMBLY OF THE FIRST AND SECOND MEMBERS :
    *
    CONTOT  =  COND1  ET  COND2  ET  CL1  ;
    FLUTOT  =  DCL1  ET  FF1  ;
    *
    * - - -RESOLUTION :
    *
    CHTER1  =  RESOUDRE  CONTOT  FLUTOT  ;
    *
    * - - - POST  PROCESSING
    *
    TITRE  ' FIELD OF TEMPERATURES '  ;
    TRAC  CHTER1  SURF1  ;
    *
    TETA3  =  EXTR  CHTER1  T  P3  ;
    TTHP3  =  122.68  ;
    MESS  ' TEMPERATURE THEORIQUE IN P2 : '  TTHP3  ;
    MESS  ' TEMPERATURE CALCULEE IN P2 :'  TETA3 ;
    *
    * - - - END OF THE FILE  ;
    FIN  ;

    GO UP



    Comments

    MOD1  =  MODEL  SURF1  THERMIQUE  ISOTROPE   ;
    MOD2  =  MODEL  D3  CONVECTION  ;
    One defines two objects of the type MMODEL: the first is based on grid SURF1 and follows an isotropic thermal behavior; the second is pressed on the line D3 and allows to specify the behavior of convection on this side.

    MAT2  =  MATER  MOD2  H  5.  ;
    One defines the field of material characteristics of the model of convection MOD2 by specifying the coefficient of exchange H.

    FF1  =  CONVECTION  MOD2  MAT2  T  125.  ;
    To define the flow of convection, one uses operator  (CONV(ECTION) follow-up of the model and of the characteristics of convection, one also indicates the value of the ambient temperature.
    The following operations are similar to those of the preceding problem.

    GO UP



    Thermomechanical calculation

    It can be interesting to couple the heating effects with the mechanical effects. Indeed, in certain problems the fields of temperatures induce considerable thermal constraints, these constraints must thus be taken into account while being added to the mechanical constraints.

    The step of this type of calculation is the following one:

    The following example will illustrate the sequence of a thermomechanical calculation: it is about a structure subjected according to its sides to an imposed temperature and a convection forced with regard to the thermal loading; a pressure and an embedding constitute the mechanical loading.
    GO UP



    Facts of the case

    Thermal loading:

    Mechanical loading: Material characteristics:
    GO UP



    Data file

    TITRE  ' CALCULATION THERMO-MECANIQUE   ';
    OPTION  DIME  2  ELEM  QUA8 MODE  PLAN  CONT  ;
    OPTION  ECHO  0  ;  SAUT LIGNE  ;
    *
    * - - -CREATION OF THE GEOMETRIE :
    A  =  0.    0.  ;    B =  0 .6  0.  ;
    C  =  0.6  1.  ;    E  =  0.    1.  ;
    AB  =  D  6  A  B  ;
    BC  =  D  10  B  C  ;
    CE   =  D  6  C  E  ;
    EA  =  D  10  E  A  ;
    SURF1  =  DALL  AB  BC  CE   EA  PLAN  ;
    TRAC  SURF1  ;
    *
    * THERMAL CALCULATION ---------------------*
    *
    * - - - MODELISATION :
    MOD1  =  MODL  SURF1  THERMIQUE  ISOTROPE  ;
    MOD1  =  MODE  SURF1  THERMIQUE  ISOTROPE  QUA8  ;
    MOD2  =  MODE  (BC ET CE)  CONVECTION  ;
    *
    * - - - CARACTERISTIQUES OF MATERIAL :
    MAT1  =  MATR  MOD1  K 52.  ;
    MAT2  =  MATR  MOD2  H  750.  ;
    *
    * -- - BOUNDARY CONDITIONS :  TEMPERATURE IMPOSEES
    CL1  =  BLOQUE   T  AB  ;
    FCL1  =  DEPI  CL1  100.  ;
    *
    * - - - LOADING :  FLOW OF CONVECTION
    FLU1  =  CONV  MOD2  MAT2  T  0.  ;
    *
    * - - - MATRICES OF CONDUCTIVITE :
    COND1  =  COND  MOD1  MAT1  ;
    COND2  =  COND  MOD2  MAT2  ;
    CONDTOT  =  COND1  ET   COND2 ET  C L1  ;
    *
    * - - - ASSEMBLY OF THE SECOND MEMBER :
    FLUTOT   =  FCL1 ET  FLU1  ;
    *
    * - - - RESOLUTION :
    CHTER1  =  RESOU  CONDTOT  FLUTOT  ;
    *
    * - - - POST PROCESSING
    TITRE  ' FIELD OF TEMPERATURE (MAXI= ' (MAXI CHTER1)  ')  '  ;
    TRAC  CHTER1  SURF1  ;
    *
    * -----------CALCULATION MECANIQUE---------------------*
    *
    * - - - MODELISATION :
    MOD1  =  MODL  SURF1 THERMIQUE  ISOTROPE  ;
    MOD3  =  MODE  SURF1  MECANIQUE  ELASTIQUE  ISOTROPE  QUA8  ;
    *
    * - - - CARACTERISTIQUES OF MATERIAL  :
    MAT3  =  MATR  MOD3  YOUN  2.E11  NU  0.3  RHO  7800.   ALPH  1.e-5  ;
    *
    * - - - BOUNDARY CONDITIONS :
    CL3   =  BLOQ  DEPL  (AB ET CE)  ;
    *
    * - - - LOADING :  THERMICS AND PRESSURE
    SIGT3  =  THET  MOD3  CHTER1  MAT3  ;
    F3  =  BSIG  MOD3  SIGT3  ;
    PRES3  =  PRESSION  MASS  MOD3  100.E6  EA  ;
    CHAR3  =  F3  ET  PRES3  ;
    *
    * - - -RESOLUTION :
    RIG3  =  RIGI  MOD3  MAT3  ;
    RIGCL3  =  RIG3  ET  CL3  ;   DEP3  =  RESOU  RIGCL3  CHAR3  ;
    *
    * - - - POST PROCESSING
    * DEFORMEE
    DEF0 =  DEFO  SURF1  DEP3  0.  BLAN  ;
    DEF1  =  DEFO  SURF1  DEP3  ROUG  ;
    TITR  ' DEFORMEE AFTER LOADING THERMAL AND PRESSION '  ;
    TRAC  (DEF0 ET DEF1)  ;
    *
    *CALCULATION OF THE TOTAL CONSTRAINTS AND MECANIQUES
    SIGTOT3  =  SIGMA  MOD3  MAT3  DEP3  ;
    SIGM3  =  SIGTOT3  -  SIGT3  ;
    *
    S_XX   =  (EXCO  SMXX  SIGM3)/1.e6  ;
    TITR  ' CPNTRAINTES  S_XX  (MAXI=' (MAXI  S_XX)  'MPa ' ;
    TRAC  MOD3  S_XX  ;
    S_YY  =  (EXCO  SMYY  SIGM3)/1.e6  ;
    TITR  ' CONTRAINTES S_YY  (MAXI=' (MAXI  S_YY)  'MPa)'  ;
    TRAC  MOD3  S_YY  ;
    *
    * - - - END OF THE  FILE
    FIN  ;

    GO UP



    Comments

    SIGT3  =  THET  MOD3  CHTER1  MAT3  ;
    F3  =  BSIG  MOD3  SIGT3  ;
    PRES3  =  PRESSION  MASS  MOD3  100.E6  EA  ;
    CHAR3  =  F3  ET  PRES3  ;
    Operator THET(A) calculates the constraints associated with a chamo with temperatures. One thus associates with the mechanical model (defined by MOD3 and MAT3) the field of temperatures CHTER1 calculated during the first stage (with thermal models MOD1 and MOD2).
    Operator BSIG calculates the field of nodal forces resulting from integration from in stress field. The F3 object thus represents the field of thermal forces.
    Operator PRES(SION) calculates the nodal forces equivalent to a pressure. Keyword MASS specifies that the pressure is applied to solid elements.

    SIGTOT3  =  SIGMA  MOD3  MAT3  DEP3  ;
    SIGM3  =  SIGTOT3  -  SIGT3  ;
    Operator SIGM(A) calculates the stress field starting from the field of displacements DEP3 resulting from the thermal and mechanical loadings. Object SIGTOT3 thus represents the mechanical stress field (SIGM3), one withdraws the thermal constraints (SIGT3) from the total constraintes.

    We will not reconsider postprocessing where are traced the isovaleurs of the mechanical constraints.

    GO UP



    Nonlinear calculations

    We will present the use of the procedure PASAPAS which is the principal operator of nonlinear calculations of CASTEM 2000. This procedure can be used for nonlinear calculations of mechanics or thermics or of thermomechanical coupled calculations:
    - in mechanics it carries out an incremental nonlinear calculation. Nonthe linearity can come either from the material (plasticity), or of great displacements, or of both at the same time.
    - in thermics it carries out a linear and nonlinear calculation by taking account of conduction, the convection and the radiation.

    The example chosen to illustrate the use of PASAPAS is the calculation of a beam in inflection in elastoplastic behavior. The beam is embedded on a side and a bending force is exerted on the loose lead.

    Go to Contents



    Facts of the case

    GO UP



    Data file

    OPTION ECHO 0  ;
    TITRE  '  BEAM  IN  BENDING  '  ;
    OPTION  DIME  3  ELEM  SEG2  ;
    *
    * - - - -- - - - - - -DEFINITION OF THE GEOMETRIE--------------------*
    *
    P1  =  0.   0.   0.  ;
    P2  =  10.   0.   0.  ;
    L1  =  P1  D  1  P2  ;
    TRACE  QUAL  L1  ;
    *
    * - - - - - - - - - - - - - - - - - CHOICE OF THE BEHAVIOR AND THE MODEL ----------------*
    *
    MOD1  =  MODEL  L1  MECANIQUE  ELASTIQUE  PLASTIQUE  CINEMATIQUE  POUT  ;
    MAT1  =  MATE  MOD1  YOUN  1.E7  NU  0.3  SIGY  1. E4  H (0.1*1.E7)  ;
    CAR1  =  CARA  MOD1  SECT  0.1   INRY  8.33E-5  INRZ  8.33E-3  TORS  0.0001
                    VECT  (0.  1.   0.)   DX  0.   DY  0.   DZ  0.3333  ;
    *
    * - - - - - - - - - - - - - - - - - - FORCES AND BOUNDARY CONDITIONS -----------------*
    *
    AMPFY  =  -10.  ;
    F1  =  FORCE  (0.  AMPFY  0.)   P2  ;
    CL1  =  BLOQ  DEPLA  ROTA  P1  ;
    *
    * - - - - - - - - - - - - - - -- - - - - - - - - - - - - - LOADING----------------------------*
    *
    LI1  =  PROG  0.   3.   6.  ;
    LI2  =  PROG  0 .  3 .  0 .  ;
    EV   =  EVOL  MANU 'Temps'  LI1  ' F(t) '  LI2  ;
    CHA1 =  CHAR  MECA  F1  EV  ;
    DESS  EV  TITRE  'Ftot = -10.F(t) '  ;
    *
    * - - - - - - - - - - - - - - - - - - - - - - -- - - CALCULATION NOT A NOT -------------------------*
    *
    LIS_TPS  =  PROG  0.   NOT  0.05  6.  ;
    TAB1  =  TABLE  ;
    TAB1.' MODELE'                                    =  MOD1  ;
    TAB1.'CARACTERISTIQUES'               =  MAT1 ET  CAR1  ;
    TAB1.' CHARGEMENT'                         =  CHA1  ;
    TAB1.'BLOCAGES_MECANIQUES'    =  CL1  ;
    TAB1.' TEMPS_CALCULES'                 =  LIS_TPS  ;
    TAB1.'TEMPS_SAUVES'                       =  LIS  _TPS  ;
    PASAPAS  TAB1  ;
    *
    * - - - - - - - - - - - - -- - - - - - - - - - - - POST PROCESSING --------------------------*
    *
    SI  (TAB1.ERREUR)  ;
    MESS ' reperee Error at the time of 1 execution of the calcul'  ;
    SINON  ;
            MESS  ' No error at the time of L execution of the calcul'  ;
            SI  TAB1.CONV  ;
                MESS  ' Convergence of the calcul'  ;
            SINON  ;
                MESS  ' No convergence of calculation for the iteration count demande'  ;
            FINSI  ;
    FINSI  ;
    TAB2  =  TAB1.DEPLACEMENTS  ;
    NDIM  =  DIME  TAB2  ;
    IB  =  0  ;
    LIS1  =  PROG  ;
    LIS2  =  PROG  ;
    REPETER  BOUC1  NDIM  ;
            DDD  =  EXTR  (TAB2.IB)  P2  UY  ;
            LIS1  =  PROG  0.  NOT  0. 5 30.   NOT  -0.5  0.  ;
            LIS2  =    INSER  LIS2  &BOUC1  (-1.*DDD)  ;
            IB  =  IB+1  ;
    FIN   BOUC1  ;
    TITRE  'CURVE DEPLACEMENT-FORCE'  ;
    EV1  =  EVOL  MANU  LIS2  ' DEPLACEMENT'  LIS1 'FORCE'  ;
    DESS  EV1  ;
    *
    FMAX  =  (NDIM/2)  ;
    FFIN  =  NDIM  -  1  ;
    CHDEPM  =  TAB2 .FMAX  ;
    CHDEPF  =  TAB2.FFIN  ;
    DEF0  =  DEFO  L1  CHDEPF  0.   BLAN  ;
    DEF1  =  DEFO  L1  CHDEPM  1.   ROUGE  ;
    DEF2  =  DEFO  L1  CHDEPF  1.   VERT  ;
    EYE  =  0.   0.  1000.  ;
    TITRE  ' DEFORMEE OF THE BEAM APPLICATION FORCES MAXI'  ;
    TRAC  OEIL  (DEF0  ET  DEF1)  ;
    TRAC  OEIL  (DEF0 ET  DEF2)  TITRE  ' DEFORMEE OF THE BEAM AFTER RELACHE'  ;
    *
    FIN  ;

    GO UP



    Comments

    MOD1  =  MODEL  L1  MECANIQUE  ELASTIQUE  PLASTIQUE  CINEMATIQUE  POUT  ;
    MAT1  =  MATE  MOD1  YOUN  1.E7  NU  0.3  SIGY  1. E4  H (0.1*1.E7)  ;
    Model MOD1 makes it possible to define the kinematic plastic behavior of material. The characteristics of material are specified in field MAT1: one defines the Young modulus (YOUN 1.E7), the coefficient of Poisson (NU 0.3), the elastic limit (SIGY 1.E4), the module of work hardening (H(0.1*1.E7)).
    It is quite obvious that the material characteristics depend on the model of plasticity used, it is only too much advised to refer to the note of MATE for checking well given.

    LI1  =  PROG  0.   3.   6.  ;
    LI2  =  PROG  0 .  3 .  0 .  ;
    EV   =  EVOL  MANU 'Temps'  LI1  ' F(t) '  LI2  ;
    CHA1 =  CHAR  MECA  F1  EV  ;
    DESS  EV  TITRE  'Ftot = -10.F(t) '  ;
    The list of real LI1 corresponds to a list of time, list LI2 corresponds to the multiplicative factor of the force according to time these two lists are gathered in evolution EV. The mechanical object of loading CHA1 makes it possible to define the loading as being the product of the force F1 by a multiplicative factor which varies according to time according to evolution EV.

    LIS_TPS  =  PROG  0.   NOT  0.05  6.  ;
    TAB1  =  TABLE  ;
    TAB1.' MODELE'                                    =  MOD1  ;
    TAB1.'CARACTERISTIQUES'               =  MAT1 ET  CAR1  ;
    TAB1.' CHARGEMENT'                         =  CHA1  ;
    TAB1.'BLOCAGES_MECANIQUES'    =  CL1  ;
    TAB1.' TEMPS_CALCULES'                 =  LIS_TPS  ;
    TAB1.'TEMPS_SAUVES'                       =  LIS  _TPS  ;
    PASAPAS  TAB1  ;
    The resolution of nonlinear calculation is done with the procedure PASAPAS which uses an object of the type COUNTS in which are stored the data and the results. Initially, the user must thus define this table which is subscripted by key words. In our case, one specifies :

    The launching of calculation is done by the instruction: PASAPAS TAB1.
    Let us note that for an increment of time one can have several iterations which are due to plastic corrections. One could have specified the number of these iterations in TAB1.MAXITERATION.

    SI  (TAB1.ERREUR)  ;
    MESS ' reperee Error at the time of 1 execution of the calcul'  ;
    SINON  ;
            MESS  ' No error at the time of L execution of the calcul'  ;
            SI  TAB1.CONV  ;
                MESS  ' Convergence of the calcul'  ;
            SINON  ;
                MESS  ' No convergence of calculation for the iteration count demande'  ;
            FINSI  ;
    FINSI  ;
    One uses logical conditions here to check if calculation proceeded correctly:

    TAB2  =  TAB1.DEPLACEMENTS  ;
    NDIM  =  DIME  TAB2  ;
    IB  =  0  ;
    LIS1  =  PROG  ;
    LIS2  =  PROG  ;
    REPETER  BOUC1  NDIM  ;
            DDD  =  EXTR  (TAB2.IB)  P2  UY  ;
            LIS1  =  PROG  0.  NOT  0. 5 30.   NOT  -0.5  0.  ;
            LIS2  =    INSER  LIS2  &BOUC1  (-1.*DDD)  ;
            IB  =  IB+1  ;
    FIN   BOUC1  ;
    TITRE  'CURVE DEPLACEMENT-FORCE'  ;
    EV1  =  EVOL  MANU  LIS2  ' DEPLACEMENT'  LIS1 'FORCE'  ;
    DESS  EV1  ;
    TAB2.DEPLACEMENTS is a table containing the results of displacements. The indices of this table are entireties correpondant with the numbers of times of backup (0, 1..., NDIM-1) thus TAB1.DEPLACEMENTS.0 is the initial field of displacements.
    The list of real LIS2 contirnt displacement (in absolute value) UY of the point P2 for each step of pseudo-times. The two lists make it possible to create object EV1 representing the evolution of the force according to        displacement.

    FMAX  =  (NDIM/2)  ;
    FFIN  =  NDIM  -  1  ;
    CHDEPM  =  TAB2 .FMAX  ;
    CHDEPF  =  TAB2.FFIN  ;
    DEF0  =  DEFO  L1  CHDEPF  0.   BLAN  ;
    DEF1  =  DEFO  L1  CHDEPM  1.   ROUGE  ;
    DEF2  =  DEFO  L1  CHDEPF  1.   VERT  ;
    EYE  =  0.   0.  1000.  ;
    TITRE  ' DEFORMEE OF THE BEAM APPLICATION FORCES MAXI'  ;
    TRAC  OEIL  (DEF0  ET  DEF1)  ;
    TRAC  OEIL  (DEF0 ET  DEF2)  TITRE  ' DEFORMEE OF THE BEAM AFTER RELACHE'  ;
    Object CHDEPM contains the field of displacement resulting from the maximum effort (for pseudo-time t=3); object CHDEPF contains the field of final displacement (null effort and pseudo-time t=6). From these fields of displacements and initial geometry (L1), one creates objects of the type DEFORME. In order to obtain the not deformed structure, a null coefficient of performance is used (this artifice is necessary for directive TRAC which applies only to objects in the same way standard). The deformation of the beam after slackening shows that there was plasticization well.

    GO UP