Kratos Structure: Mesh and ModelPart

From KratosWiki
(Difference between revisions)
Jump to: navigation, search
 
(4 intermediate revisions by one user not shown)
Line 3: Line 3:
 
== The Mesh ==
 
== The Mesh ==
  
The Mesh class is the container that stores the geometrical definition of the problem or a region of the simulation domain. At its core, it contains three lists, for the nodes, elements and conditions that constitute the model. The elements on each list are ordered by their Id, ordered consecutively starting from one.
+
The Mesh class is the container that stores the geometrical definition of the problem or a region of the simulation domain. At its core, it contains three lists, for the nodes, elements and conditions that constitute the model. The elements on each list are ordered by their Id, ordered consecutively starting from one. In addition, the mesh also holds a list of properties used to characterize the material properties of its elements and conditions.
  
 
== The Model Part ==
 
== The Model Part ==
Line 9: Line 9:
 
The ModelPart is arguably the most important class in Kratos. It contains all the information required for the simulation of a given problem, namely '''Nodes''', '''Elements''' and '''Conditions'''.
 
The ModelPart is arguably the most important class in Kratos. It contains all the information required for the simulation of a given problem, namely '''Nodes''', '''Elements''' and '''Conditions'''.
 
* One or more '''Mesh''' instances, containing the nodes, elements and conditions that compose the problem domain.
 
* One or more '''Mesh''' instances, containing the nodes, elements and conditions that compose the problem domain.
* A list of the '''Properties''' used to define the material properties of elements and conditions of the model.
 
 
* The '''ProcessInfo''', a container of global data for the entire model, such as the time step the simulation is at, and any global parameters required by the algorithms used to solve the problem.
 
* The '''ProcessInfo''', a container of global data for the entire model, such as the time step the simulation is at, and any global parameters required by the algorithms used to solve the problem.
 
* Any additional global data required, such as Tables.
 
* Any additional global data required, such as Tables.
Line 21: Line 20:
 
  model_part.SetBufferSize(Nsteps)
 
  model_part.SetBufferSize(Nsteps)
  
Next: [[Kratos Structure: Strategies and Processes]]
+
A problem usually has a single ModelPart instance, that manages the entire model, but in some cases it can be convenient to use multiple model parts. This is often done in coupled problems, where a model part is used for each individual field to be solved.
  
Previous: [[Kratos Structure: Workflow]]
+
In a distributed memory environment, the ModelPart is also responsible for parallel communication.
 +
 
 +
Next : [[Kratos Structure: Strategies and Processes]]
 +
 
 +
Previous : [[Kratos Structure: Elements and Conditions]]

Latest revision as of 08:57, 7 May 2012

Continuing with this description of the basic components of Kratos, we turn our attention to the Mesh and the ModelPart, which are the containers of all information and data related to a given model.

The Mesh

The Mesh class is the container that stores the geometrical definition of the problem or a region of the simulation domain. At its core, it contains three lists, for the nodes, elements and conditions that constitute the model. The elements on each list are ordered by their Id, ordered consecutively starting from one. In addition, the mesh also holds a list of properties used to characterize the material properties of its elements and conditions.

The Model Part

The ModelPart is arguably the most important class in Kratos. It contains all the information required for the simulation of a given problem, namely Nodes, Elements and Conditions.

  • One or more Mesh instances, containing the nodes, elements and conditions that compose the problem domain.
  • The ProcessInfo, a container of global data for the entire model, such as the time step the simulation is at, and any global parameters required by the algorithms used to solve the problem.
  • Any additional global data required, such as Tables.

In addition to this, the ModelPart is also responsible for keeping track of the advancement in time of the simulation, managing the initialization of new time steps

model_part.CloneSolutionStep(time)

and the amount of old step data that is stored in the nodes' historical database.

model_part.SetBufferSize(Nsteps)

A problem usually has a single ModelPart instance, that manages the entire model, but in some cases it can be convenient to use multiple model parts. This is often done in coupled problems, where a model part is used for each individual field to be solved.

In a distributed memory environment, the ModelPart is also responsible for parallel communication.

Next : Kratos Structure: Strategies and Processes

Previous : Kratos Structure: Elements and Conditions

Personal tools
Categories