Project the eigenvectors of a solid mesh solution to the fluid nodes.


acuPev [options]


AcuSolve Preparatory Program


AcuPev is a utility program that projects a solution from a solid mesh eigenvalue problem to a set of given fluid nodes. The results are written to disk in a format suitable for performing fluid-structure interaction (FSI) simulations in AcuSolve. Two formats are supported: raw and nike. The first uses separate files for coordinates, connectivity, and each eigen mode. The second reads a Nike3D solution file, which contains all the necessary data.

In the following, the full name of each option is followed by its abbreviated name and its type. For a general description of option specifications, see Command Line Options and Configuration Files. See below for more individual option details:

help or h (boolean)
If set, the program prints a usage message and exits. The usage message includes all available options, their current values, and the place where each option is set.
problem or pb (string)
The name of the problem. This is used to generate file names.
project_from or from (enumerated)
Project from this format:
Project from raw file. Requires solid_coordinates_file, solid_connectivity_file_list, and solid_mode_file_list.
Project from Nike3D file. Requires input_file_name.
input_file_name or file (string)
The name of the file from which the solid mesh and eigenvalue solution is to be imported. Used with nike format.
solid_coordinates_file or scrd (string)
Nodal coordinates file name of the solid mesh. The file must contain four columns: node number and x, y, z coordinates. Used with raw format.
solid_connectivity_file_list or scnn (string)
Comma-separated list of connectivity files of the solid mesh. The shape of the elements is extracted from the number of columns in each file. The elements are assumed to be either 4-node tetrahedra or quads. See solid_connectivity_main_dimension if the file has 5 columns; 5-node pyramids if 6 columns; 6-node wedges if 7 columns; 8-node bricks if 9 columns; and 10-node tetrahedra if 11 columns. Used with raw format.
solid_connectivity_main_dimension or scnndim (enumerated)
Dominant dimensionality of the solid mesh connectivity:
Two dimensional; 4-node connectivity files are quads.
Three dimensional; 4-node connectivity files are test.
solid_mode_file_list or smode (string)
List of mode (eigenvalue/vector) files from the solid mesh solution. Used with raw format.
coordinates_file or crd (string)
Nodal coordinates file name of the fluid mesh. The file must contain four columns: node number and x, y, z coordinates. If coordinates_file is set to _auto, problem.crd and problem.crd.B are assumed.
node_file_list or node (string)
Comma-separated list of node files of the fluid mesh onto which the eigenvectors are projected.
surface_file_list or srf (string)
Comma-separated list of surface files of the fluid mesh onto which the eigenvectors are projected.
contact_constraints_file or ccf (string)
Contact constraints file name. The file must contain one line for each constraint and 10 columns: a point on the flexible body, x, y, z coordinates, a point on the rigid plane, x, y, z coordinates, the normal to the rigid plane, x, y, z components, and the restitution coefficient. If _none, no contact is assumed. If not _none, the file contact_file.cmd is produced that contains the data required for contact by the FLEXIBLE_BODY command.
generate_input_commands or ginp (boolean)
If set, a FLEXIBLE_BODY command is printed out which may be placed in the input file with little modification.
line_buff or lbuff (boolean)
Flush standard output after each line of output.
verbose or v (integer)
Set the verbose level for printing information to the screen. Each higher verbose level prints more information. If verbose is set to 0, or less, only warning and error messages are printed. If verbose is set to 1, basic processing information is printed in addition to warning and error messages. This level is recommended. verbose levels greater than 1 provide information useful only for debugging.


To use the raw format, issue the command:
acuPev -pb plate -from raw -scrd solid.crd -scnn solid.cnn \
-smode mode01.dat,mode02.dat -crd fluid.crd -node surface.nod \
-ccf contact.dat -ginp TRUE
Alternatively, place the options in the configuration file Acusim.cnf as:
problem= plate
project_from= raw
solid_coordinates_file= solid.crd
solid_connectivity_file_list= solid.cnn
solid_mode_file_list= mode01.dat,mode02.dat
coordinates_file= fluid.crd
node_file_list= surface.nod
contact_constraints_file= contact.dat
generate_input_commands= TRUE
and issue the command:
One file from either node_file_list or surface_file_list is required. More may be supplied. The nodes are extracted from all the surface files and combined with the nodes from all the node files. Then the eigenvectors from each mode in solid_mode_file_list are projected to the coordinates corresponding to the combined nodes. The output is three files: problem.crd.xmd, problem.crd.ymd, and problem.crd.zmd. These are the x, y, and z components of the projected eigenvectors. The first column in each file is the fluid node number. The rest of the columns are the eigenvectors, one for each mode in solid_mode_file_list, in the same order. These files may be passed directly to the nodal_modes parameter of the NODAL_BOUNDARY_CONDITION command. AcuPev also sends lines like:
acuPev: Eigenvalue 1 vec 12/linf = 2.50000e+00 ...
acuPev: Eigenvalue 2 vec 12/linf = 4.00000e+00 ...

to standard output. These are the eigenvalues that are used in the stiffness parameter of the FLEXIBLE_BODY command. If contact_constraints_file is not _none, then the contact data from this file is read and a file named contact_file.cmd is produced that may be passed directly to the contact_constraints parameter of the FLEXIBLE_BODY command. Setting generate_input_commands to TRUE generates a FLEXIBLE_BODY command that is sent to standard output. This command usually requires little modification to be used in the input file.

The format of both the solid and fluid coordinates files are the same as in the COORDINATES command. The format of the files in solid_connectivity_files is the same as in ELEMENT_SET; here the topology is determined by the number of columns. solid_connectivity_main_dimension is used to distinguish between quadrilaterals and tetrahedra. The format of the surface files is the same as in the various surface commands: elementID, surfaceID, and several columns for the surface connectivity. AcuPev ignores the first two columns and uses the connectivity as above. Each of the mode files has the following format. The first line contains two columns: index eigenvalue. All the subsequent lines contain four columns: nodeId x-eigenvector y-eigenvector z-eigenvector. index must match the order in solid_mode_file_list. That is, index = 1 for the first file given, and so on. nodeId and the number of rows for the eigenvectors must match that of solid_coordinates_file. The file referred to by contact_constraints_file consists of one line for each constraint and 10 columns: a point on the flexible body, x, y, z coordinates, a point on the rigid plane, x, y, z coordinates, the normal to the rigid plane, x, y, z components, and the restitution coefficient. See the FLEXIBLE_BODY command for a description of these quantities.

The macro acuAnsys2Pev.mac is available from within ANSYS to translate an ANSYS solution to raw format files.

The stand-alone Python script file is available to extract the needed data from MSC-Nastran eigenvalue solution files and translate them to raw format files.

A Nike3D solution file may also be used. For example,
acuPev -pb plate -from nike -file nike_plate -crd fluid.crd -node surface.nod \
-ccf contact.dat -ginp TRUE

This produces the same output files as above.