Integrated Composite Analyzer (ICAN/JAVA)
Load Input

Load Input Data

The Load data describes what happens to the laminate after fabrication. The loads may be mechanical, thermal, hygral, or electrical. Within each type there may be Static and/or Cyclic loads.

Mechanical

The mechanical static loads associate membrane loads and bending moments with each ply layer in a laminate. The program can account for various combinations of in-plane and bending loads.

Several modules have been added to perform durability/fatigue type analyses for mechanical cyclic loads. This may be used to assess degradation due to mechanical cyclic loads with or without a defect.

Details for preparing these input data cards are summarized in table II.

Table II. - Summary of details for preparing input data

Card Group Identification Number of Entries List of Entries Fixed Format Columns Fixed Format Comments
5 PMEMB 4 Ncxx, Ncyy, Ncxy, Thetacs 1-40 (A8, 4E8.4) Membrane loads and angle to structural axis
PBEND 3 Mcxx, Mcyy, Mcxy 1-32 (A8, 4E8.4) Bending loads
PTRAN 2 NczzU, NczzL 1-24 (A8, 4E8.4) Transverse loads
PSHEAR 2 Ncxz, Ncyz 1-24 (A8, 4E8.4) Shear loads
PCENT 2 rpm, radius 1-24 (A8, 4E8.4) Centrifugal loads
6 CNXX 4 Upper limit, lower limit, No. cycles, and beta1 1-40 (A8, 4E8.4) in-plane membrane and bending cyclic loads
CNYY 4 Upper limit, lower limit, No. cycles, and beta1 1-40 (A8, 4E8.4) in-plane membrane and bending cyclic loads
CNXY 4 Upper limit, lower limit, No. cycles, and beta1 1-40 (A8, 4E8.4) in-plane membrane and bending cyclic loads
CMXX 4 Upper limit, lower limit, No. cycles, and beta1 1-40 (A8, 4E8.4) in-plane membrane and bending cyclic loads
CMYY 4 Upper limit, lower limit, No. cycles, and beta1 1-40 (A8, 4E8.4) in-plane membrane and bending cyclic loads
CMXY 4 Upper limit, lower limit, No. cycles, and beta1 1-40 (A8, 4E8.4) in-plane membrane and bending cyclic loads
7 LOADT 4 curve type, temperature values thermal static loads
CLOADT 4 curve type, lower or upper limit of temperature thermal cyclic loads
CYCLEST 2 No. cycles for lower and upper limit of temperature thermal cyclic loads
8 LOADH 4 curve type, moisture (%) values hygral static loads
CLOADH 4 curve type, lower or upper limit of moisture hygral cyclic loads
CYCLESH 2 No. cycles for lower and upper limit of moisture hygral cyclic loads
9 LOADE 4 curve type, voltage values electrical static loads
CLOADE 4 curve type, lower or upper limit of voltage electrical cyclic loads
CYCLESE 2 No. cycles for lower and upper limit of voltage electrical cyclic loads

Card Group V: Mechanical Static Loads

The applied loads consist of a combination of in-plane membrane loads, in-plane bending loads, out-of-plane loads, shear loads, and centrifugal loads. Each such combination constitutes a set of loading conditions, each of which consists of five cards and there are five times Nlc cards in total within this group. Nlc is the number of loading conditions. The Mechanical Load data must be in groups of five lines as shown. The example problem in table III has one set of loading conditions and is reproduced here for illustration:
mnemonic Ncxx    Ncyy    Ncxy    Thetacs       
 -1-     -2-     -3-     -4-     -5-   
1234567890123456789012345678901234567890
-------|-------|-------|-------|-------|
 PMEMB   1000.0  0.0     0.0     0.0    

mnemonic Mcxx    Mcyy    Mcxy
 -1-     -2-     -3-     -4-    
12345678901234567890123456789012
-------|-------|-------|-------|
 PBEND   0.0     0.0     0.0

mnemonic NczzU   NczzL            
 -1-     -4-     -5-    
