
|
In the GiD postprocess you can study the results obtained from a solver program. The communication between the solver and the GiD Postprocess is made using files.
The solver program has to write the results in a file that must have the extension .flavia.res and its name must be the project name.
The solver program can also (it is not mandatory) give to GiD the postprocess mesh, and should have the extension .flavia.msh.
If this mesh is not provided by the solver program, GiD uses in the post-process, the preprocess mesh.
The extensions .msh and .res are also allowed, but
only the files with the extensions .flavia.res, and eventually .flavia.msh,
will be automatically read by GiD when postprocessing the GiD project.
So, post-processing data files are ASCII files, and can be separated into two
categories:
- Mesh Data File:
project_name.flavia.msh for volume and surface (3D or 2D) mesh
information and
- Results Data File:
project_name.flavia.res for results information.
Note: ProjectName.flavia.msh handles meshes of different element types:
points, lines, triangles, quadrilaterals, tetrahedras and hexahedras.
The old format, which only handles one type of element per file, is still supported inside GiD (see section Old postprocess mesh format).
If a project is loaded into GiD, when changing to PostProcess it will look
for ProjectName.flavia.res. If a mesh information file with name ProjectName.flavia.msh
is present, it will also be read, regardless of the information available from PreProcess.
- ProjectName.flavia.msh:
The first file, which is named
ProjectName.flavia.msh, should contain nodal coordinates
of the 3D, and its nodal connectivities and the material of each element. At the moment
Only one set of nodal coordinates can be entered. Diferent kind of elements can be used but
separated into diferent sets. If no material is supplied, GiD takes the material
number equal to zero.
- ProjectName.flavia.res:
The second file, which is named
ProjectName.flavia.res, must contain the nodal
variables. GiD allows the user to define as many nodal variables as desired, as well as
several steps and analysis cases (limited only by the memory of the machine).
Gauss points and results on these gauss points should also be in this file.
The files are created and read in the order that corresponds with the natural way of
solving a finite element problem: mesh, surface definition and conditions
and finally, evaluation of the results.
The format of the read statements is normally free, i.e. it is necessary only
to separate them by spaces.
Thus, the users can modify the files with any format, leaving spaces between each field and can
also write out the results with as many decimals as desired. In case of error, the
program warns the user about the type of mistake found.
GiD reads all the information directly from the
pre-processing files in order to gain efficiency, whenever possible.
NOTE: The new postprocess mesh format needs GiD version 6.0 or higher.
Comment are allowed and should begin with a '#'.
Blank lines are also allowed.
Inside this file one or more MESHes can be defined, each of them should:
- Begin with a header with this pattern:
MESH "mesh_name" dimension my_dimension Elemtype my_type Nnode my_number
being
MESH, dimension, elemtype, nnode:
keywords that should be written as they are, case doesn't matter.
"mesh_name": an optional name for the mesh,
my_dimension: 2 or 3 according to the geometric dimension of the mesh.
my_type: one of Point, Linear, Triangle, Quadrilateral,
Tetrahedra or Hexahedra, describing the element type of this MESH.
my_number: the number of nodes of my_type element:
Note: On elements of order higher than linear, the connectivities
must written in hierarchical order, i.e. first the vertex nodes, then the middle ones.
- followed by the coordinates:
coordinates
1 0.0 1.0 3.0
. . .
1000 -2.5 9.3 21.8
end coordinates
being
- the pair
coordinates and end coordinates keywords that should be
written as they are, case doesn't matter.
- And between these keywords, the nodal coordinates of all the
MESHes or the current one.
Note: if each MESH specifies its own coordinates, the node number should be unique,
for instance, if MESH "mesh one" uses nodes 1..100, and MESH "other mesh" uses 50
nodes, they should be numbered up 100.
- and followed by the elements conectivity
elements
#el_num node_1 node_2 node_3 material
1 1 2 3 215
. . .
1000 32 48 23 215
end elements
being
- the pair
elements and end elements keywords that should be
written as they are, case doesn't matter.
- And in-between the nodal conectivities for the
my_type elements,
Note: On elements of order higher than linear, the connectivities
must written in hierarchical order, i.e. first the vertex nodes, then the middle ones.
- and an optional material number.
This example clarifies this description:
#mesh of a table
MESH "board" dimension 3 ElemType Triangle Nnode 3
Coordinates
# node number coordinate_x coordinate_y coordinate_z
1 -5 3 -3
2 -5 3 0
3 -5 0 0
4 -2 2 0
5 -1.66667 3 0
6 -5 -3 -3
7 -2 -2 0
8 0 0 0
9 -5 -3 0
10 1.66667 3 0
11 -1.66667 -3 0
12 2 2 0
13 2 -2 0
14 1.66667 -3 0
15 5 3 -3
16 5 3 0
17 5 0 0
18 5 -3 -3
19 5 -3 0
end coordinates
#we put both material in the same MESH,
#but they could be separated into two MESH
Elements
# element node_1 node_2 node_3 material_number
5 19 17 13 3
6 3 9 7 3
7 2 3 4 3
8 17 16 12 3
9 12 16 10 3
10 12 10 4 3
11 7 9 11 3
12 7 11 13 3
13 2 4 5 3
14 5 4 10 3
15 19 13 14 3
16 14 13 11 3
17 3 7 4 3
18 17 12 13 3
19 13 12 8 4
20 13 8 7 4
21 7 8 4 4
22 4 8 12 4
end elements
MESH dimension 3 ElemType Linear Nnode 2
Coordinates
#no coordinates then they are already in the first MESH
end coordinates
Elements
# element node_1 node_2 material_number
1 9 6 5
2 19 18 5
3 16 15 5
4 2 1 5
end elements
NOTE: The new postprocess results format needs GiD version 6.1.4b or higher.
The first line of the files with results written in this new postprocess format should be:
GiD Post Results File 1.0
Comment are allowed and should begin with a '#'.
Blank lines are also allowed.
Results files can also be included with the keyword include, for instance:
include "My Other Results File"
This is usefull, for instance, to share several GaussPoints definitions and ResultRangeTable
among different analysis.
This 'include' should be outside the Blocks of information.
There are several types of Blocks of information, all of them indentified by
a keyword:
GaussPoints Information about gauss points: name, number of gauss points,
natural coordinates, etc.
ResultRangesTable Information for the result visualization type Contour Ranges:
name, ranges limits and ranges names.
Result Information about a Result: name, analysis, analysis/time step, type
of result, location, values.
To include Gauss points they must be defined before the Result which uses them.
Each Gauss points block are defined between a pair of GaussPoints and End GaussPoints.
The structure is as follows:
- Begin with a header with this pattern:
GaussPoints "gauss_points_name" Elemtype my_type "mesh_name"
being
GaussPoints, elemtype:
keywords that should be written as they are, case doesn't matter.
"gauss_points_name": a name for the gauss points set, which will be used
as reference by the results that are located on these gauss points.
my_type: one of Point, Linear, Triangle, Quadrilateral,
Tetrahedra or Hexahedra, describing which element type are these gauss points for.
"mesh_name": an optional field. If this field is missing, the gauss points are defined for
all the elements of type my_type. If a mesh name is given, the gauss points are only defined for
this mesh.
- followed by
gauss points properties:
Number of Gauss Points: number_gauss_points_per_element
Nodes included
Nodes not included
Natural Coordinates: Internal
Natural Coordinates: Given
natural_coordinates_for_gauss_point_1
. . .
natural_coordinates_for_gauss_point_n
being
Number of Gauss Points: number_gauss_points_per_element:
a keyword that should be written as it is, case doesn't matter, followed by the number of gauss points
per element that defines this set. If Natural Coordinates: is set to Internal,
number_gauss_points_per_element should be one of:
- 1, 3, 6 for Triangles;
- 1, 4, 9 for quadrilaterals;
- 1, 4 for Tetrahedras;
- 1, 8, 27 for hexahedras and
- 1, ... n points equally spaced over lines.
For triangles and quadrilaterals the order of the gauss points with Internal natural coordinates, will be this one:
Gauss Points positions of the cuadrature of Gauss-Legendre for Triangles and Quadrilaterals
For tetrahedras and hexahedras the order of the Internal Gauss Points is this:
|
|
|
|
|
Gauss Points in tetrahedras and hexahedras:
|
Note: If the natural coordinates used are the internal ones almost all the Results visualization
posibilities with some limitations for Tetrahedras and hexahedras with more than one gauss points.
If the natural coordinates are given, these limitations are extended to those elements with
number_gauss_points_per_element not included in the list written above.
Nodes Included / Nodes not Included:
keywords that should be written as they are, case doesn't matter, only necessary for gauss points on
Linear elemets which indicate whether the end nodes of the Linear elemet are included
in the number_gauss_points_per_element count or not.
|
|
|
|
Pseudo "gauss points" for lines with nodes included and not included
|
Natural Coordinates: Internal / Natural Coordinates: Given:
keywords that should be written as they are, case doesn't matter, telling if the natural coordinates are
calculated internally by GiD, or are given in the following lines.
The natural coordinates should be written per line and gauss point.
- Ending with this tail:
End GaussPoints
being
End GaussPoints: a keyword that should be written as it is, case doesn't matter.
Here comes an example of results on Gauss Points:
GaussPoints "Board gauss internal" ElemType Triangle "board"
Number Of Gauss Points: 3
Natural Coordinates: internal
end gausspoints
To include a Result Range Table it must be defined before the Result which uses it.
Each Result Range Table is defined between a pair of ResultRangesTable and End ResultRangesTable.
The structure is as follows:
Several examples of results ranges table follows,
- Ranges defined for the whole result
ResultRangesTable "Mi tabla"
# all the ranges are min <= res < max except
# the last range is min <= res <= max
- 0.3: "Less"
0.3 - 0.7: "Normal"
0.7 - : "Too much"
End ResultRangesTable
- Just a couple of ranges
ResultRangesTable "Mi tabla"
0.3 - 0.7: "Normal"
0.7 - 0.9: "Too much"
End ResultRangesTable
- or using the maximum of the result:
ResultRangesTable "Mi tabla"
0.3 - 0.7: "Normal"
0.7 - : "Too much"
End ResultRangesTable
Each Result block is identified by a Result header, followed by several
optional properties: component names, ranges table, and the result values, defined the
pair of Values and End Values.
The structure is as follows:
- Begin with a header with this pattern:
Result "result name" "analysis name" step_value my_result_type my_location "location name"
being
Result: a keyword that should be written as it is, case doesn't matter.
"result name": a name for the Result, which will be used for menus.
"analysis name": the name of the analysis of this Result,
which will be used for menus.
step_value: the value of the step inside the analysis "analysis name".
my_type: type of the Result, should be one of Scalar, Vector,
Matrix, PlainDeformationMatrix, MainMatrix, LocalAxes.
my_location: where is the Result located, should be one of OnNodes,
OnGaussPoints. If the Result is OnGaussPoints a "location name"
should be entered.
"location name": name of the Gauss Points on which the Result is defined.
- followed by optional
result properties:
ResultRangesTable "Name of a result ranges table"
ComponentNames "Name of Component 1", "Name of Component 2"
being
ResultRangesTable "Name of a result ranges table": ( optional)
a keyword that should be written as it is, case doesn't matter, followed by the name of the previously
defined Tesult Ranges Table which will be used if the Contour Ranges result visualization
is choosen ( see section Result Range Table).
ComponentNames "Name of Component 1", "Name of Component 2": ( optional)
a keyword that should be written as it is, case doesn't matter, followed by the names of the components
of the results which will be used in GiD. The number of Component Names are these:
- One for a
Scalar Result
- Three for a
Vector Result
- Six for a
Matrix Result
- Four for a
PlainDeformationMatrix Result
- Six for a
MainMatrix Result
- Three for a
LocalAxes Result
- and ending with the
result values:
Values
result_number_1 component_1_value component_2_value
. . .
result_number_n component_1_value component_2_value
End Values
being
Values: a keyword that should be written as it is, case doesn't matter, which indicates
the beginning of the result's values section.
- The lines
result_number_1 component_1_value component_2_value
. . .
result_number_n component_1_value component_2_value
are the values of the result.
The number of results values are limited to:
- if the
Result is located OnNodes: the number of nodes defined in ProjectName.flavia.msh
- if the
Result is located OnGaussPoints "My GP": if
the Gauss Points "My GP" are defined for the mesh "My mesh", the limit is the number of gauss points
in "My GP" multiplied by the number of elements of the mesh "My mesh".
Holes are allowed. The nodes, elements, with no result defined will not be drawn, i.e. they will appear transparent.
The number of components for each Result Value are:
- for
Scalar results: one component
result_number_i scalar_value
- for
Vector results: three components, with an optional fourth component for signed modules
result_number_i x_value y_value z_value
result_number_i x_value y_value z_value signed_module_value
- for
Matrix results: three components ( 2D models) or six components (3D models)
2D: result_number_i Sxx_value Syy_value Sxy_value
3D: result_number_i Sxx_value Syy_value Szz_value Sxy_value Syz_value Sxz_value
- for
PlainDeformationMatrix results: four components
result_number_i Sxx_value Syy_value Sxy_value Szz_value
- for
MainMatrix results: twelve components
result_number_i Si_value Sii_value Siii_value Vix_value Viy_value Viz_value Viix_value Viiy_value Viiz_value Viiix_value Viiiy_value Viiiz_value
- for
LocalAxes results: three components describing the Euler angles
result_number_i euler_ang_1_value euler_ang_2_value euler_ang_3_value
End Values: a keyword that should be written as it is, case doesn't matter., which indicates
the end of the result's values section.
Here comes an example of results for the table of the previous example
(see section Mesh example):
GiD Post Results File 1.0
GaussPoints "Board gauss internal" ElemType Triangle "board"
Number Of Gauss Points: 3
Natural Coordinates: internal
end gausspoints
GaussPoints "Board gauss given" ElemType Triangle "board"
Number Of Gauss Points: 3
Natural Coordinates: Given
0.2 0.2
0.6 0.2
0.2 0.6
End gausspoints
GaussPoints "Board elements" ElemType Triangle "board"
Number Of Gauss Points: 1
Natural Coordinates: internal
end gausspoints
GaussPoints "Legs gauss points" ElemType Linear
Number Of Gauss Points: 5
Nodes included
Natural Coordinates: Internal
End Gausspoints
ResultRangesTable "Mi tabla"
# el ultimo rango es min <= res <= max
- 0.3: "Poco"
0.3 - 0.9: "Normal"
0.9 - 1.2: "Mucho"
End ResultRangesTable
Result "Gauss element" "Load Analysis" 1 Scalar OnGaussPoints "Board elements"
Values
5 0.00000E+00
6 0.20855E-04
7 0.35517E-04
8 0.46098E-04
9 0.54377E-04
10 0.60728E-04
11 0.65328E-04
12 0.68332E-04
13 0.69931E-04
14 0.70425E-04
15 0.70452E-04
16 0.51224E-04
17 0.32917E-04
18 0.15190E-04
19 -0.32415E-05
20 -0.22903E-04
21 -0.22919E-04
22 -0.22283E-04
End Values
Result "Displacements" "Load Analysis" 1 Vector OnNodes
ResultRangesTable "Mi tabla"
ComponentNames "X-DESPL", "Y-DESPL", "Z-DESPL"
Values
1 0.0 0.0 0.0
2 -0.1 0.1 0.5
3 0.0 0.0 0.8
4 -0.04 0.04 1.0
5 -0.05 0.05 0.7
6 0.0 0.0 0.0
7 -0.04 -0.04 1.0
8 0.0 0.0 1.2
9 -0.1 -0.1 0.5
10 0.05 0.05 0.7
11 -0.05 -0.05 0.7
12 0.04 0.04 1.0
13 0.04 -0.04 1.0
14 0.05 -0.05 0.7
15 0.0 0.0 0.0
16 0.1 0.1 0.5
17 0.0 0.0 0.8
18 0.0 0.0 0.0
19 0.1 -0.1 0.5
End Values
Result "Gauss displacements" "Load Analysis" 1 Vector OnGaussPoints "Board gauss given"
Values
5 0.1 -0.1 0.5
0.0 0.0 0.8
0.04 -0.04 1.0
6 0.0 0.0 0.8
-0.1 -0.1 0.5
-0.04 -0.04 1.0
7 -0.1 0.1 0.5
0.0 0.0 0.8
-0.04 0.04 1.0
8 0.0 0.0 0.8
0.1 0.1 0.5
0.04 0.04 1.0
9 0.04 0.04 1.0
0.1 0.1 0.5
0.05 0.05 0.7
10 0.04 0.04 1.0
0.05 0.05 0.7
-0.04 0.04 1.0
11 -0.04 -0.04 1.0
-0.1 -0.1 0.5
-0.05 -0.05 0.7
12 -0.04 -0.04 1.0
-0.05 -0.05 0.7
0.04 -0.04 1.0
13 -0.1 0.1 0.5
-0.04 0.04 1.0
-0.05 0.05 0.7
14 -0.05 0.05 0.7
-0.04 0.04 1.0
0.05 0.05 0.7
15 0.1 -0.1 0.5
0.04 -0.04 1.0
0.05 -0.05 0.7
16 0.05 -0.05 0.7
0.04 -0.04 1.0
-0.05 -0.05 0.7
17 0.0 0.0 0.8
-0.04 -0.04 1.0
-0.04 0.04 1.0
18 0.0 0.0 0.8
0.04 0.04 1.0
0.04 -0.04 1.0
19 0.04 -0.04 1.0
0.04 0.04 1.0
0.0 0.0 1.2
20 0.04 -0.04 1.0
0.0 0.0 1.2
-0.04 -0.04 1.0
21 -0.04 -0.04 1.0
0.0 0.0 1.2
-0.04 0.04 1.0
22 -0.04 0.04 1.0
0.0 0.0 1.2
0.04 0.04 1.0
End Values
Result "Legs gauss displacements" "Load Analysis" 1 Vector OnGaussPoints "Legs gauss points"
Values
1 -0.1 -0.1 0.5
-0.2 -0.2 0.375
-0.05 -0.05 0.25
0.2 0.2 0.125
0.0 0.0 0.0
2 0.1 -0.1 0.5
0.2 -0.2 0.375
0.05 -0.05 0.25
-0.2 0.2 0.125
0.0 0.0 0.0
3 0.1 0.1 0.5
0.2 0.2 0.375
0.05 0.05 0.25
-0.2 -0.2 0.125
0.0 0.0 0.0
4 -0.1 0.1 0.5
-0.2 0.2 0.375
-0.05 0.05 0.25
0.2 -0.2 0.125
0.0 0.0 0.0
End Values
This file is a complete list of the dumped results, where each result will be organized
as follows:
Set 1: Header. Results description
The total number of lines in this set is 1, composed by 1 character string, 1 integer, 1
real, 1 optional character string what depends on the first integer, plus 3 integers:
descr_menu load_type step_val [load_desc]
data_type data_loc desc_comp ["gauss_points_name"]
where:
descr_menu = results title that will appear on the menus (maximum 15
characters without any blank spaces inside).
load_type = type of analysis effectuated to obtain this result:
- 1 - time analysis (Time Step).
- 2 - load analysis (Load Step).
- 3 - frequency analysis (Frequency).
- 4 - user defined analysis (User Step).
step_val = number of steps inside the analysis.
load_desc = description, without any blank spaces inside, of the analysis
that will appear on the menus. This field must only be specified when the analysis is
defined by the user (load_type = 4).
data_type = kind of results:
- 1 - scalar.
- 2 - vector.
- 3 - matrix.
- 4 - 2D plane deformation matrix
- 5 - Main stresses ( 3 modules and 3 vectors)
- 6 - Euler angles ( for local axes)
data_loc = position of the data:
1 - on the nodes.
2 - on the Gauss points.
desc_comp = specification of the existence of a description of each
component that will be displayed as a menu's button:
- 0 - no description (inside GiD, the program itself creates the description for the
corresponding components).
- 1 - there will be a description, without any blank spaces inside, of the components,
with one component per line.
"gauss_points_name": optional field that specifies the set of gauss points to be used
(new gauss point format see section Gauss Points). If not specified the general gauss points
definition will be used (old format).
Set 2: Description of the components
The description of each one of the result's components, without any blank spaces inside,
should be described here if needed, one per line. The number of lines will be as
follows:
- One line if it is a scalar.
- Three lines if it is vector.
- Six lines if it is a matrix.
- Four lines if it is a 2D plane deformation matrix.
- Six lines if it is Main Stresses.
- Three lines if it is a Euler angles result.
This description will appear in different menus to select the variable to be displayed
at each stage.
Note: GiD also supports 2D results types, so description components can be two for
vectors, and three or four for matrix and plane strain analysis, respectively.
Set 3: Results
The total number of lines in this set is the total number of points if data_loc =
1 or the total number of elements multiplied by the number of Gauss points per element
if data_loc = 2. The definition of the results is itemized below.
- Scalar: Each line is composed by one integer plus one real number:
i result[i]
where:
i = node or Gauss point number.
result[i] = value of the result on the node or Gauss point number i.
- Vector: Each line is composed by 1 integer plus 3 reals:
i result_x[i] result_y[i] result_z[i] result_m[i]
where:
i = node or Gauss point number.
result_x[i] = value of the x_component of the result on the node or Gauss
point number i.
result_y[i] = value of the y_component of the result on the node or Gauss
point number i.
result_z[i] = value of the x_component of the result on the node or Gauss
point number i. Optional if a 2D result type is specified. Should be specified
if result_m[i] is given.
result_m[i] = value of the signed module of the vector (to allow negative
values for the vector diagram result view). This component is optional, if not
specified, GiD calculates the module of the entered vector. But if it is defined,
result_z[i] should be defined too.
- Matrix: Each line is composed by 1 integer plus 6 reals:
i result_Sxx[i] result_Syy[i] result_Szz[i]
result_Sxy[i] result_Syz[i] result_Sxz[i]
where:
i = node or Gauss point number.
result_Sxx[i] = value of the xx_component of the result on the node or
Gauss point number i.
result_Syy[i] = value of the yy_component of the result on the node or
Gauss point number i.
result_Szz[i] = value of the zz_component of the result on the node or
Gauss point number i. Optional if a 2D result type is specified that is not a
plane deformation matrix.
result_Sxy[i] = value of the xy_component of the result on the node or
Gauss point number i.
result_Syz[i] = value of the yz_component of the result on the node or
Gauss point number i. Optional if a 2D result type is specified.
result_Sxz[i] = value of the xz_component of the result on the node or
Gauss point number i. Optional if a 2D result type is specified.
- Main Stresses: Another way to give Stresses to GiD is entering modules and
vectors of these main stresses, so each line is composed by 1 integer plus 12 reals:
i result_Si[i] result_Sii[i] result_Siii[i]
result_Vi_x[i] result_Vi_y[i] result_Vi_z[i]
result_Vii_x[i] result_Vii_y[i] result_Vii_z[i]
result_Viii_x[i] result_Viii_y[i] result_Viii_z[i]
where:
i = node or Gauss point number.
result_Si[i] = value of the Si_module of the result on the node or
Gauss point number i.
result_Sii[i] = value of the Sii_module of the result on the node or
Gauss point number i.
result_Siii[i] = value of the Siii_module of the result on the node or
Gauss point number i. Optional if a 2D result type is specified.
result_Vi_x[i] = value of the X_component of the vector Si on the node or
Gauss point number i.
result_Vi_y[i] = value of the Y_component of the vector Si on the node or
Gauss point number i.
result_Vi_z[i] = value of the Z_component of the vector Si on the node or
Gauss point number i. Optional if a 2D result type is specified.
result_Vii_x[i] = value of the X_component of the vector Sii on the node or
Gauss point number i.
result_Vii_y[i] = value of the Y_component of the vector Sii on the node or
Gauss point number i.
result_Vii_z[i] = value of the Z_component of the vector Sii on the node or
Gauss point number i. Optional if a 2D result type is specified.
result_Viii_x[i] = value of the X_component of the vector Siii on the node or
Gauss point number i.
result_Viii_y[i] = value of the Y_component of the vector Siii on the node or
Gauss point number i.
result_Viii_z[i] = value of the Z_component of the vector Siii on the node or
Gauss point number i. Optional if a 2D result type is specified.
- Local Axes: Local Axes are entered using the Euler angles that define them,
so each line is composed by 1 integer plus 3 reals:
i euler_ang_1[i] euler_ang_2[i] euler_ang_3[i]
where:
i = node or Gauss point number.
euler_ang_1[i] = value of the 1st. angle of Euler of the local axis on the node
or Gauss point number i.
euler_ang_2[i] = value of the 2nd. angle of Euler of the local axis on the node
or Gauss point number i.
euler_ang_3[i] = value of the 3rd. angle of Euler of the local axis on the node
or Gauss point number i.
Results on GaussPoints: When defining results on Gauss Points using the new Gauss points
format, i.e. giving a "gauss_points_name" on the Result's Header description, the
results should be given on a per element basis specifying the element number only once. For instance:
assuming a three gauss points set named "GaussTriang" has been defined over triangles,
there are only two triangles, then a supposed 'Displacement' result will look like this:
GaussDISPLAC. 2 1 2 2 0 "GaussTriang"
5 0.1 -0.1 0.5
0.0 0.0 0.8
0.04 -0.04 1.0
6 0.0 0.0 0.8
-0.1 -0.1 0.5
-0.04 -0.04 1.0
NOTE: Next is described the old Gauss Points file format for the old results file format. However, the new Gauss Points file format (see section Gauss Points) is also compatible with the old results format.
Gauss Points:
To include the Gauss points in the results, they must be
treated as if they were a type of result, but:
- they must be inserted at the beginning of the file,
- the header structure is the same as of the results ones, but the meaning changes.
Note: At the time only Gauss Points on Lines, Triangles and
Quadrilaterals, and one Gauss Point for Tetrahedras and Hexahedras
are supported inside GiD.
Set 1: Header. Gauss points
The total number of lines in this set is also 1, but it is composed always now
by one character string, one integer, one real plus three integers:
descr_menu load_type step_val
data_type data_loc desc_comp
where:
descr_menu will not be used.
load_type = 0, to indicate that they are Gauss points.
step_val = number of Gauss points per element:
- 1, 3, 6 for Triangles;
- 1, 4, 9 for quadrilaterals;
- 1, 4, 10 for Tetrahedras;
- 1, 8, 27 for hexahedras and
- 1, ... points equally spaced over lines.
Note: This must be constant for the whole geometry.
Note: Tetrahedras with 4 and 10 Gauss Points and Hexahedras with
8 and 27 Gauss Points are not functional and still under development.
data_type = this field indicates whether the Natural coordinates for the
Gauss points are the ones described below this header or are the ones defined inside GiD.
These are also the ones that GiD uses internally to calculate Gauss Points for Triangles with three Gauss Points,
when this field is set to 1.
- 1 - the program must calculate the Gauss Points and will be these ones:
Gauss Points positions of the cuadrature of Gauss-Legendre for Triangles and Quadrilaterals
This field is meaningless to lines, and should be set to 1
data_loc = this option indicates whether the nodes are included inside
the number of points over lines or not.
- 1 - nodes are not included in the points count for lines, so points are placed
at a distance from the nodes
i / ( n_points + 1) with i = 1..n_points
and n_points >= 1.
- 2 - nodes are included in the points count for lines, so points are placed
at a distance from the nodes
( i - 1) / ( n_points - 1) with i = 1..n_points
and n_points >= 2.
This field is meaningless to triangles, quadrilaterals, tetrahedras and hexahedras.
desc_comp does not matter, but it must be specified.
The old postproces mesh format is still compatible with this version of GiD. The files containing the postprocess mesh (in the old file format) can be separated into two categories:
- 3D Data Files:
ProjectName.flavia.msh for volume mesh information and
ProjectName.flavia.bon for surface mesh information.
- 2D Data Files:
ProjectName.flavia.dat for 2D mesh information.
Postprocessing data files are ASCII files and must be in a specific format, which is explained below. Each mesh information file can only handle
one type of element.
- ProjectName.flavia.msh:
The first file, which is named
ProjectName.flavia.msh, should contain the information
relative to the 3D volume mesh. It contains the nodal coordinates of the 3D mesh, its nodal
connectivities and the material of each element. The nodal coordinates must include those
on the surface mesh. If no material is supplied, GiD takes the material number equal to zero.
- ProjectName.flavia.bon:
The second file, which is named
ProjectName.flavia.bon, should contain the information
about 3D surface sets. It can be used to represent boundary conditions of the volumetric
mesh and additional surfaces (for instance, sheets, beams and shells). At least, all the
mesh points supplied in ProjectName.flavia.msh should be present in
ProjectName.flavia.bon at the beginning of the file.
- ProjectName.flavia.dat:
This file contains information about 2D meshes. And only can be used if none of the two above
are used. It should specify nodal coordinates of the meshes, its connectivities ( elements) and,
if desired, its material number ( if not specified, GiD takes to be 0).
The files are created and read in the order that corresponds with the natural way of
solving a finite element problem: mesh, surface definition and conditions
and finally, evaluation of the nodal results.
The format of the read statements is normally free, i.e. it is necessary only to separate them by spaces.
Thus, the users can modify the files with any format, leaving spaces between each field and can
also write out the results with as many decimals as desired. In case of error, the
program warns the user about the type of mistake found.
GiD reads all the information directly from the
pre-processing files in order to gain efficiency, whenever possible).
Set 1: Header
The total number of lines in this set is 6. All of them are
free lines for any use.
This will be the case of the first five lines, which may have an information role,
informing about the project name, current version, as well as extra comments that
can seem useful to add. Although they can be skipped, they are kept as a particular
option inside GiD (comment lines) and as an utility to comment some additional information,
like the type of project, equations, conditions and others.
Note: It is advisable,
as it occurs in different solver modules used by GiD, that the sixth line
explains the contents of the seventh line.
Set 2: General mesh data
The total number of lines in this set is 1, composed by at least 3 integers, the 4th integer is optional:
n_3D_mesh_elements n_3D_mesh_points n_element_type [ last_node]
where:
n_3D_mesh_elements = number of mesh elements.
n_3D_mesh_points = number of mesh points.
n_element_type = type of elements.
last_node = number of the last node and required if nodes are not between 1 and n_3D_mesh_points.
The third parameter is used by the program to recognize what kind of finite element
is being used. To do this in a standard way, GiD considers the following finite
element types:
- number 1 corresponds to a hexahedra with eight nodes.
- number 3 corresponds to a tetrahedra with four nodes.
Set 3: Free line for any use
The total number of lines in this set is 1, which is a free line for any use,
though most modules inside GiD write here the
word 'Coordinates' to point the meaning of the following lines.
Set 4: Coordinates
The total number of lines in this set is n_3D_mesh_points, one for each
nodal point, composed by 1 integer plus 3 reals numbers:
i x_coord[i] y_coord[i] z_coord[i]
where:
i = node number.
x_coord[i] = x_coordinate of the node number i.
y_coord[i] = y_coordinate of the node number i.
z_coord[i] = z_coordinate of the node number i.
All the points of the meshes of the domain have to appear in this file.
Set 5: Free line for any use
The total number of lines in this set is 1, which is a free line for any use.
The same comments used for set number 3 are valid here, with the change of
including the word 'Connectivities' instead of 'Coordinates'.
Set 6: Connectivities
The total number of lines in this set is n_3D_mesh_elements, composed by 1
integer plus n_nodes/element integers and 1 optional integer more:
j node[j][1] node[j][2] ... node[j][n_nodes/element]
mat[j]
where:
j = element number.
node[j][1] = node number 1 for the element number j.
node[j][2] = node number 2 for the element number j.
...
node[j][n_nodes/element] = last node number for the element number j.
mat[j] = material index of the element number j.
The nodal connections must follow some specifications, so, for each tetrahedral
element with four nodes, the rule is that the first three nodes that form a triangular
face must be so sorted in order to define a normal which points towards the
semi space containing the fourth node.
The vector mat[j] holds
the material index of the element number j.
Set 1: Header
The total number of lines in this set is 6. All of them are
free lines for any use. All the comments relative to the header of
ProjectName.flavia.msh remain
valid for the current file ProjectName.flavia.bon.
Note: It is advisable,
as it occurs in different calculation modules included in GiD, that the sixth line
explains the contents of the seventh line.
Set 2: General boundary data
The total number of lines in this set is 1, composed by at least 3 integers, the 4th integer is optional:
n_bound_elements n_bound_points n_element_type [ last_node]
where:
n_bound_elements = number of boundary elements.
n_bound_points = number of boundary points.
n_element_type = type of elements.
last_node = number of the last node and required if nodes are not between 1 and n_bound_points.
For the third parameter, GiD considers the following
finite element types:
- number 7 corresponds to a triangle with three nodes.
- number 9 corresponds to a quadrilateral with four nodes.
- number 11 corresponds to a line with two nodes.
Set 3: Free line for any use
The total number of lines in this set is 1, which is a free line for any use,
though most modules inside GiD write here the
word 'Coordinates' to point the meaning of the following lines.
Set 4: Coordinates
The total number of lines in this set is n_bound_points, one for each
nodal point, composed by 1 integer plus 3 reals:
i x_coord[i] y_coord[i] z_coord[i]
where:
i = node number.
x_coord[i] = x_coordinate of the node number i.
y_coord[i] = y_coordinate of the node number i.
z_coord[i] = z_coordinate of the node number i.
All the points of the domain have to appear in this file, what includes all the
mesh points introduced in ProjectName.flavia.msh at the beginning. Once all the
volumetric mesh had been introduced, it is possible to add surfaces that belong
to a boundary of the domain but do not belong to a volumetric mesh and by this
reason they will not appear in ProjectName.flavia.msh and only in
ProjectName.flavia.bon.
Set 5: Free line for any use
The total number of lines in this set is 1, which is a free line for any use.
The same comments used for set number 3 are valid here, with the change of
including the word 'Connectivities' instead of 'Coordinates'.
Set 6: Connectivities
The total number of lines in this set is n_bound_elements, composed by 1
integer plus n_nodes/element integers and 2 optional integers more:
j node[j][1] node[j][2] ... node[j][n_nodes/element]
set[j]
where:
j = element number.
node[j][1] = node number 1 for the element number j.
node[j][2] = node number 2 for the element number j.
...
node[j][n_nodes/element] = last node number for the element number j.
set[j] = number of set to which the element number j belongs.
The vector set[j] allows to distinguish groups of elements in different sets.
It applies, for instance, in the case of defining the different conditions
that the element fulfills.
Set 1: Header
The total number of lines in this set is 6. All of them are
free lines for any use.
The first five lines, which may have an information role,
informing about the project name, current version, as well as extra comments that
can seem useful to add. Although they can be skipped, they are kept as a particular
option inside GiD (comment lines) and as an utility to comment some additional information,
like the type of project, equations, conditions and others.
Note: It is advisable,
as it occurs in different solver modules used by GiD, that the sixth line
explains the contents of the seventh line.
Set 2: General mesh data
The total number of lines in this set is 1, composed by at least 3 integers, the 4th integer is optional:
n_2D_mesh_elements n_2D_mesh_points n_element_type [ last_node]
where:
n_2D_mesh_elements = number of 2D mesh elements.
n_2D_mesh_points = number of 2D points.
n_element_type = type of elements.
last_node = number of the last node and required if nodes are not between 1 and n_2D_mesh_points.
The third parameter is used by the program to recognize what kind of finite element
is being used. To do this GiD considers the number of nodes that the finite
element type uses. So,
- number 2 corresponds to a line with two nodes.
- number 3 corresponds to a triangle with three nodes.
- number 4 corresponds to a quadrilateral with four nodes.
- number 6 corresponds to a triangle with six nodes.
- number 8 corresponds to a quadrilateral with eight nodes.
- number 9 corresponds to a quadrilateral with nine nodes.
Set 3: Free line for any use
The total number of lines in this set is 1, which is a free line for any use,
though most modules inside GiD write here the
word 'Coordinates' to point the meaning of the following lines.
Set 4: Coordinates
The total number of lines in this set is n_2D_mesh_points, one for each
nodal point, composed by 1 integer plus 3 reals:
i x_coord[i] y_coord[i]
where:
i = node number.
x_coord[i] = x_coordinate of the node number i.
y_coord[i] = y_coordinate of the node number i.
All the points of the domain have to appear in this file, what includes all the
mesh points introduced in ProjectName.flavia.msh at the beginning. Once all the
volumetric mesh had been introduced, it is possible to add surfaces that belong
to a boundary of the domain but do not belong to a volumetric mesh and by this
reason they will not appear in ProjectName.flavia.msh and only in
ProjectName.flavia.bon.
Set 5: Free line for any use
The total number of lines in this set is 1, which is a free line for any use.
The same comments used for set number 3 are valid here, with the change of
including the word 'Connectivities' instead of 'Coordinates'.
Set 6: Connectivities
The total number of lines in this set is n_2D_mesh_elements, composed by 1
integer plus n_nodes/element integers and 2 optional integers more:
j node[j][1] node[j][2] ... node[j][n_nodes/element]
set[j]
where:
j = element number.
node[j][1] = node number 1 for the element number j.
node[j][2] = node number 2 for the element number j.
...
node[j][n_nodes/element] = last node number for the element number j.
set[j] = number of set to which the element number j belongs.
The vector set[j] allows to distinguish groups of elements in different sets.
It applies, for instance, in the case of defining the different conditions
that the element fulfills.
Note: The numeration of quadratic elements is linear and not hierarchical, i.e. nodes
should be specified counterclockwise, without jumping internal nodes.
|