You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
5.2 KiB
107 lines
5.2 KiB
\chapter{Introduction} \label{chap:intro}
|
|
|
|
The \caps{\PROGRAM} program allows the user to manipulate data from a
|
|
finite element program before it is plotted. The program reads the
|
|
database output from an analysis program, manipulates the data using
|
|
algebraic expressions supplied by the user, and writes the new data to a
|
|
database to be processed by a plot program such as \caps{BLOT}
|
|
\cite{bib:blot}.
|
|
|
|
The program's algebraic evaluations allow special functions that are not
|
|
provided by the analysis program (such as principal values, effective
|
|
stress, and pressure) to be available for plotting. The evaluations
|
|
include all of the \caps{FORTRAN} arithmetic operations and most of the
|
|
\caps{FORTRAN} functions plus several special functions.
|
|
|
|
Both the input and output databases are in the \exo{} database
|
|
format \cite{bib:exodus}. The \exo{} format defines three types of
|
|
variables:\footnote{There are actually more variables than this
|
|
permitted in an \exo{} database, but only the three below are
|
|
currently supported by \caps{\PROGRAM}}
|
|
\setlength{\itemsep}{\medskipamount} \begin{itemize}
|
|
\item
|
|
A global variable has a value representative of the system as a whole
|
|
at each time step (e.g., the total energy).
|
|
\item
|
|
A nodal variable has a value for every node of the mesh at each time
|
|
step in the analysis (e.g., the displacement in the x-direction).
|
|
\item
|
|
An element variable has a value for every element in the element block
|
|
in which the variable is defined at each time step (e.g., the stress in the
|
|
x-direction).
|
|
|
|
\end{itemize}
|
|
|
|
A time step includes the values for all the variables (global, nodal, and element).
|
|
|
|
Each element in the database is assigned to an ``element block''. An
|
|
element block distinguishes a material or an element type (such as a
|
|
truss or quadrilateral). A specific element variable may be undefined
|
|
for some element blocks, meaning that the variable has no value for
|
|
elements in that element block.
|
|
|
|
The algebraic expressions to be evaluated in \caps{\PROGRAM} depend on
|
|
the values from the input database. These input values include the time
|
|
of the time step, the nodal coordinates, and the global, nodal,
|
|
and element variables calculated by the analysis program, including
|
|
values at specific nodes or elements. The values of variables from the
|
|
previous database time step or the first database time step may also be
|
|
referenced in the algebraic expressions. Global, nodal, and
|
|
element variables are created by \caps{\PROGRAM} in the output database,
|
|
with the variable type determined by the types of variables in the
|
|
expression being evaluated.
|
|
|
|
The \exo{} database format includes the names of the coordinates
|
|
and variables. This allows the user to reference the input variables by
|
|
name and to associate a meaningful name with calculated data.
|
|
|
|
There are two or three (depending on the number of dimensions in the
|
|
mesh) special nodal variables which contain the displacement components
|
|
at each node. The \caps{BLOT} plot program~\cite{bib:blot} expects these
|
|
variables to follow certain order and naming conventions. These
|
|
variables must be the first nodal variables and they must start with
|
|
``D'' and end with the last letter of the corresponding coordinate name.
|
|
|
|
\caps{\PROGRAM} allows the user to restrict the information that is
|
|
written to the output database. The time steps to be written may be
|
|
selected from those available on the input database. The size of the
|
|
output mesh may be limited by giving the nodal coordinates of a section
|
|
of the mesh or by selecting elements by element block.
|
|
|
|
\section{Changes since original printing}
|
|
\begin{itemize}
|
|
\item Algebra will now add a timestep to an exodus file with no previous timesteps. The equation
|
|
defining the new variable(s) can access constants and coordinates.
|
|
|
|
\item Can remove elements by global id. The syntax is:
|
|
\cmddef{\cmdverb{REMOVE ELEMENT} \param{id1} \param{id2} \ldots\ \param{idn}}{}
|
|
A maximum of 1024 ids may be specified. It is currently not very efficient, but should work.
|
|
|
|
\item Implemented filtering of elements which is the capability
|
|
to remove elements based on the value of a specified element
|
|
variable. The syntax is:
|
|
|
|
\cmddef{\cmdverb{FILTER ELEMENT}
|
|
\param{variable} \param{lt$|$le$|$ge$|$ne$|$gt$|$ge} \param{value} \cmd{TIME} \param{db\_time}
|
|
}{
|
|
\begin{itemize}
|
|
\item \param{variable} is the name of an element variable on the database.
|
|
\item \param{value} is the value that this variable will be compared against.
|
|
\item \param{lt$|$le$|$ge$|$ne$|$gt$|$ge} is the type of comparison corresponding to: lt -- less than, le == less than or
|
|
equal, \ldots
|
|
\item \param{db\_time} is the time on the database where the variable
|
|
will be read. If \param{db\_time} is less than the minimum database time, then the minimum time will be used; if greater than
|
|
the maximum database time, then the maximum time will be used.
|
|
\end{itemize}
|
|
If the variable doesn't exist on an element block, then all of the elements in that element block will be retained.
|
|
}
|
|
|
|
|
|
\item Added inverse zoom capability -- delete all nodes and
|
|
elements inside the specified zoom box unless the element
|
|
contains nodes that are outside the zoom box. This is
|
|
specified by adding \cmd{OUTSIDE} to the end of the
|
|
\cmd{ZOOM} command line.
|
|
|
|
\item Removed all mention of history variables which have been removed from \exo{} a long time ago.
|
|
\end{itemize}
|
|
|