123456789012345678901234
-------|-------|-------|
 PTRAN   0.0     0.0 

mnemonic Ncxz    Ncyz
 -1-     -2-     -3-    
123456789012345678901234
-------|-------|-------|
 PSHEAR  0.0     0.0    

mnemonic RPM     Radius
 -1-     -2-     -3-    
123456789012345678901234
-------|-------|-------|
 PCENT   0.0     0.0    

The lines containing the Mechanical Load data may be entered in any order; however, they must be in groups of five as shown above.

The membrane loads and the orientation with respect to the structural axes are specified on this card. The first entry is the mnemonic PMEMB although the older mnemonic PLOAD is also allowed. The four entries that follow the mnemonic are Ncxx, Ncyy, Ncxy, and Thetacs. The first three are the in-plane membrane force resultants defined in the structural coordinate system. The last entry, Thetacs, is the orientation of the loads with respect to the structural axes. For this example. a load of 1000 lb/in. is applied along the x-direction.

The mnemonic for the next card in this group is PBEND. The in-plane bending force resultants Mcxx, Mcyy, and Mcxy are specified (in lb-in./in.) on the card. The older PLOAD for the mnemonic is also valid. Note that for this problem no bending loads are specified. The user may completely default all three fields (by leaving blanks) following the first entry; however, the first entry is mandatory.

The out-of-plane transverse force resultants are NczzU and NczzL (defined in lb/in.) for the applied transverse force resultants on the laminate upper (top) and lower (bottom) surfaces. The mnemonic for this card is PTRAN and the older PLOAD is still valid.

The transverse shear stress resultants are Ncxz, Ncyz (defined in lb/in.). The mnemonic for this card is PSHEAR and the older PLOAD is still valid.

The centrifugal loads are defined in terms of RPM and radius. The mnemonic for this card is PCENT and the older PLOAD is still valid.

Note that, if the analysis is for more than one set of loading conditions, the user simply needs to stack up sets of five cards for each different loading condition.

If the Graphical User Interface (GUI) is used, the appropriate values are entered using the keyboard. Additional capability is invoked by clicking with the mouse on any of the buttons at the bottom of the window. A non-functioning prototype for setting the loads is available for viewing.

Card Group VI: Mechanical Cyclic Loads

The user can assess the durability/life of the composite under thermal and mechanical loads. The theoretical background and the simplified models are discussed in reference 2. Basically, the type of input needed is the lower and upper limits of the cyclic load, the number of cycles, and the cyclic degradation coefficient betal. The program uses this information and computes a complete failure strength analysis based on the first-ply failure. The failure criteria are the maximum stress criteria. The types of cyclic loads allowed are either in-plane membrane or in-plane bending. Even though there is no request for durability analysis in this example, a detailed discussion is provided herein for information.

There are six cards in this group. The first three are for in-plane membrane cyclic loads with mnemonics CNXX, CNYY, and CNXY. The last three are for in-plane bending cyclic loads with mnemonics CMXX, CMYY, and CMXY. Four entries follow the mnemonic on each card. Entries one and two are the upper and the lower cyclic load limits. The third entry is the total number of cycles to be applied. The fourth is the cyclic degradation coefficient, betal. This coefficient is usually in the range of 0.005 to 0.1 and must be obtained from actual experimental data. Note that, in the example shown in table III, all of these cards are commented out.

mnemonic Upper   Lower  #Cycles  Beta          
                                                
 -1-     -2-     -3-     -4-     -5-
1234567890123456789012345678901234567890
-------|-------|-------|-------|-------|
  CNXX   200.    100.    100000. 0.01
  CNYY  -50.    -100.    5000.   0.02
  CNXY   0.0     0.0     0.0     0.0
  CMXX   0.0     0.0     0.0     0.0
  CMYY   0.0     0.0     0.0     0.0
  CMXY   0.0     0.0     0.0     0.0

