/STACK
Block Format Keyword Used to define the stacking sequence of a composite shell (shell belonging to a part referencing /PROP/PCOMPP) in conjunction with the /STACK option.
Description
- A single stack describing the order of plies, each ply may have a different shape by associating groups of elements to the ply.
- A sequence of substacks ("SUB"), which are comprised of several plies. The interface between substacks is defined with INT option line(s).
The input can be either "substack" or by ply, but not both.
Format
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
/STACK/stack_ID/unit_ID | |||||||||
stack_title | |||||||||
Ishell | Ismstr | Ish3n | Idrill | P_thickfail | Z0 | ||||
hm | hf | hr | dm | dn | |||||
Ashear | Iint | Ithick | |||||||
VX | VY | VZ | skew_ID | Iorth | Ipos | IP |
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
Pply_IDi | Zi | P_thicklfail_i | F_weighti | ||||||
Blank |
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
Sub | Nsub | Sub-plyn | P_thickfail_i | F_weighti | |||||
Substack Name | |||||||||
Pply_IDi | Zi | ||||||||
Blank | |||||||||
Sub | Nsub | Sub-plyn | |||||||
Substack Name | |||||||||
Pply_IDj | Zj | ||||||||
Blank |
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
INT | Pply_IDt | Pply_IDb |
Definition
Field | Contents | SI Unit Example |
---|---|---|
stack_ID | Stack
identifier. (Integer, maximum 10 digits) |
|
unit_ID | Unit identifier. (Integer, maximum 10 digits) |
|
stack_title | Stack title. (Character, maximum 100 characters) |
|
Ishell | Shell element formulation
flag. 2
(Integer) |
|
Ismstr | Shell small strain
formulation flag. 3
(Integer) |
|
Ish3n | 3 node shell element
formulation flag.
(Integer) |
|
Idrill | Drilling degree of freedom
stiffness flag. 7
(Integer) |
|
P_thickfail | Fraction of failed
thickness for element deletion. 13
Default = 1.0 (Real) |
|
Z0 | Distance from the shell to
the bottom surface of the plies. It should be considered, if Ipos =2. Default = 0.0 (Real) |
|
hr | Shell membrane hourglass
coefficient. 4 Default = 0.01 (Real) |
|
hf | Shell out-of-plane
hourglass. Default = 0.01 (Real) |
|
hr | Shell rotation hourglass
coefficient. Default = 0.01 (Real) |
|
dm | Shell membrane
damping. For additional information, refer to Hourglass Resistance in the
Theory Manual.
(Real) |
|
dn | Shell numerical damping.
5 It only used for Ishell =12 and 24
(Real) |
|
Ashear | Shear factor. Default is Reissner value: 5/6 (Real) |
|
Iint | Thickness integration
formulation - through ply thickness. 1
(Integer) |
|
Ithick | Shell resultant stresses
calculation flag.
(Integer) |
|
VX | X component for reference
vector. 8 Default = 1.0 (Real) |
|
VY | Y component for reference
vector. Default = 0.0 (Real) |
|
VZ | Z component for reference
vector. Default = 0.0 (Real) |
|
skew_ID | Skew identifier for
reference vector. 8 Default = 0 (Integer) |
|
Iorth | Orthotropic system
formulation flag for reference vector.
(Integer) |
|
Ipos | Ply positioning flag for
reference vector. 10
(Integer) |
|
IP | Reference direction in
shell plane. 8
(Integer) |
|
Pply_IDi | Ply identifier for ply
i. (Integer) i =1, 2, 3, ...N |
|
Angle for ply
i. 8 (Real) |
||
Zi, | Z position of ply
i
(Zi or
defines the position of the middle of the ply). Default = 0.0 (Real) |
|
P_thicklfail_i | Fraction of failed
thickness for ply deletion. 13
(Real) Default = 1.0 (Real) |
|
F_weighti | Relative failure weight
factor for layer i. 13
Default = 1.0 (Real) |
|
Sub | =SUB: Indicates the
beginning of a substack definition (must be left justified). 11
(Integer) |
|
Nsub | Substack identification
number. (Integer) |
|
Sub-plyn | Number of plies in
substack. (Integer) |
|
Substack Name | Name of the
substack. (Maximum 100 characters) |
|
INT | Indicates the connection between 2 substacks (must be left
justified). (Integer) |
|
Pply_IDt | Ply
identification number of the top ply of the bottom substack. One
of ply ID in
Pply_IDi or
Pply_IDj. (Integer) |
|
Pply_IDb | Ply
identification number of the bottom ply of the top substack. One of ply ID in
Pply_IDi
or
Pply_IDj. (Integer) |
Example (Substack with /DRAPE)

