====== Preprocessor ====== Preprocessing data for Lagamine program. \\ This page contains a description of the data to be indicated in the *.lag file for the Prepro. ===== 1. Title ===== ^Format (9A8,I3)^^ |Title(9)| Title, in 72 characters| |I99999|Big mesh index:\\ = 1 if NUMNP (total number of nodal points)>99999 \\ = 0 else | ---- ===== 2. Control data of the program ===== The control data is defined in 4 lines (in exponent, column on which the variable must be fit in with). ^2.1 (14I5) or (2I5, I10, I5, I10, 10I5) if I99999=1^^ |NTANA5|Type of analysis (see [[prepro#(1) Remark on NTANA|(1)]])| |IANA10|Type of problem:| |:::| =1 - Plane stress state ($EP\sigma$)| |:::| =2 - Plane strain state ($EP\varepsilon$)| |:::| =3 - Axisymmetric state ($axi$)| |:::| =4 - 3D state ($3D$)| |:::| =5 - Generalized plane state ($EPG$) see [[prepro#(2) Remark on IANA=5 (generalized plane state)|(2)]])| |NUMNP15 or 20| Total number of nodal points| |NELTP20 or 25 |Number of ELement Types used (or groups)| |MELEM25 or 35 |Total number of elements (all types together)| |NDISP30 or 40| Number of degrees of freedom where non zero DISPlacements are imposed| |NFOUN35 or 45| Number of foundations| |NSEGT40 or 50| Total number of segments defining the NFOUN foundations| |IPILO45 or 55| Number of pilot nodes for the foundations| |NLAW50 or 60| Number of constitutive LAWs used| |IRICE55 or 65| Indicator for the bifurcation calculation (RICE's criterion) – No more used.| |ICGEO60 or 70| Indicator for geometrical distortions (%age of distorted elements)| |IERRO65 or 75| Indicator for a posteriori error calculations| |ICRIT70 or 80| = 0 nil| |:::|= 1 forging simulation, criteria calculation to detect the too-distorted elements and automatic remeshing if the number of distorted elements exceeds the maximum fixed in the execution data and existence of "EI" (M. Dyduch)| |:::|= 2 simulation with shearing bands and automatic remeshing if the number of bifurcated elements exceeds the maximum fixed in the execution data| |:::|= 5 simulation where the VILOTTE's criterion is used as indicator| |:::|= 6 forging simulation, different from Dyduch| |:::|= 7 proportional fatigue computation (see fatigue calculation in Hill_3D_KI law), you must generate the file 61 (.ntfdam) [[prepro#(0) NTFDAM file structure|(0)]]| |IFEM23|Type of multi-scale problem:| |:::| =0 - Only macro-scale problem| |:::| =1 - Micro hydro-mechanical law with interfaces ([[laws:fe2wg|FE2WG]])| |:::| =2 - Micro hydraulic law ([[laws:hmic|HMIC]])| |:::| =3 - Micro hydraulic + pollutants law ([[laws:hypofe2|HYPOFE2]])| ^2.2 (15I5)^^ |IRENU5| Index for the DOF renumbering \\ = 0 nil \\ = 1 reading of the RENUM card and renumbering of the DOF| |IGRAV10| Index for the analysis with gravity (soil mechanics) \\ = 0 nil \\ = 1 reading of the GRAVI card| |IDMAT15| = 0 or 2 reading of the FIXED card \\ = 1 reading of the IDMAT card| |MPARA20| Maximum number of real PARAmeters for any constitutive law. [[prepro#(3)|(3)]] \\ Default value : 40| |MVARI25| Maximum number of internal VARiables per integration point. [[prepro#(3)|(3)]] \\ Default value : 40| |MSIGP30| Maximum number of stresses per point. [[prepro#(3)|(3)]] \\ Default value : 18| |MPARI35| Maximum number of integer parameters for any constitutive law. [[prepro#(3)|(3)]] \\ Default value : 20 (Be careful, often not sufficient for thermo-mechanical-metallurgical coupling)| |IMDIS40| = 1 displacements can be printed (the CONEC dimension increases) (compulsory for BEM2D) \\ = 0 displacements are not printed NCOL = 1 for static analysis, NCOL = 3 for dynamic analysis. \\ = 2 NCOL = 2 for static analysis useful for OCASFO routine (see data [[appendices:a11|appendix 11]]) \\ ≥10 presence of a dead load, the NCOL value is incremented by 1. (see Wang)| |IPIFO45| = 0 nil \\ = 1 force pilotage by the routine OCASFO (see [[appendices:a11|appendix 11]])| |ICEVO50| = 0 nil \\ = 1 checking of the total volume of the piece computed by the Jacobian matrix determinant (ready for BLZ3D)| |ITREE55| = 0 nil \\ = 1 search of the 3D contact by arborescence; \\ ITREE = number of foundations using the sub-tree method [[prepro#(4)|(4)]]| |ICOUP60| = 0 nil \\ = 1 the bandwidth of the thermomechanical calculation takes into account the splitting between thermics and mechanics| |ILIEN65| = 0 nil \\ = 1 the number of the solid element adjacent to each contact element or foundation segment is memorized. | |NDUPL70| = 0 nil, no section 7 \\ = n reading of the DUPLI card, n is the number of pair of Duplicata nodes.| |INCFO75| = 0 nil, no section INCFO \\ ≥ 1 Read Incremental Forming parameters (SEMPER project – C. Henrard, C. Bouffioux). \\ If INCFO > 1, debug messages will be printed (see module MINCFO → DEBUG_MST=INCFO-1)| ^2.3 Dynamic analysis (4I5)^^ |This line is left blank if the analysis is not dynamic|| |NMASC5| Number of DOF where non zero masses are imposed| |NDAMC10| Number of DOF where non zero dampings are imposed| |NVEL015| Number of DOF where non zero initial speeds are imposed| |NACC020| Number of DOF where non zero initial accelerations are imposed| ^2.4 Metallurgical analysis (4I5)^^ |This line is left blank if the analysis is not metallurgic|| |NLAWM5| Number of metallurgic laws (can be equal to 0) \\ //Rem. If NLAWM≠0, a x.MET file is required for this type of metallurgical data//| |MTPAM10| Maximum number of temperatures per table (50 per default)| |MCPAM15|Total number of columns for all the metallurgic tables| |:::|if META = 0 or for META = 4 and IMETH = - 5: 4 (3 Euler's angles + 1 weight) \\ Default value: \\ 25 if NTANA = 3 or 6 \\ 85 if NTANA = 4 or 9| |:::|If META ≠ 0, MCPAM is nil| |MDPAM20| Number of parameters not in the table | |:::| If META = 0: \\ MDPAM = 108 if NTANA = 3 or 6 \\ MDPAM = 119 if NTANA = 4 or 9| |:::| If META = 1: MDPAM = 88452 (Leuven, P. Van Houtte's law) imposed in the code| |:::|If META = 3 or if (META = 4 and IMETH (cf. law MIPAY3) = ± 2): MDPAM computed according to Leuven files, no default value (214 for a six order series)| |:::|If META = 4 and IMETH (cf. law MIPAY3) = 3 or 4: \\ MDPAM = maximum number for crystals necessary to define the texture x 3, no default value| |:::|If META = 4 and IMETH = -5 (Taylor) \\ MDPAM = sliding numbers * 8+1 for the used crystals| |:::|Else: MDPAM imposed to 1 in the code| |META25|=0 Nancy approach (AM Habraken 1989) \\ Phase transformations modelisation| |:::|=1 Texture approach, Paul Van Houtte's surface (law ANI3VH)| |:::|=2 Hill's surface (law ANI3VH)| |:::|=3 Surface defined by a 6 order series in the stresses space (Jan Winters' approach, 1996) (law ANI3VH)| |:::|=4 Surface defined by pieces and based on texture (Munhoven-Radu-Habraken approach, 1997) (law MIPAY3) \\ Depending on the IMETH variable defined in the law MIPAY3, one can have: \\ - Hill's surface discretized by facets; (IMETH= +1) \\ - Hill's surface non discretized by facets; (IMETH= -1) \\ - Surface defined by a 6 order series in the strains space (Bert van Bael's approach), discretized by facets; (IMETH = +2) \\ - Surface defined by a 6 order series in the stresses space (Jan Winters' approach), non discretized by facets; (IMETH = -2) Equivalent version to META = 3 \\ - Surface discretized by facets and based on the texture (Taylor Ulg A); (IMETH= 3) \\ - Surface discretized by facets and based on the texture with actualisation of this surface (Taylor Ulg B); (IMETH= 4) \\ - No plasticity surface but Taylor ULg A is the mean for the $\sigma_{micro}$ and $\sigma_{macro}$ computation (IMETH = - 5)| ==== (0) NTFDAM file structure ==== → __for mono-block loading__: ^1st line (I5)^^ |NL|=1 (NL is the number of blocks)| ^2nd line (I10, G7.5)^^ |ncycle|=0| |PERIODE|=input value| → __for multi-block loading__: ^1st line (I5)^^ |NL|= number of blocks| ^2nd line (I10, G7.5) - repeated NL times^^ |ncycle| input value| |PERIODE|input value| ==== (1) Remark on NTANA ==== In general, a node has 3 DOF displacements and 1 DOF temperature. In the case of 3D shell elements, it has 3 DOF displacements and 3 DOF rotations. The variable NTANA allows the program to decide which is the maximum number of nodal DOF potentially useful for a given type of analysis (dimension NDOFN, classed as NSPAC, space dimension). It also allows to define the active DOF (i.e. those which can produce an equation) and the passive ones (which do not produce equations). \\ \\ A negative value of NTANA is used for dynamic analysis. \\ ^NTANA^(2 translations + water pressure + air pressure + temperature)^ | = 1 | Plane mechanical analysis \\ NDOFN = NSPAC = 3 : X,Y,T \\ (no equation for DOF 3)| | = 2 |3D mechanical analysis \\ NDOFN = NSPAC = 4 : X, Y, Z, T \\ (no equation for DOF 4)| | = 3 |Plane thermal analysis \\ NDOFN = NSPAC = 3 : X, Y, T \\ (no equation for DOF 1 and 2)| | = 4 |Plane thermomech. analysis \\ NDOFN = NSPAC = 3 : X, Y, T| | = 5 |2D coupled mechanical water – thermal – air flow analysis \\ NDOFN = NSPAC = 5 : X, Y, PW, Pa, T| | = 6 |3D thermal. analysis \\ NDOFN = NSPAC = 4 : X,Y,Z,T| | = 7 |Plane mechanical analysis with shells \\ NDOFN = NSPAC = 3 \\ (2 translations, 1 rotation) X,Y,ZZ | | = 8 |3D mechanical analysis with shells \\ NDOFN = NSPAC = 6 : X, Y, Z, ψ1, ψ2, ψ3 \\ (3 translations + 3 coordinates of rotation vector)| | = 9 |3D thermomechanical. analysis \\ NDOFN = NSPAC = 4 : X, Y, Z, T| | = 10 |Plane mechanical analysis, second gradient method (Ouafa ElHammoumi) \\ NDOFN = NSPAC = 5 : X, Y, λ, $\frac{d\lambda}{dX}$,$\frac{d\lambda}{dY}$| | = 13 |3D coupled mechanical water – thermal – air flow analysis \\ NDOFN = NSPAC = 6 : X, Y, Z, PW, Pa, T| | = 14 |Plane mechanical analysis, second gradient method (Grenoble) \\ NDOFN = NSPAC = 6 : X, Y, V11, V12, V21, V22 (ou λ11, λ12, λ21, λ22 for central node)| | = 15 |2D coupled mechanical water – thermal – air flow – chemical analysis \\ NDOFN = NSPAC = 6 : X, Y, PW, Pa, T, c| | = 16 |Plane coupled mechanical water flow analysis, second gradient method (Grenoble) \\ NDOFN = NSPAC = 7 : X, Y, PW, V11, V12, V21, V22 (ou λ11, λ12, λ21, λ22 for central node)| | = 17 |Plane coupled mechanical water – thermal – air flow analysis, second gradient method (Grenoble) \\ NDOFN = NSPAC = 9 : X, Y, PW, Pa, T, V11, V12, V21, V22 (ou λ11, λ12, λ21, λ22 for central node)| | = 18 |2D coupled mechanical water – thermal – air flow – chemical analysis \\ NDOFN = NSPAC = 8 : X, Y, PW, Pa, T, c1, c2, c3| | = 19 |21 Dofs (3 disp + 18 GND)| ==== (2) Remark on IANA=5 (generalized plane state) ==== * The last node is a special one; it always has 3 DOF, $\alpha_0$, $\alpha_1$ et $\alpha_2$, such that the thickness (in z direction) of a slice of slid varies according to: $b = \alpha_0 + \alpha_1 X + \alpha_2 Y$ * To be consistent with these 3 DOF of the last node, it is necessary to specify NTANA such that there exists at least 3 active DOF per node but may perhaps fix the non-significant ones. \\ For example, for the mechanical generalized plane state, NTANA = 7, IANA = 5 and fix the 3rd DOF for all the nodes (except for the last one eventually). * Initial values of $\alpha_0$, $\alpha_1$ et $\alpha_2$ can be introduced: they are the "coordinates" of the last node. \\ 2 remarkable particular cases are worth noting : - Plane strain state : $\alpha_0$ = 1, $\alpha_1$ = $\alpha_2$ = 0 (and $\alpha_i$ all fixed) - Axisymmetric state : $\alpha_0$ = 0, $\alpha_1$ = 1, $\alpha_2$ = 0 (and $\alpha_i$ all fixed). * The last node appears in all the elements; therefore, the bandwidth is maximum -> use the skyline system solver. ==== (3) ==== These variables are used in dynamic allocation of memory. In case of thermal analysis, the properties can be described at different temperatures, the default allocations could be insufficient and one must calculate MPARA. ==== (4) ==== Sub-tree algorithm for contact searching, developed by OCAS, has been implemented both for solid (CFI3D) and shell element (COQJ4). It is activated by option ITREE≥1 in PREPRO. Details of algorithm can be found in "OCAS Technical Report Hgr/9501, 1995" by H. Bruneel and I. De Rycke. \\ Currently sub-tree contact searching algorithm only works with tools which are driven by a displacement pilot node. No rotation of tools is allowed. Even if the foundation is fixed, a (fixed) pilot node must be defined. Also the algorithm works with tools described by triangular segments (ICODE=5). (Note by Y. Kim, Jan. 97). Note that the sub-tree method only works with foundations containing more than one triangular segment. ---- ===== 3. Nodes coordinates ===== ^3.1 Sub-title (A5)^^ |TITLE|"NODES" written in the first 5 columns| ^3.2 Nodes definition (I5, 8G10.0) or (I10, 8G10.0) if I99999=1^^ |INODE|Node number| |XYZ(INODE,J)J=1:NSPAC|Node coordinates| ^3.3 Micro-nodes definition (I5, 2G10.0) if IFEM2 $\neq$ 0^^ |TITLE|"Microstructure" written in the first 25 columns| |INODE2|Micro-node number| |XY(INODE2,J)J=1:2|Micro-node coordinates| __Remark__ : convention \\ The plane or axisymmetric state axis system is direct (right-handed). Conventionally the Y axis is directed toward the top. In the axisymmetric state, the Y axis is the same as the symmetry axis. All the nodes, elements, and local axis lists definitions must be given in the same axis system, implicit in the whole of this handbook. ---- ===== 4. Gravity definition ===== This section only exists if IGRAV=1. ^4.1 Sub-title (A5)^^ |TITLE|"GRAVI" written in the first 5 columns| ^4.2 Gravity definition (3G10.0)^^ |GRAVIX| Acceleration value in the Ox direction| |GRAVIY| Acceleration value in the Oy direction| |GRAVIZ| Acceleration value in the Oz direction| ---- ===== 5. Degrees of freedom (DOF) renumbering ===== This section only exists if IRENU=1. \\ The renumbering does not change the nodes numbers. It only changes the equations number corresponding to the DOF of these nodes. \\ File DFIXED.F in Prepro ^5.1 Sub-title (A5)^^ |TITLE|"RENUM" written in the first 5 columns| ^5.2 (5I5, G10.0)^^ |ISTAR|For ITYREN=0 or 1: Initial node for renumbering| |:::|For ITYREN=2: \\ Hundreds: Direction in which the structure has the greatest number of nodes \\ 1 = X, 2 = Y, 3 = Z \\ Tens : Intermediate direction \\ Unity : Direction in which the structure has the smallest number of nodes \\ Possible values: \\ 2-D : 120 or 210 \\ 3-D : 123, 132, 231, 213, 312 or 321| |:::|For ITYREN = 3: not used| |KZONE|Default value = 4 \\ = NOT used if ITYREN=2 or 3| |IPRIN| Printing level index| |:::|= 0: bandwidth before and after renum| |:::|= 1: idem 0 + new numbering + new ID matrix| |:::|= 2: idem 1 + connections matrix + summary of the obtained bandwidths| |:::|= 3: idem 2 + list of obtained numberings| |:::|= NOT used if ITYREN=2 or 3| |IFOND| = 0: no foundation or if fixed foundation| |:::|= 1: foundation whose DOF are free| |:::|= NOT used if ITYREN=2 or 3| |ITYREN| = 0: Maximum bandwidth optimisation (oil stain)| |:::|=1 : Mean bandwidth optimisation (oil stain)| |:::|=2 : Directional optimisation| |:::|=3 : Sloan method based on graph theory (Sloan, IJNME, vol 28, pp 2651-2679, 1989)| |BDFAC|Default value = 1.05 \\ NOT used if ITYREN=2 or 3| KZONE and BDFAC are factors which have an effect on the new numbering search as the computer time. ---- ===== 6. Duplicata nodes ===== This section only exists if NDUPL>0. ^6.1 Sub-title (A5)^^ |TITLE|"DUPLI" written in the first 5 columns| ^6.2 (2I5) or (2I10) if I99999>1^^ |IDUPL(I,1), IDUPL(I,2) \\ I=1, NDUPL| Nodes list with IDUPL(I,1) 0. \\ After a sub-title card, the program reads the cards 13.2 until it founds NMASC imposed masses different from zero. ^13.1 Sub-title (A5)^^ |TITLE| "MASSC" written in the first five columns| ^13.2 Imposed masses (I5, 6G10.0) or (I10, 6G10.0) if I99999 = 1^^ |INODE| Node number| |FOMAN (I) \\ I = 1,NODFN| Concentrated masses on these node's DOF| ---- ===== 14. Imposed nodal dampings ===== This section only exists if NTANA < 0 (dynamic analysis) and NDAMC > 0. \\ After a sub-title card, the program reads the cards 14.2. until it founds NDAMC imposed masses different from zero. ^14.1 Sub-title (A5)^^ |TITLE| "DAMPC" written in the first five columns| ^14.2 Imposed dampings (I5, 6G10.0) or (I10, 6G10.0) if I99999 = 1^^ |INODE| Node number| |FOMAN(I) \\ I = 1,NODFN| Dampings concentrated at these node's DOF| ---- ===== 15. Constitutive laws ===== File LAWPRE.F in Prepro ^15.1 Title (A5)^^ |TITLE|"COLAW" written in the first five columns| → See [[laws|Laws]] ---- ===== 16. Fondations and tools ===== This section only exists if NFOUN > 0 and ICECN = 0. The foundations and the tools can be rigid (then the nodes must be fixed) or deformable (and must be FE facets). ^16.1 Sub-title (A5)^^ |TITLE| FOUND written in the first five columns| ==== 16.2 Description of the foundation segments ==== This section must be repeated NFOUN times. ^16.2.1 (2I5, 4G10.0)^^ |NSEG|Number of segments for this foundation| |ICOR|Index to define the contact zone if ICODE=5.| |:::|=0 The contact zone is limited by the maximum and minimum foundation values without the user's interposition.| |:::|≥10 The contact zone is limited by the values introduced by the user according to the needs. In this case, different values must be distinguished: \\ - $IDIR=ICOR/10$: The direction along which the contact zone is defined, for example if IDIR = 1, the contact zone is defined in the Y-Z plan by the following values (Ymin,Ymax, Zmin, Zmax). If IDIR=2, the contact zone is defined in the X-Z plan by the values (Xmin, Xmax, Zmin, Zmax). Finally, if IDIR=3, the contact zone is defined in the X-Y plan by the values (Xmin, Xmax, Ymin, Ymax). \\ - $ICAS=ICOR-IDIR*10$: The way the contact zone is defined. For example, if ICAS ≤ 1, the contact zone is defined by and if ICAS = 2, the contact zone is defined by in the cylindrical coordinates system.| |1min| The first minimum coordinates value to define the contact zone| |1max| The first maximum coordinates value to define the contact zone| |2min| The second minimum coordinates value to define the contact zone| |2max| The second maximum coordinates value to define the contact zone| {{:prepro_fig1.png?350|}} {{ :prepro_fig2.png?300|}} ^16.2.2 Repeat NSEG times - (5I5) or (I5, 4I10) if I99999 = 1^^ |ICODE| Code defining the segment| |:::|= 1 : straight line segment (2D)| |:::|= 2 : circle segment (clockwise), the 3rd node is the center (2D)| |:::|= 3 : circle segment (anti-clockwise), the 3rd node is the center (2D)| |:::|= 4 : parabolic segment (2D)| |:::|= 5 : triangular facet (3D)| |:::|= 6 : circle (2D)| |:::|= 7 : cylinder (3D)| |:::|= 8 : frustum of cone (3D)| |:::|= 9 : a piece of frustum of cone (3D) with ICODE = 9, the contact surface is the outside of the frustum of the cone and ICODE = -9, the contact surface is the inside of the frustum of the cone| |:::|= 10 : sphere (3D)| |:::|= 11 : quadrangular facet (3D)| |:::|= 98 : pilot node of the foundation (2D or 3D) with rotation| |:::|= 99 : pilot node of the foundation (2D or 3D)| |NOD1| N° of the first node of the segment| |NOD2| N° of the second node of the segment| |NOD3| N° of the third node of the segment (except for the straight line segments (ICODE=1) and the circles (ICODE=6))| |NOD4| N° of the fourth node of the segment (only for ICODE= ±9 and 11)| The definition direction is important. In 2D (ICODE = 1 to 4), when the segment is examined in the described direction, the foundation or the tool must be placed on the right. \\ In 3D (ICODE=5 or ICODE=11), the normal to the triangular facet is given by the vectors product $\vec{12} \vec{13}$ built on the facet's nodes $n=\vec{12} \wedge \vec{13}$ . This normal (marked by red face in DESFIN) must get inside the foundation, i.e., be directed from the contact element to the foundation. === Remarks === * __For ICODE = 6__, the first node represents the circle center, the second node has the (R, φ) coordinates where φ represents the circle rotation (initially φ = 0). \\ * __For ICODE = 7__, the first two nodes represent the cylinder axis limits. The last one has the (R, φ, 0) coordinates where φ represent the cylinder rotation (initially φ = 0). \\ * __For ICODE = 8__, the first two nodes represent the cone frustrum axis limits. The last one has the (R1, R2, φ) coordinates where R1 and R2 are the radius at nodes 1 and 2, and φ represents the cone frustum rotation (initially φ = 0). * __For ICODE = ±9__, the first two nodes represent the cone frustum axis limits (N1 and N2). The third node represents the middle of the arc in the plane perpendicular to the cone frustum axis, coming from N1. The fourth node has the (R1, R2, θ) coordinates where R1 and R2 are the radius at the nodes 1 and 2, and θ is the angle (in radian) of the cone frustum (see ) – only one case has been tested presently: the cone frustum axis is parallel to the z axis. {{ :prepro_fig3.png?400 |}} * __For ICODE = 10__, the first node represents the sphere center, the second node has the (R, F) coordinates where F allows to see only one part of the sphere. \\ F=0.abcdef \\ a=1 : positive X part visible \\ b=1 : negative X part visible \\ c=1 : positive Y part visible \\ d=1 : negative Y part visible \\ e=1 : positive Z part visible \\ f=0 : negative Z part visible. \\ Example: F=0.101010 draws the X, Y, Z positive parts. * __For ICODE = 98 and 99__, this segment is composed by only one node which DOF pilot the supposed rigid foundation. \\ This segment type is unique for a given foundation and __MUST__ be placed in the first position. The pilot node DOF can be free or fixed (fixed or imposed displacement), but __all the other foundation nodes must be fixed__. The pilot node DOF must be consistent with the analysis type. In case of rotations, it means finite rotations. The foundation follows its pilot, its displacement can be defined by DMULT or *.DEP. In the case ICODE = 98, the foundation can have rotations. * __For ICODE = 98__, for the 2D case, the DOF 1 represents the rotation around the perpendicular to the plan (2), on the other hand for the 3D case, the DOF 1 represents the rotation around x, the DOF 2 represents the rotation around y and the DOF 3 the rotation around z. All these rotations are given in radian. ---- ===== 17. Elements ===== → See [[elements|Elements]]