If the Graphical User Interface (GUI) is used, the appropriate values are entered using the keyboard. Additional capability is invoked by clicking with the mouse on any of the buttons at the bottom of the window. A non-functioning prototype for setting the loads is available for viewing.

Card Group VII: Thermal Loads

The thermal static loads associate a temperature with each ply layer in a laminate. This value produces a load when it is different from the cure temperature and the DataBank contains a non-zero thermal expansion coefficient. The degradation of material properties due to temperature effects may be different in each ply as the use temperature varies.

The thermal cyclic loads associate a temperature cycle with each ply layer in a laminate. One can perform durability/fatigue type analysis for thermal loads. This may be used to assess degradation due to thermal cyclic loads with or without a defect.

If the Graphical User Interface (GUI) is used, the appropriate values are entered using the keyboard. Additional capability is invoked by clicking with the mouse on any of the buttons at the bottom of the window. A non-functioning prototype for setting the loads is available for viewing. Detailed non-functioning prototypes are also available:

The Thermal loads may be specified as Constant, Linear, Parabolic, Hyperbolic, or User-defined. Of these types, Linear, Parabolic, and Hyperbolic describe the method of curve fitting the given data and interpolating to fill in the data for each ply. For more detail about the equations used, see below. The user-defined data is filled in by the user for each ply.

Card Group VIII: Hygral Loads

The hygral static loads associate a percentage moisture by weight with each ply layer in a laminate. This value produces a load when it is non-zero and the DataBank contains a non-zero moisture expansion coefficient. The degradation of material properties due to moisture effects may be different in each ply as the amount of moisture varies.

The hygral cyclic loads associate a moisture cycle with each ply layer in a laminate. One can perform durability/fatigue type analysis for hygral loads. This may be used to assess degradation due to hygral cyclic loads with or without a defect.

If the Graphical User Interface (GUI) is used, the appropriate values are entered using the keyboard. Additional capability is invoked by clicking with the mouse on any of the buttons at the bottom of the window. A non-functioning prototype for setting the loads is available for viewing. Detailed non-functioning prototypes are also available:

The Hygral loads may be specified as Constant, Linear, Parabolic, Hyperbolic, or User-defined. Of these types, Linear, Parabolic, and Hyperbolic describe the method of curve fitting the given data and interpolating to fill in the data for each ply. For more detail about the equations used, see below. The user-defined data is filled in by the user for each ply.

Card Group IX: Electrical Loads

The electrical static loads associate a voltage value with each ply layer in a laminate. This value produces a load when it is non-zero and the DataBank contains a non-zero dielectric constant. The degradation of material properties due to electrical effects may be different in each ply as the voltage varies.

The electrical cyclic loads associate a voltage cycle with each ply layer in a laminate. One can perform durability/fatigue type analysis for electrical loads. This may be used to assess degradation due to electrical cyclic loads with or without a defect.

If the Graphical User Interface (GUI) is used, the appropriate values are entered using the keyboard. Additional capability is invoked by clicking with the mouse on any of the buttons at the bottom of the window. A non-functioning prototype for setting the loads is available for viewing. Detailed non-functioning prototypes are also available:

The electrical loads may be specified as Constant, Linear, Parabolic, Hyperbolic, or User-defined. Of these types, Linear, Parabolic, and Hyperbolic describe the method of curve fitting the given data and interpolating to fill in the data for each ply. For more detail about the equations used, see below. The user-defined data is filled in by the user for each ply.

Linear

When the loads are specified as linear, the values of the loads are entered for the bottom and top surfaces of the laminate.  Interpolation is performed to obtain the values of the loads at the center of each layer.  The load is assumed to be constant throughout each layer.  When there is only one ply layer, this type is not applicable.

Let there be N layers, where each has a thickness = thi.  (Layer 1 is the bottom layer.)   The two entered load values, Y1 and Y2, are assumed to occur at positions:
     X1 = 0.
     X2 = sum{ thi }
Then the load value at any center ply position:
     xi = sum{ thj | j=1..i} - ½ thi
