Difference between revisions of "XML Input Files for NairnFEA"

From OSUPDOCS
Jump to navigation Jump to search
Line 26: Line 26:
<pre style="border-style:none;margin:0px;padding:0px 10px;">
<pre style="border-style:none;margin:0px;padding:0px 10px;">
   <Header>
   <Header>
     ( Analysis | Description | Output | Select | DevelFlag )
     ( Analysis | Description | Output
              | Select | DevelFlag )
   </Header>
   </Header>


Line 43: Line 44:


</pre></td>
</pre></td>
<td style="padding-left:10px;">The mesh can be generated (with keypoints, paths and areas) or explicit, but not both.</td>
<td style="padding-left:10px;">The mesh can be generated (with keypoints, paths and areas) or explicit, but not both</td>
</tr>
</tr>


Line 49: Line 50:
<td style="border-left:thin dashed blue;border-right:thin dashed blue;">
<td style="border-left:thin dashed blue;border-right:thin dashed blue;">
<pre style="border-style:none;margin:0px;padding:0px 10px;">
<pre style="border-style:none;margin:0px;padding:0px 10px;">
    ( BMP | Region | Hole )
  ( BMP | Region | Hole )
   
   
</pre></td>
</pre></td>
<td style="padding-left:10px;">These are used when .</td>
<td style="padding-left:10px;">These are used when [[Create a Mesh with Images and Shapes|creating a mesh with images and shapes]]</td>
</tr>
 
<tr>
<td style="border-left:thin dashed blue;border-right:thin dashed blue;">
<pre style="border-style:none;margin:0px;padding:0px 10px;">
  ( Material )
 
</pre></td>
<td style="padding-left:10px;">Define each material in a separate element</td>
</tr>
 
<tr>
<td style="border-left:thin dashed blue;border-right:thin dashed blue;">
<pre style="border-style:none;margin:0px;padding:0px 10px;">
  <GridBCs>
    ( Cracktip )
    ( DisplacementBCs | LoadBCs | EdgeBCs
                      | BCLine | BCPt | Periodic )
    ( Resequence )
  </GridBCs>
 
</pre></td>
<td style="padding-left:10px;">Define all boundary conditions[[#Notes|<sup>4</sup>]]</td>
</tr>
 
<tr>
<td style="border-left:thin dashed blue;border-right:thin dashed blue;">
<pre style="border-style:none;margin:0px;padding:0px 10px;">
  <Thermal>
    ( Temperature, StressFreeTemp)
  </Thermal>
 
</pre></td>
<td style="padding-left:10px;">Optional</td>
</tr>
</tr>


Line 58: Line 93:
<td style="border-left:thin dashed blue;border-right:thin dashed blue;border-bottom:thin dashed blue">
<td style="border-left:thin dashed blue;border-right:thin dashed blue;border-bottom:thin dashed blue">
<pre style="border-style:none;margin:0px;padding:0px 10px;">
<pre style="border-style:none;margin:0px;padding:0px 10px;">
&lt;/JANFEAInput&gt;;
&lt;/JANFEAInput&gt;
</pre></td>
</pre></td>
<td style="padding-left:10px;">&nbsp;</td>
<td style="padding-left:10px;">&nbsp;</td>
Line 72: Line 107:
# The <tt>!DOCTYPE</tt> element can define any number of entities. These entities can be used elsewhere in the text of the <tt>XML</tt> file and they will be replaced by the text in the entity definition. Entities can define values that make it easier to read input <tt>XML</tt> files and easier to modify them for new calculations.
# The <tt>!DOCTYPE</tt> element can define any number of entities. These entities can be used elsewhere in the text of the <tt>XML</tt> file and they will be replaced by the text in the entity definition. Entities can define values that make it easier to read input <tt>XML</tt> files and easier to modify them for new calculations.
# All input commands are in the top-level <JANFEAInput> element. The <tt>version</tt> attribute is option, but might be used in the future.
# All input commands are in the top-level <JANFEAInput> element. The <tt>version</tt> attribute is option, but might be used in the future.
# if the optional <tt>CrackTip</tt> and <tt>Resequence</tt> commands are used, they must be first and last, respectively, in the <tt>GridBCs</tt> element. The rest of the subordinate commands can be in any order.

Revision as of 08:24, 15 September 2013

All XML input command files for FEA calculations must conform to the following document definition including order of all XML elements. This template lists the main element and their next-level subordinate elements. For the subordinate elements, those separated by a vertical bar (|) mean any one of those elements in any order while those separated by commas mean in exactly that order. A more formal definition for FEA input files in given in the DTD file provided in the source files at NairnFEA/input/NairnFEA.dtd.

<?xml version='1.0'?>
<!DOCTYPE JANFEAInput SYSTEM "NairnFEA.dtd"
[
  <!ENTITY force "100">
]>
XML declaration1,2
<JANFEAInput version='3'>
Top level element3
  <Header>
    ( Analysis | Description | Output
               | Select | DevelFlag )
  </Header>

One Analysis is required.
  <Mesh>
    ( Keypoints, Path, Area )
        or
    ( NodeList, ElementList)
  </Header>

The mesh can be generated (with keypoints, paths and areas) or explicit, but not both
  ( BMP | Region | Hole )
 
These are used when creating a mesh with images and shapes
  ( Material )

Define each material in a separate element
  <GridBCs>
    ( Cracktip )
    ( DisplacementBCs | LoadBCs | EdgeBCs 
                      | BCLine | BCPt | Periodic )
    ( Resequence )
  </GridBCs>

Define all boundary conditions4
  <Thermal>
    ( Temperature, StressFreeTemp)
  </Thermal>

Optional
</JANFEAInput>
 

Click this link to see a sample XML FEA input command file for analysis of an end-loaded cantilever beam.

Notes

  1. The !DOCTYPE element defines the file type and has the SYSTEM option to provide a path to a Document Type Definition (or DTD) file. The path is needed when you run the code with the validation option (-v), which is highly recommended. The required DTD file for FEA calculations is provided in the /input folder of the source code files.
  2. The !DOCTYPE element can define any number of entities. These entities can be used elsewhere in the text of the XML file and they will be replaced by the text in the entity definition. Entities can define values that make it easier to read input XML files and easier to modify them for new calculations.
  3. All input commands are in the top-level <JANFEAInput> element. The version attribute is option, but might be used in the future.
  4. if the optional CrackTip and Resequence commands are used, they must be first and last, respectively, in the GridBCs element. The rest of the subordinate commands can be in any order.