Personal tools

Difference between revisions of "Module LagrangianGlobal"

From MohidWiki

Jump to: navigation, search
Line 2: Line 2:
 
The LangrangianGlobal Module is a deep upgrade of the [[Module Lagrangian|Lagrangian Module]]. These upgrade has three main goals:
 
The LangrangianGlobal Module is a deep upgrade of the [[Module Lagrangian|Lagrangian Module]]. These upgrade has three main goals:
  
1 - Run only one lagrangian model in a multi-nesting implementation. This way particles can go from grid to grid without any problems ([[Media:SideBySideCloud.gif|see example of particles moving between grids ]]). In the Lagrangian module particles are destroyed when they leave the grid where they were emitted. This is the reason way a lagrangian model is runned for each grid in the Lagrangian Module;
+
1 - Run only one lagrangian model in a multi-nesting implementation. This way particles can go from grid to grid without any problems ([[Media:SideBySideCloud.gif|see example of particles moving between grids]]). In the Lagrangian module particles are destroyed when they leave the grid where they were emitted. This is the reason way a lagrangian model is runned for each grid in the Lagrangian Module;
  
2 - Centralise all the interpolation and particle location (in a grid) methods in [[Module HorizontalGrid]] and (see source code [http://mohid.codeplex.com/SourceControl/changeset/view/64163#1208106]);
+
2 - Centralise all the interpolation and particle location (in a [[Grid|grid]]) methods in the [[Module HorizontalGrid|HorizontalGrid Module]] and (see source code [http://mohid.codeplex.com/SourceControl/changeset/view/64163#1208106]);
  
 
3 - Avoid redundances in the particle origin definitions. This way is possible to compress the input file (Lagrangian_x.dat).
 
3 - Avoid redundances in the particle origin definitions. This way is possible to compress the input file (Lagrangian_x.dat).
Line 19: Line 19:
 
  <EndModelPriority>
 
  <EndModelPriority>
  
The first model are the one with the higher priority.
+
The model are order by decreasing priority.
  
 
If the mohid user wants to activate this module it needs to predefined a preprocessor symbol called _LAGRANGIAN_GLOBAL_ in the compilation phase of the mohid.
 
If the mohid user wants to activate this module it needs to predefined a preprocessor symbol called _LAGRANGIAN_GLOBAL_ in the compilation phase of the mohid.
Line 25: Line 25:
 
=== Goal 2 - Centralize all interpolation and particle location methods ===
 
=== Goal 2 - Centralize all interpolation and particle location methods ===
  
 +
In the [[Module Lagrangian|Lagrangian module]] the interpolation and particle location methods were developed in a independent way of similar methods implemented in
 
[[Relative position of a particle in a cell]]  
 
[[Relative position of a particle in a cell]]  
  

Revision as of 17:43, 21 March 2011

Overview

The LangrangianGlobal Module is a deep upgrade of the Lagrangian Module. These upgrade has three main goals:

1 - Run only one lagrangian model in a multi-nesting implementation. This way particles can go from grid to grid without any problems (see example of particles moving between grids). In the Lagrangian module particles are destroyed when they leave the grid where they were emitted. This is the reason way a lagrangian model is runned for each grid in the Lagrangian Module;

2 - Centralise all the interpolation and particle location (in a grid) methods in the HorizontalGrid Module and (see source code [1]);

3 - Avoid redundances in the particle origin definitions. This way is possible to compress the input file (Lagrangian_x.dat).

Goal 1 - Run only one Lagrangian Model

The LagrangianGlobal module is a module very similar to the Lagrangian module. The input data file keywords are exactly the same. The modules give the same lagrangian result if the user only runs one model (no nesting). In the case of the first module when are run several nesting levels. The user only define one lagrangian input data file in the data file of the first nesting level (first model in the tree.dat). Each lagrangian tracer will use the hydrodynamic field with the higher priority depending on the tracer position. By default the priority is define inverting the tree.dat order. The user can specify the oder using a block define in the lagrangian input file where the user can define the model priority:

<BeginModelPriority> 
Model name x
Model name y
<EndModelPriority>

The model are order by decreasing priority.

If the mohid user wants to activate this module it needs to predefined a preprocessor symbol called _LAGRANGIAN_GLOBAL_ in the compilation phase of the mohid.

Goal 2 - Centralize all interpolation and particle location methods

In the Lagrangian module the interpolation and particle location methods were developed in a independent way of similar methods implemented in Relative position of a particle in a cell


Goal 3 - Decrease redundances in Lagrangian_x.dat

To decrease this redundance the "clone origin" concept was created. There are several Lagrangian Origins options.