may be computed as:

          ( x-X2)        ( x-X1)
   y = Y1 -------  +  Y2 -------
          (X1-X2)        (X2-X1)

An example of linear input load data is:
mnemonic  Curve type   values                  
-------|-------|-------|-------|-------|
 LOADH  ; Linear     ; 2.0    ; 5.0
 CLOADH ; Linear     ; 5.0    ; 10.0
 CLOADH ; Linear     ; 10.0   ; 20.0
 CyclesH ; 2000 ; 2000

Parabolic

When the loads are specified as parabolic, the values of the loads are entered for the bottom and top surfaces of the laminate, as well as for some internal position.  The default for the internal position is the center of the laminate (which may not be the center of any ply).  Curve fitting and interpolation are performed to obtain the values of the loads at the center of each layer.  The load is assumed to be constant throughout each layer.  When there are less than three ply layers, this type is not applicable.

Let there be N layers, where each has a thickness = thi.  (Layer 1 is the bottom layer.)   The three entered load values, Y1, Y2, and Y3, are assumed to occur at positions:
     X1 = 0.
     X2 = ½ sum{ thi }      (the user may choose a different position for X2)
     X3 = sum{ thi }
Then the center of ply i occurs at position:
     xi = sum{ thj | j=1..i} - ½ thi

If the axis of the parabola is parallel to the y-axis, then the load value at any center ply position xi may be computed in the form of the Lagrange interpolating polynomial:

           ( x-X2)( x-X3)        ( x-X1)( x-X3)        ( x-X1)( x-X2)
    y = Y1 --------------  +  Y2 --------------  +  Y3 --------------.
           (X1-X2)(X1-X3)        (X2-X1)(X2-X3)        (X3-X1)(X3-X2)

This can be reduced to the form:
     y = A x2  +  B x  +  C
where the minimum or maximum occurs at xM = - B / ( 2 A ).  If xM occurs at some point between the given xi values, the minimum (or maximum) load value lies outside the range of the given yi values.  The user will be warned to check that the computed load values are those desired.

If the axis of the parabola is parallel to the x-axis, then the load value at any center ply position xi may be computed by solving the Lagrange interpolating polynomial for y:

           ( y-Y2)( y-Y3)        ( y-Y1)( y-Y3)        ( y-Y1)( y-Y2)
    x = X1 --------------  +  Y2 --------------  +  X3 --------------.
           (Y1-Y2)(Y1-Y3)        (Y2-Y1)(Y2-Y3)        (Y3-Y1)(Y3-Y2)

In the current version of ICAN/JAVA, this case has been excluded.

An example of parabolic input load data is:

mnemonic  Curve type   position  values        
-------|-------|-------|-------|-------|
 LOADT  ; Parabolic   ; 0.0040  ; 70.0  ; 80.0  ; 100.0 
 CLOADT ; Parabolic   ; 0.025   ; 85.0  ; 75.0  ; 70.0  
 CLOADT ; Parabolic   ; 0.025   ; 100.0 ; 80.0  ; 70.0  
 CyclesT ; 2000; 1000

Hyperbolic

When the loads are specified as hyperbolic, the values of the loads are entered for the bottom and top surfaces of the laminate, as well as for some internal position.  The default for the internal position is the center of the laminate (which may not be the center of any ply).  Curve fitting and interpolation are performed to obtain the values of the loads at the center of each layer.  The load is assumed to be constant throughout each layer.  When there are less than three ply layers, this type is not applicable.

Let there be N layers, where each has a thickness = thi.  (Layer 1 is the bottom layer.)   The three entered load values, Y1, Y2, and Y3, are assumed to occur at positions:
     X1 = 0.
     X2 = ½ sum{ thi }      (the user may choose a different position for X2)
     X3 = sum{ thi }
Then the center of ply i occurs at position:
     xi = sum{ thj | j=1..i} - ½ thi

In general, a hyperbola may be described by the form:
     A x2  +  B x y  +  C y2  +  D x  +  E y  +  F  =  0