#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/UNIT/1
unit for mat
Mg mm s
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PROP/PCOMPP/1/1
PCOMPP example
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/STACK/1/1
NEW_PROP_1
# Ishell Ismstr Ish3n Idril P_thick_fail Z0
12 0 0 0 0 0
# hm hf hr dm dn
0 0 0 0 0
# Istrain Ashear Iint Ithick
0 0 1 0
# VX VY VZ skew_ID Iorth Ipos Ip
0 1 0 0 0 0 0
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
# Sub Nsub Sub-plyn
SUB 1 4
# Substack Name
TOP
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
11 45 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
12 -45 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
13 90 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
14 90 0
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
# Sub Nsub Sub-plyn
SUB 2 4
# Substack Name
LEFT
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
21 45 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
22 -45 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
23 90 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
24 90 0
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
# Sub Nsub Sub-plyn
SUB 3 4
# Substack Name
RIGHT
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
31 45 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
32 -45 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
33 90 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
34 90 0
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
# Sub Nsub Sub-plyn
SUB 4 3
# Substack Name
MIDDLE
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
41 45 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
42 -45 0
# Pply_IDi PHIi Zi P_thickl_fail_i F_weight_i
43 90 0
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
# Int Pply_IDt Pply_IDb
INT 14 21
INT 14 31
INT 43 21
INT 34 41
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/11/1
Part number 11
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 45 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/12/1
Part number 12
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 45 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/13/1
Part number 13
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 45 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/14/1
Part number 14
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 45 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/21/1
Part number 21
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 46 0 0 0
# drape_ID
0
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/22/1
Part number 22
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 46 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/23/1
Part number 23
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 46 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/24/1
Part number 24
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 46 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/31/1
Part number 31
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 47 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/32/1
Part number 32
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 47 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/33/1
Part number 33
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 47 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/34/1
Part number 34
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 47 0 0 0
# drape_ID
1
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/41/1
Part number 41
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 44 0 0 0
# drape_ID
2
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/42/1
Part number 42
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 44 0 0 0
# drape_ID
2
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/PLY/43/1
Part number 43
# mat_ID_i t delta_phi grsh4n_I grsh3n_I Npt_ply A_i
4 .5 45 44 0 0 0
# drape_ID
2
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/DRAPE/1
drape in shell group 1
# Entity Entity_ID Thinning Theta_drape
SHELL 2 45.
SHELL 3 45.
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/DRAPE/2
drape in shell group 2
# Entity Entity_ID Thinning Theta_drape
SHELL 1 -45.
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/SHELL/3
1 43131 43138 43137 43132 0
2 43132 43133 43136 43137 0
3 43134 43132 43137 43135 0
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
#ENDDATA
Comments
- The stack is used in combination
with /PLY to create composites properties through the
ply-based definition. It is NOT compatible with /PROP/TYPE19 (PLY) option.
- Each ply in the stack is defined using Pply_IDi or Pply_IDj and can only be referenced once in the stack. If ply ids are used more than once an error message will output.
- Each ply of a shell element can contain a different (≥ 1) number of integration points through its ply thickness. That is, Npt_ply =3 in /PLY.
- Different integration scheme (uniformly distribution or Gauss integration scheme) could be defined with option Iint inside this property,
- Ishell, Ish3n – 4-node and 3-node shell formulation flag.
- Ishell =1,2,3,4 (Q4): original 4 nodes Radioss shell with hourglass perturbation stabilization.
- Ishell =24 (QEPH): formulation with hourglass physical stabilization for general use.
- Ishell =12 (QBAT): modified BATOZ Q4γ24 shell with four Gauss integration points and reduced integration for in-plane shear. No hourglass control is needed for this shell.
- Ish3n =30 (DKT18): BATOZ DKT18 thin shell with three Hammer integration points.
- The hourglass formulation is visco-elastic for Q4 shells.
- Ismstr - Small strain formulation
- Small strain formulation is activated from time t = 0, if Ismstr=1. It may be used for a faster preliminary analysis, but the accuracy of results is not ensured. Any shell for which can be switched to a small strain formulation by Radioss Engine option /DT/SHELL/CST.
- If Ismstr=1, the strains and stresses which are given in material laws are engineering strains and stresses; otherwise they are true strains and stresses.
- hm, hf, and hr - hourglass coefficients
- hm, hf, and hr are only used for Q4 shells. They must have a value between 0 and 0.05.
- For Ishell = 3, default values for hm and hr are 0.1.
- dn - Shell
numerical dampingIt is only used for Ishell =12 or 24:
- for Ishell =24, dn is used for hourglass stress calculation
- for QBAT, dn is used for all stress terms, except transverse shear
- for DKT18, dn is only used for membrane
- Ithick - Shell resultant stresses calculation flag
- If Ithick = 1, the small strain option is automatically deactivated in the corresponding type of element
- Idrill - Drilling degree of freedom stiffness
- Drilling DOF stiffness is recommended for implicit solutions especially for Riks method and bending dominated problems
- Idrillis available for QEPH, QBAT (Ishell = 12, 24), and standard triangle (C0) shell elements (Ish3n = 1, 2).
- The orthotropy angle is defined as
following from the reference vector defined in the stack:
- is defined per ply in stack
- is defined on the element
- is defined on the ply
- is defined in the drape table
The reference vector , defined with IP, skew_ID or vector (VX, VY, VZ), is described in Composite Properties in the User Guide.Figure 2. - Example for IP = 20:
Figure 3.
- The material direction definition in the initial state card
(/INISHE/ORTHO, /INISH3/ORTHO)
overwrites the material direction.
In the case of reference metrics, the orientation for directions of anisotropy must be defined with the reference geometry, not the initial one.
The 2nd material direction m2 is derived from direction m1 with the angle (defined in /PLY).
If , the layer is orthotropic.
- Ipos - ply position
- In this property, ply position defined with and option Ipos.
- values are real ply positions in the local Z axis (negative and positive value are allowed and defines the position of the middle of each ply).
- only used with Ipos=2, it indicated distance from the shell element reference middle surface to the bottom surface of the whole ply or stack. For additional information, see Ipos=2
- Ipos = 0: ply positions are
automatically calculated with regards to ply thicknesses.
- The input thickness “Thick” may be equal to zero as the true shell thickness is always calculated from the ply thicknesses and positions of ply defined by .
- If the input thickness “Thick” is different
from 0.0, a warning will be displayed if the calculated
thickness from the plies is different from the input
thickness.
Figure 4.
- Ipos = 1: All ply positions and
thickness in the element are user-defined (with in
/PLY and
).
- Global thickness “Thick” is not checked, as it does not need to be equal to the sum of ply thickness
- Multiple plies are allowed to have the same space position
- This option is not recommended unless the number of ply is
constant for all elements
Figure 5.
- Ipos = 2: the bottom of the ply
layout is at
from the shell element mid-surface.
Figure 6. - Ipos = 3: the top of the ply layout
is coincident with the element mid-surface.
Figure 7. - Ipos = 4: the bottom of the ply
layout is coincident with the element mid-surface.
Figure 8.
- Defined by substack.
- If the substack definition is used, each substack definition begins with the keyword "SUB" and the substack identification number.
- All the plies until the next keyword "SUB" or the keyword "INT" is encountered belong to the same substack.
- All substacks must be defined before defining the “INT connections
- If an element contains plies belonging to several substacks, the connection between the substacks is defined with an “INT” connection: the ply Pply_IDt of the first substack is connected to the ply Pply_IDb of the second substack.
- For additional information, refer to the above examples for this property.
- Material for each ply.
- Material for each ply defined with mat_ID in /PLY.
- Different material laws could be defined for each ply.
- The material law number given in /PART will be used to define the mass and the sound speed of the composite, as well as the interface stiffness.
- Element deletion rules used with
P_thickfail and failure
models:
- At the ply level, all
P_thicklfail_i
defined in the ply and
P_thickfail
defined in failure model(s) (/FAIL) are considered to trigger the ply failure.
- P_thicklfail_i > 0 defines a fraction of failed ply’s thickness. This uses the amount of ply’s thickness assigned to each thickness integration point in the ply.
- P_thicklfail_i < 0 defines a ratio of failed ply’s integration points. This uses the number of integration point defined in the ply.
- Minimum of the absolute value defined in the ply or in the failure criterion card is used to trigger the ply failure.
- In case there is only 1 integration point on each ply, the P_thickfail defined in failure model(s) are not used (/PROP/TYPE17 (STACK)).
- When plys’ failure starts, a global element deletion criterion is
regarded considering the global value
P_thickfail
defined in the stack:
- P_thickfail > 0 defines a fraction of failed thickness. This uses the amount of element global thickness assigned to each ply.
- P_thickfail < 0 defines a ratio of failed plies. This uses the number of plies.
- For fully-integrated shells (Ishell=12), the rules described above for under-integrated shells, applies to each Gauss point separately. P_thicklfail_i criterion is checked for all integration points in plys’ thickness for each in-plane Gauss point. The ply is considered as broken only when all Gauss points reach P_thicklfail_i criterion. Then global element criterion is regarded.
- P_thickfail or P_thicklfail_i values must the same sign. Otherwise, the P_thickfail defined in the ply takes the same sign as the value defined in the failure criterion card /FAIL.
- P_thickfail rules are not used with failure models defined inside the material laws. It is used only for the failure model defined with /FAIL.
- At the ply level, all
P_thicklfail_i
defined in the ply and
P_thickfail
defined in failure model(s) (/FAIL) are considered to trigger the ply failure.