VECFEM3 Reference Manual: idevem
Type: FORTRAN routine
NAME
idevem - reads an I-DEAS universal file
SYNOPSIS
- CALL IDEVEM(
-
LIVEM, IVEM, LNEK, NEK,
LRPARM, RPARM, LIPARM, IPARM, LDNOD, DNOD, LRDPRM, RDPARM,
LIDPRM, IDPARM, LNODN, NODNUM, LNOD, NOD, LNOPRM, NOPARM,
LBIG, RBIG, IBIG)
- INTEGER
-
LIVEM, LNEK, LRPARM, LIPARM, LDNOD, LRDPRM,
LIDPRM, LNODN, LNOPRM, LBIG
- INTEGER
-
IVEM(LIVEM), NEK(LNEK), IPARM(LIPARM), DNOD(LDNOD),
IDPARM(LIDPRM), NODNUM(LNODN), IBIG(*)
- DOUBLE PRECISION
-
RPARM(LRPARM), RDPARM(LRDPRM),
NOD(LDNOD), NOPARM(LNOPRM), RBIG(LBIG)
PURPOSE
I-DEAS is a program for the pre- and postprocessing of the FEM
(in structural analysis). The generation of the FEM mesh is supported
by graphical equipment. The solutions can be plotted. The interface to
FEM programs is the I-DEAS universal file, which contains all
information of the mesh.
idevem reads a universal file on the first process and distributes
the mesh to the processes.
The element groups are created from the geometrical properties of the
elements. The physical property table number assigned to the elements
during the mesh generation by I-DEAS is stored as the second integer vector
parameter and allows to refere a material table (not the I-DEAS table).
The node forces form the group of the nodal elements (CLASS=0)
and the nodal displacements specify the geometrical nodes with Dirichlet
conditions. The force components and the values of the displacements
are stored as vector parameters.
The interface supports only isoparametrical meshes. For the use of mixed finite
element methods I-DEAS can be used to create a geometrical mesh. From this
mesh the mixed finite element mesh can be created
by vemgen(later) or vemge2.
idevem can be called without a preceding vemdis call,
but you have to call vemdis before you call any other
VECFEM routine.
ARGUMENTS
- LIVEM integer, scalar, input, local
-
Length of the integer information vector,
LIVEM>= MESH+ NINFO.
- IVEM integer, array: IVEM(LIVEM), input/output, local/global
-
Integer information vector.
- (1)=MESH, input, local
-
Start address of the mesh informations in IVEM,
MESH>203+ NPROC.
- (2)=ERR, output, global
-
Error number.
0 | program terminated without error. |
90 | LBIG is too small. |
95 | mesh arrays are too small. |
96 | unexpected element type. |
97 | DIM or NK is illegal. |
99 | fatal error. |
- (5)=NIVEM, output, local
-
Used length of IVEM.
- (120)=LOUT, input, local
-
Unit number of the standard output file, normally 6.
- (121)=OUTCNT, input, local
-
Output control flag, normally 1.
0 | only error messages are printed. |
>0 | a protocol is printed. |
- (122), input, local
-
Unit of the universal file. The unit is only used on the process 1. On
the assigned data set the 'REWIND'-command has to be executable.
- (124)=COMP6, input, local
-
If COMP6=0, the restrained displacements in x-direction define
the Dirichlet conditions for component 1, in y-direction for component 2,
etc. In the other
cases the restrained displacements
in x-direction in the restraint set of id RNUM
define the Dirichlet conditions for component RNUM.
- (200)=NPROC, input, global
-
Number of processes, see combgn.
- (201)=MYPROC, input, local
-
Logical process id number, see combgn.
- (202)=NMSG, input/output, global
-
Message counter. The difference of the input and the output values
gives the number of communications during the idevem call.
- (204)=TIDS(1), input, global
-
Begin of the list TIDS which defines the mapping of the
logical process ids to the physical process ids. See combgn.
- (MESH), input/output, local
-
Start of mesh informations, see mesh.
- (MESH+2)=NK, input, global
-
Number of solution components, 1<=NK<=6.
- (MESH+3)=DIM, input, global
-
Space dimension, 1<=DIM<=3.
- LNEK integer, scalar, input, local
-
Length of the element array.
- NEK integer, array: NEK(LNEK), output, local
-
Array of the elements, see mesh.
- LRPARM integer, scalar, input, local
-
Length of the real parameter array.
- RPARM double precision, array: RPARM(LRPARM), output, local
-
Real parameter array, see mesh.
- LIPARM integer, scalar, input, local
-
Length of the integer parameter array.
- IPARM integer, array: IPARM(LIPARM), output, local
-
Integer parameter array, see mesh.
- LDNOD integer, scalar, input, local
-
Length of the array of the Dirichlet nodes.
- DNOD integer, array: DNOD(LDNOD), input, local
-
Array of the Dirichlet nodes, see mesh.
- LRDPRM integer, scalar, input, local
-
Length of the real Dirichlet parameter array.
- RDPARM double precision, array: RDPARM(LRDPRM), output, local
-
Array of the real Dirichlet parameters, see mesh.
- LIDPRM integer, scalar, input, local
-
Length of the integer Dirichlet parameter array.
- IDPARM integer, array: IDPARM(LIDPRM), output, local
-
Array of the integer Dirichlet parameters, see mesh.
- LNODN integer, scalar, input, local
-
Length of the array of the id numbers of the geometrical nodes.
- NODNUM integer, array: NODNUM(LNODN), output, local
-
Array of the id numbers of the geometrical nodes, see mesh.
- LNOD integer, scalar, input, local
-
Length of the array of the coordinates of the geometrical nodes.
- NOD double precision, array: NOD(LNOD), output, local
-
Array of the coordinates of the geometrical nodes, see mesh.
- LNOPRM integer, scalar, input, local
-
Length of the array of the node parameters.
- NOPARM double precision, array: NOPARM(LNOPRM), output, local
-
Array of the node parameters, see mesh.
- LBIG integer, scalar, input, local
-
Length of the real work array. The needed length of LBIG
depends on the given mesh. A
minimal length of LBIG cannot be given. It should be as
large as possible.
- RBIG double precision, array: RBIG(LBIG), work array, local
-
Real work array.
- IBIG integer, array: IBIG(*), work array, local
-
Integer work array, RBIG and IBIG have to be defined
by the EQUIVALENCE statement.
EXAMPLE
See vemexamples.
METHOD
On the first process
idevem passes through the I-DEAS universal file twice. In the first
pass the program checks the universal file and computes the needed
length for the mesh arrays. In the second pass idevem reads the
mesh data and distributes the mesh to the other processes so that the
mesh arrays are occupied evenly.
The Nodes
If DIM=3, idevem reads the x-,y- and z-coordinates from the I-DEAS
universal file. If DIM=2, only the x- and y-coordinates are read,
and if DIM=1, only the x-coordinate is read.
The Elements
The following table shows
all I-DEAS element types which
can be read by idevem (TN : Thin Shell; SOL : Solid):
I-DEAS | VECFEM
|
Element | ELID | GEOTYP | FORM | CLASS
|
LINEAR BEAM (LINE) | 21 | 2 | 2 | 1
|
PARABOLIC BEAM | 24 | 3 | 2 | 1
|
TN LINEAR TRIANGLE | 91 | 3 | 3 | 2
|
TN PARABOLIC TRIANGLE | 92 | 6 | 3 | 2
|
TN CUBIC TRIANGLE | 93 | 9 | 3 | 2
|
TN LINEAR QUADRILATERAL | 94 | 4 | 4 | 2
|
TN PARABOLIC QUADRILATERAL | 95 | 8 | 4 | 2
|
TN CUBIC QUADRILATERAL | 96 | 12 | 4 | 2
|
SOL LINEAR TETRAHEDRON | 111 | 4 | 4 | 3
|
SOL PARABOLIC TETRAHEDRON | 118 | 10 | 4 | 3
|
SOL LINEAR WEDGE (PRISM) | 112 | 6 | 6 | 3
|
SOL PARABOLIC WEDGE (PRISM) | 113 | 15 | 6 | 3
|
SOL CUBIC WEDGE (PRISM) | 114 | 24 | 6 | 3
|
SOL LINEAR BRICK (HEX) | 115 | 8 | 8 | 3
|
SOL PARABOLIC BRICK (HEX) | 116 | 20 | 8 | 3
|
SOL CUBIC BRICK (HEX) | 117 | 32 | 8 | 3
|
The id numbers of the geometrical nodes which define the elements are
stored in NEK.
The groups are split up by the element parameters
(GEOTYP,FORM,CLASS) so that a minimal number of groups will be
created. The element number of I-DEAS is always stored as the first
integer vector parameter. The physical property table number assigned to
the element ias stored as the second integer vector parameter.
idevem does not read the property identities of the I-DEAS elements.
Example: You create a mesh volume with the solid cubic wedge (24 nodes)
using the physical property table 5. Then
idevem creates at least one group with:
GEOTYP = 24
FORM = 6
CLASS = 3
first integer vector parameter = element number in I-DEAS
second integer vector parameter = 5
Nodal Forces
Nodal elements (CLASS=0) are created from the nodal forces. They
form one group. The load set id number is stored
as the first integer vector parameter. There is no element number. Additionally
the six force components are stored as real vector
parameters. So the components in x-direction
are stored as the first real vector parameter, the y-components are
the second real vector parameter and so on up to the sixth real
vector parameter.
Example: Create a nodal force with:
X-force = 1.0
Y-force = 2.0
Z-force = 3.0
X-moment = 0.0
Y-moment = 0.0
Z-moment = 0.0
I-DEAS lays down these nodal forces in the current structural
load set. If a structural load set was created, I-DEAS
generates a load set number (LNUM).
first integer vector parameter = LNUM
first real vector parameter = 1.0
second real vector parameter = 2.0
third real vector parameter = 3.0
fourth real vector parameter = 0.0
fifth real vector parameter = 0.0
sixth real vector parameter = 0.0
Dirichlet Conditions COMP6=0
The nodal displacements in the restraint sets specify the nodes
where Dirichlet conditions are dictated. So the nodal displacement
in x-direction specifies the Dirichlet conditions for the first
component of the solution, the y-direction specifies the Dirichlet
conditions for the second component of the solution, and so on up
to the NK-th component of the solution. All restraint sets are
considered and their
restraint set numbers are stored as the first integer vector
parameter. Additionally the values of the nodal displacement
components are stored as real vector parameters. So
the value of the nodal displacement in x-direction is the first
real vector parameter for component 1, the value of the nodal
displacement in y-direction is the real vector parameter for
component 2 and so on up to the NK-th component.
Example: Create a nodal restraint set with:
X-translation = 1.0
Y-translation = free
Z-translation = 3.0
X-rotation = 0.0
Y-rotation = 0.0
Z-rotation = 0.0
I-DEAS lays down these nodal restraints in the current
restraint set. If a restraint set was created, I-DEAS
generates a restraint set number (RNUM).
first integer vector parameter = RNUM for component 1
first integer vector parameter = RNUM for component 3
first integer vector parameter = RNUM for component 4
first integer vector parameter = RNUM for component 5
first integer vector parameter = RNUM for component 6
first real vector parameter = 1.0 for component 1
first real vector parameter = 3.0 for component 3
first real vector parameter = 0.0 for component 4
first real vector parameter = 0.0 for component 5
first real vector parameter = 0.0 for component 6
Dirichlet COMP6=1
The nodal displacements in the restraint sets specify the nodes
where Dirichlet conditions are dictated. The nodal displacement
in x-direction in the restraint set RNUM specifies the Dirichlet conditions
of the RNUM-th component of the solution. Additionally
the value of the nodal displacement in x-direction is the first
real vector parameter for component RNUM.
Example: Create nodal restraint sets with:
restraint set 1 X-Translation = 1.0
restraint set 2 X-Translation = 5.0
restraint set 3 X-Translation = 8.0
There is no integer vector parameter.
first real vector parameter = 1.0 for component 1
first real vector parameter = 5.0 for component 2
first real vector parameter = 8.0 for component 3
REFERENCES
[FAQ], [DATAMAN], [DATAMAN2], [P_MPI], [I-DEAS].
SEE ALSO
VECFEM, vemcompile, vemrun, vemhint,
mesh, vemexamples, idve97,veid97,
veid99, vemide, vemgen(later), vemge2
COPYRIGHTS
Program by C. Stocker, L. Grosz, 1991-1996.
Copyrights by Universitaet Karlsruhe 1989-1996.
Copyrights by Lutz Grosz 1996.
All rights reserved. More details see VECFEM.
by L. Grosz, Auckland , Thursday, June 08, 2000.