where (B2 - 4 A C) > 0.

Three non-collinear points generate three equations for the six unknowns.  So there are an infinite number of hyperbolas that fit any three non-collinear points.  Even if the points were restricted to one branch of the hyperbola, they still would not determine a unique hyperbola.
However, simplifying assumptions can be made that will allow three non-collinear points to uniquely determine a hyperbola.

Hyperbolic Case 1

If the transverse axis is parallel to either the x-axis or y-axis, then B = 0.  With the further assumption that the hyperbola is equilateral (i.e., A = - C, so that the asymptotes have slopes +1 and -1), the form can be reduced to:
     x2  -  y2  +  D x  +  E y  +  F  =  0

Hyperbola oriented up or to side D

For the three points (X1,Y1), (X2,Y2), (X3,Y3), the hyperbola is determined by solving for { D, E, F }:
     X12  -  Y12  +  D X1  +  E Y1  +  F = 0
     X22  -  Y22  +  D X2  +  E Y2  +  F = 0
     X32  -  Y32  +  D X3  +  E Y3  +  F = 0

If the three points (X1,Y1), (X2,Y2), (X3,Y3) don't lie on the same branch of the hyperbola, the user will be asked to enter different values.

Hyperbolic Case 2

If the transverse axis has slope +1 or -1, then A = C = 0, and the form can be reduced to:
     x y  +  D x  +  E y  +  F  =  0

Hyperbola oriented at 45 degrees D

Because the data points must lie on the same branch of the hyperbola, it may be seen that this case only applies to monotone data.  When the data is monotone decreasing, the transverse axis has slope +1 and the branch can only be in the 1st or 3rd quadrant with respect to the asymptotes. Similarly, when the data is monotone increasing, the transverse axis has slope -1 and the branch can only be in the 2nd or 4th quadrant with respect to the asymptotes.  If the data is not monotone, the user will be asked to enter different values.

For the three points (X1,Y1), (X2,Y2), (X3,Y3), the hyperbola is determined by solving for { D, E, F }:
     X1 Y1  +  D X1  +  E Y1  +  F  =  0
     X2 Y2  +  D X2  +  E Y2  +  F  =  0
     X3 Y3  +  D X3  +  E Y3  +  F  =  0
Then the load value at any center ply position xi may be computed as:

           D x + F
    y = - ---------
             x + E 

An example of hyperbolic input load data is:

mnemonic  Curve type   position  values        
-------|-------|-------|-------|-------|
 LOADT  ; Hyperbolic  ; 0.0040  ; 70.0  ; 80.0  ; 100.0 
 CLOADT ; Hyperbolic  ; 0.025   ; 85.0  ; 75.0  ; 70.0  
 CLOADT ; Hyperbolic  ; 0.025   ; 100.0 ; 80.0  ; 70.0  
 CyclesT ; 2000; 1000

User-defined

When the loads are specified as user-defined, the values of the loads are entered for each layer.  The values are assumed to be at the center of each layer, and the load is assumed to be constant throughout each layer. 

An example of user-defined input load data is:

mnemonic  Curve type     values        
-------|-------|-------|-------|-------|
 LOADH  ; User-defined ; 1.0; 2.0; 3.0; 4.0; 9.0; 
 LOADH  ; MORE         ; 10.0; 
 CLOADH ; User-defined ; 1.0; 2.0; 3.0; 4.0; 9.0; 
 CLOADH ; MORE         ; 10.0; 
 CLOADH ; User-defined ; 2.0; 4.0; 4.0; 4.0; 12.0; 
 CLOADH ; MORE         ; 20.0; 
 CyclesH ; 2000; 1000



Return to ICAN/JAVA home page.
Responsible Official: Chris Chamis
Last updated on Mar 25, 2008, 14:14:26 EDT
by Louis Handler of the NASA Glenn Flight Software Engineering branch.
Please send notice of any problems to: Louis.M.Handler@nasa.gov

(NASA Privacy Policy and Important Notices)