**file#

Description#

This is the default parameter type. It allows mixed use of uniform parameter values, parameter values specified by a function and binary file records containing the values of the parameter field. This parameter type is very similar to the ascii_file, but binary files generally load faster, which is important for very large parameter files. Note: some command options are available only in Z-set version 8.4 or newer.

Syntax#

**file param-name [ *node ] [ *ip ] [ *node_averaged ] [ *dtime ] [ *rec_size size ] [ *table_file tablefile name ] [ *cycle_conversion start  end  period ] \(~\,~\,\) time uniform value \(~\,~\,\) time function func; \(~\,~\,\) time file filename  record

**file

takes param-name (a character string) as argument for specifying the name of the parameter. This name will be used to reference the parameter values elsewhere in the problem.

*node

specifies that the parameter is applied at nodes. This is the default.

*ip

specifies that the parameter is applied at integration points.

*node_averaged

specifies that the parameter is applied at nodes, the nodal values then averaged, so one value of parameter for each element is obtained.

*dtime

converts the absolute time values given in the table below to time increments.

*table_file

takes as argument the character string table_file name as the name of the file from which the table containing the list of times or time increments with their associated parameter types (uniform, function or file) can be read. This is an alternative to directly specifying the table here (see below), and can be useful for automatic table generation by scripts.

*rec_size

enter an integer defining the record size. This value should be the number of nodes for *node type parameters, or the total number of integration points for *ip type parameters.

*cycle_conversion

real values for start time of cycles, end time, and cycle period are to be input. This command generates a variable time which can be used in function records to define the time.

The table specifying parameter values contain the following elements:

time

a time value for the given parameter data. Parameter values during the calculation will be found using linear interpolation between given times. Do not forget to specify a value for time = 0.0. If the *dtime command is given, the time value becomes a time increment value. The time values may also be specified as a FUNCTION. This is especially useful in conjunction with the *cycle_conversion command (see example below).

value

a uniform parameter value.

func

a function specified in the standard Z-set manner. Do not forget the ; at the end.

filename

name of the binary file to use. Different files can be given for different time values.

record

record number in the file. These are numbered from zero (0 is the first record).

File format#

The format for the parameter files consists of an ordered list of float (single precision floating point) values in big endian format. The ordering corresponds to the nodal numbering in the problem.geof file. Each record therefore comprises only this list of float values for each node. The record numbers are noted to be the record number (number of the block storing the entire nodal data set) and not the file position as would be read in C or Fortran programming.

Examples#

The example below shows the use of mixed parameter types in order to impose a variable temperature field.

***parameter
 **file temperature
  *node
  *rec_size 8
   0.    uniform 40.
   1.    file  ../DATA/thermal_field.node 1
   2.    file  ../DATA/thermal_field.node 2
   3.    uniform 120.

Here is a relatively complex example using a function to repeat values for many cycles. The time values are now specified using a function.

***parameter
 **file temperature
  *node
  *rec_size 757
  *cycle_conversion 1. 1.e20 60.0
   0.                             uniform  23.0
   function 1.0+      cycle*60.0; file     mechanical.data  20
   function 1.0+ 10.0+cycle*60.0; file     mechanical.data  5
   function 1.0+ 14.0+cycle*60.0; file     mechanical.data  6
   function 1.0+ 18.0+cycle*60.0; file     mechanical.data  7

   ...

   function 1.0+ 56.0+cycle*60.0; file     mechanical.data  19
   function 1.0+ 60.0+cycle*60.0; file     mechanical.data  20