***table
#
Description#
The procedure ***table
indicates a loading table definition in
time. The table will be available in the other commands of the .inp
file such as the boundary conditions or the external parameter
definitions. Loading tables are currently only defined as a series of
time-magnitude points which are linearly interpolated to intermediate
times.
The tables are named with arbitrary, user-defined character strings which are used in the syntax of other commands to indicate which table to use. There are no conditions on the number or size of the tables.
Syntax#
Loading tables are assembled through the use of the following sub-commands:
***table
\(~\,\) **name
name
\(~\,~\,\) *time
\(t_1\) … \(t_n\)
\(~\,~\,\) *value
\(v_1\) … \(v_n\)
\(~\,\) **cycle
name \(t_{ini}\) \(t_{end}\)
\(~\,~\,\) *time
\(t_1\) … \(t_n\)
\(~\,~\,\) *value
\(v_1\) … \(v_n\)
\(~\,\) **function
name FUNCTION
\(~\,\) **file
name file_name ctime cvalue
**name
Specifies that a simple table is to be created with name as given directly following the
**name
keyword. A table defined as such is assembled with the*time
and*value
options.*time
indicates that a list of real values will follow giving the individual time points of the table. These time values are in absolute time measured from the beginning of the problem. The current version of the code requires in most applications that the table be able to give a value for all valid times in the problem. This is noted to begin with the initial time \(t=0\). Most tables will therefore be defined starting with this initial point.
*dtime
This option serves the same function as the
*time
command, but is defined in incremental form. The option is useful for complex loadings where it is easier to think in incremental form, or as the only way to currently model step loading (using segments of \(\Delta t=0\)).*value
This option indicates that a series of real numbers will be given to define the table values. It is necessary that there be exactly one value for each time specified with the
*time
command. As the time definitions are given from the beginning of the problem, there must be a corresponding initial value for time \(t=0\). This value will normally be zero in the case of boundary condition loading, as the problem may not begin in a pre-deformed state through standard boundary conditions (use a restart procedure with the pre-deformed structure stored in the restart file). If one table is succeeded by another, it is necessary to ensure the continuity from one table to another.
**cycle
name \(t_{ini}\) \(t_{end}\)In order to generate cyclic loadings it is convenient to simply specify a load cycle to be repeated a number of times. This option does exactly that with the initial time for the cycles given by \(t_{ini}\) (a real value). The cycles will continue repeated until the time \(t_{end}\) (real) regardless if that time is at the end point or an intermediate point in the cycle. The cycle is defined as a simple table above using the
*time
and*value
options, only that the time will be in a local cycle scale. The start of the cycle (first at time \(t_{ini}\)) is at the local time zero. The zero time point must therefore always be given for the cycle table format. In contrast with the standard table, the corresponding initial value is not usually zero, as some pre-loading may have been applied before the cycles begin. This command is examined more fully in the examples below. zitem**function This allows to generate tables defined by functions depending ontime
. name specifies the table name followed by aFUNCTION
object. The variabletime
MUST be the only argument of the function.**file
This allows to generate tables defined by a file (column format). name specifies the table name. file_name specifies the file name. ctime specifies the column of file_name representing the time and cvalue the column of file_name representing the table value (the first column is numbered 1).
Example#
1. Suppose that a U2 displacement is to be applied to the top surface of
a structure. This surface will have a node set defined by the user in
the geometry description with the name top
. The loading profile is
to be:
On a face set named inter
a pressure is also to be applied. The
pressure value will be zero until \(t=1\), after which there is a
ramp loading in the pressure until \(t=7\) at which point the
pressure is 100.
The loading sequences will correspond to the points of load change:
**sequence
*time 1. 5. 7.
Declaration of the displacement and pressure boundary conditions are written:
***bc
**impose_nodal_dof
haut U2 1. tab1
**pressure inter 100. tab2
Note the two different table names tab1
and tab2
because the
loading waveforms are different. The table definitions may be written
as:
***table
**name tab1
*time 0. 1. 5. 7.
*value 0. 10. -10. -10.
**name tab2
*time 0. 1. 7.
*value 0. 0. 1.
2. Cyclic loading is given as a second example. This case represents the calculation of a structure under a pre-loaded pressure of 200 MPa followed by a cycling of the pressure about the mean value of 200 MPa with a cyclic magnitude of 100 MPa. After 10 cycles the pressure is returned to zero to observe the residual stress field.
***resolution
**sequence
*time 120.
*increment 5
**cycles 10
*dtime 75. 75. 75. 75.
*increment 10
*algorithm p1p2p3
**sequence
*dtime 20.
*increment 5
***bc
**pressure
top 1.0 tab1 cycs tab2
***table
**name tab1
*time 0.0 120.
*value 0.0 200.
**cycle cycs 120. 3120.
*time 0.0 75. 150. 225. 300.
*value 200.0 250. 200. 150. 200.
**name tab2
*time 3120.0 3140.
*value 200.0 0.