****fe_transfer#

Introduction#

It allows to transfer the nodal and integration point fields from one mesh to another. To run this problem, launch

Zrun -fe_transfer problem.inp

If the input file contains only ****fe_transfer block, run simply

Zrun problem.inp

Syntax#

****fe_transfer \(~\,\) ***new_mesh new_pb_name \(~\,\) ***old_mesh old_pb_name \(~\,\) [ **<TRANSFORMERS> ] [ ***use_deformed_mesh ] \(~\,\) ***format fmt \(~\,\) ***cards [ last || ids ] [ ***nodal_parameter_transfer <method> \(~\,~\,~\,~\,\) *fields field1fieldN ] [ ***integ_var_transfer || ***integ_transfer \(~\,~\,~\,~\,\) <TRANSFER_VARIABLES> ] [ ***nodal_var_transfer || ***nodal_transfer \(~\,~\,~\,~\,\) <TRANSFER_VARIABLES> ] [ ***only_transfer_elset elset ] [ ***preserve_elset elsets ] [ ***preserve_parts ] [ ***correct_contact warning_dist ] [ ***mesh_type mesh_type ] [ ***element_type default_elem_type ] [ ***element_type_by_elset ] \(~\,~\,\) [ *section <PREDEFINED_SECTION> ] [ ***local_frame_def local_frames_from_a_file] [ ***material \(~\,~\,~\,~\,\) material definition ] ****return

***use_deformed_mesh

A flag to use positions of the deformed configuration (By default false).

***format fmt

The format of the output database. By default Z7.

***cards [ last || ids ]
  • last: to transfer only the last available map.

  • ids: the ids of maps to transfer. For example: 1 2, or 1 5-10 15 (i.e., 1 5 6 7 8 9 10 15), or 1,5-10,15.

By default, all maps are transferred.

***mesh_type mesh_type

specifies the problem type for the mesh. By default, it is set to MECHANICAL_MESH. For thermal problems, use THERMAL_MESH, and so on.

***element_type elem_type

define the finite element formulation. For example, plane_stress, small_deformation, etc.

***element_type_by_elset

define the type of elements per elset.

*section <PREDEFINED_SECTION>

assigns section properties to a shell mesh.

***new_mesh new_pb_name

new mesh file name.

***old_mesh old_pb_name

old mesh file name.

**TRANSFORMERS

meshers to apply on the old mesh. For example, one can define an elset to be used in the transfer.

***integ_var_transfer || ***integ_transfer

activate transfer of integration points fields.

***integ_transfer \(~\,~\,\) *integ_transfer type \(~\,~\,\) *mapping method \(~\,~\,\) *elset_by_elset elset1elsetN \(~\,~\,\) *locator ltype \(~\,~\,\) *use_ctmat \(~\,~\,\) *fields field1fieldQ

*integ_transfer method options

This option is available only for integration-point variables. The supported transfer methods are:

nearest_gp

this transfer method for each integration point in the current mesh, locate the nearest one in the loaded initialization mesh and simply copy the value to transfer.

nearest_gp_corrected [ dtime ]

This method starts with a transfer using nearest_gp of integration points variables. The gradient of transferred DOFs (displacement, …), denoted by \(\varepsilon_{\star}\), is usually different than the transferred gradient denoted by \(\varepsilon_{gp}\). We assume that nodal values of DOFs are correct, and to obtain the same gradient \(\varepsilon_{\star}\), the material model will be integrated for an increment of gradient \(\Delta \varepsilon = \varepsilon_{\star} - \varepsilon_{gp}\). To prevent stress relaxation in time-dependent material models, the dtime parameter can be adjusted (default value: 1).

moving_least_square type [ distance ]

MLS transfers fields by approximating the field at each target point using a weighted polynomial based on nearby source points. The local neighborhood is defined by a set of closest source points (within a radius given by distance), with contributions decreasing with distance. This method is not well suited for fields with discontinuities, as it tends to diffuse sharp gradients. The available types are: default_3D, linear_3D, default_2D, linear_2D (an alternative name exist for these types with an additional prefix mls_). By default distance = 1.e-6.

*mapping method

allow to transfer nodal variables between meshes of different dimensions (no mapping if not specified). The possible mapping methods are summarized in ***initialize_with_transfer.

*elset_by_elset elset1elsetN

Limit field transfer so each elset only receives values from its own region. This may be necessary when fields are discontinuous across elset interfaces.

*locator ltype

Defines the algorithm used to determine which element of a mesh a given point belongs to. By default ltype is bb_tree (Recommended).

*use_ctmat

use integration point variables extrapolated at nodes within each element (no averaging).

*fields field1fieldQ

the name of fields to transfer.

***nodal_var_transfer || ***nodal_transfer

activate transfer of nodal fields.

***nodal_transfer \(~\,~\,\) *mapping method \(~\,~\,\) *elset_by_elset elset1elsetN \(~\,~\,\) *locator ltype \(~\,~\,\) *fields field1fieldQ

***nodal_parameter_transfer

transfer of parameters available at nodes. It has the same options as ***nodal_var_transfer.

***only_transfer_elset elset

a flag to transfer only fields for the given elset. For elements outside this elset, the values are set to zero. Note that this option is ignored if ***preserve_elset is specified.

***preserve_elset list of elsets

constrains field transfer to within each element set only (similar to *elset_by_elset above). If the specified elset(s) do not cover the full mesh, the remaining elements are grouped into a complementary elset subject to the same restriction.

***correct_contact warning_dist

to correct contact overclosure. This functionality is implemented for crack propagation applications. The contact is corrected only for crack lips named SIDE0 and SIDE1.

***local_frame_def local_frames_file

give a file containing the definition of local frames.

***material

material behavior definition

**ipset ipset || **elset elset

the integration point set or the element set.

*file file_name [ pos ] | *this_file [ pos ]

the name of the file that defines the material behavior. If the file contains several behaviors, use pos to select one (defaults to 1, the first).

*integration options

see integration method.

*rotation options

see material rotation.

*plane_stress

imposes plane stress condition, i.e. \(\sigma_{33}=0\).

Examples#

See some input files in the folder $Z7PATH/TESTS/Transfer_test/INP. Here are some examples of input files for field transfer.

****fe_transfer
 ***new_mesh cube10x10.geof
 ***old_mesh cube6x6
 ***nodal_parameter_transfer
   *fields temperature
 ***only_transfer_elset top
 ***cards last
****return
****fe_transfer
 ***new_mesh cube_tetra
 ***old_mesh cube_tension
 ***use_deformed_mesh
 ***nodal_parameter_transfer default
   *fields temperature
 ***integ_transfer
   *integ_transfer moving_least_square default_3D 1.
   *locator bb_tree
   *use_ctmat
 ***cards last
 ***material
   *file cube_tension.inp
****return
****fe_transfer
 ***new_mesh cube_tetra
 ***old_mesh cube_tension
 ***integ_transfer
   *integ_transfer nearest_gp_corrected 0.1
 ***cards 2-5
 ***material
   *file cube_tension.inp
****return