sunfluidh:meshgen_doc
Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
sunfluidh:meshgen_doc [2017/12/02 15:22] – créée yann | sunfluidh:meshgen_doc [2020/10/27 16:31] (Version actuelle) – yann | ||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
Meshgen is a modest mesh generator for cartesian grid. The principle is very simple : | Meshgen is a modest mesh generator for cartesian grid. The principle is very simple : | ||
* Each direction {x,y,z} (or {r, | * Each direction {x,y,z} (or {r, | ||
- | * Each line can be splitted in several | + | * Each line can be splitted in several |
* Following the CFD code used, these nodes have different definitions : | * Following the CFD code used, these nodes have different definitions : | ||
* For Chorus, they are the cell centers. | * For Chorus, they are the cell centers. | ||
- | * For Sunfluidh, they are the cell-face locations. | + | * For Sunfluidh, they are the cell-face locations |
- | * Several distribution laws are available | + | * Several distribution laws are available |
* Geometric functions | * Geometric functions | ||
* Hyperbolic tangent functions | * Hyperbolic tangent functions | ||
* Cosine function | * Cosine function | ||
+ | |||
+ | ==== Compilation procedure ==== | ||
+ | |||
+ | <note important> | ||
+ | **For Sorbonne universite class, this step is automatically made by the install procedure.** | ||
+ | </ | ||
+ | |||
+ | After downloading the Meshgen project from the server forge by means of svn (svn co –username your_login https:// | ||
+ | * go to the directory MESHGEN/ | ||
+ | * Run the command make: The executable file meshgen.x is created. | ||
+ | |||
+ | ==== Meshgen settings ==== | ||
+ | |||
+ | The grid parameters are set in the input data file " | ||
+ | | ||
+ | ==== Data set description ==== | ||
+ | |||
+ | In the data file, each block of data is attributed to a direction (I,J or K).\\ | ||
+ | Each direction can be split in several parts (segments) on which a specific distribution law is applied in order to place the discrete nodes.\\ | ||
+ | Each distribution law is defined by means of namelists that are described at the end of this page.\\ | ||
+ | For illustrating how that works, let consider a domain length $L$ (in an arbitrary direction) split in $2$ parts with lengths $L_1$ and $L_2$, respectively (see the figure below). Discrete coordinates are distributed with a given law (by considering here $N_1=6$ for the first segment, $N_2=8$ for the second one). \\ The origin coordinate is not included in the procedure. It is added by the code.\\ The coordinate located at the upper end of the segment belongs to this segment, not to the following one. | ||
+ | {{ : | ||
+ | |||
+ | |||
+ | The available distribution functions are (click on function name to get details): | ||
+ | * [[Reg_fct_meshgen | Regular function]] (Function_name= REGULAR) | ||
+ | * [[TH1S_meshgen |Hyperbolic tangent function "one side" | ||
+ | * [[TH2S_meshgen |Hyperbolic tangent function "two sides" | ||
+ | * [[GL_meshgen | Gauss-Lobatto distribution ]](Function_Name= GAUSS_LOBATTO) | ||
+ | * [[geom1_meshgen | Geometric series "type 1"]] (Function_Name= GEOMETRIC_SERIE_1) | ||
+ | * [[geom2_meshgen | Geometric series "type 2"]] (Function_Name= GEOMETRIC_SERIE_2) | ||
+ | |||
+ | These functions get some parameters : | ||
+ | * **Number_of_Cells** : Number of cells over the segment (for all functions). | ||
+ | * **Length** | ||
+ | * **Left_Cell_Size** | ||
+ | * **Right_Cell_Size** : Reference size of the cell placed at the right tip of the segment (for hyperbolic function "two sides" only) | ||
+ | * **Reverse_Ordering** : Reverse the ordering of the distribution if set to .true. | ||
+ | * **End_of_Block_Data** : logical set to .true. to specify the end of a data structure (by default it set to .false. by the program) | ||
+ | |||
+ | __A template is provided **[[meshgen_templates|here]]**__. | ||
+ | |||
+ | <note important> | ||
+ | For each direction, the block of data must start with the namelist \\ & | ||
+ | * Type_of_Metric= 0 specifies a usual metric | ||
+ | * Type_of_Metric= 1 specifies an angular metric. The unit is the degree. | ||
+ | The block of data must be closed with the special namelist \\ & | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Generate the grid with Meshgen ==== | ||
+ | |||
+ | After setting the data set in the file " | ||
+ | Few questions are asked : | ||
+ | * Choice of CFD code : OLORIN or SUNFLUIDH (1) CHORUS (2) ---> choose the correct option | ||
+ | * MPI domain decomposition (1) or not (0) ---> choose the correct option (if unsure, answer 0) | ||
+ | |||
+ | For the case of MPI domain decomposition, | ||
+ | * number of domain decomposition per direction | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | ==== Output files ==== | ||
+ | |||
+ | The grid data are recorded in the appropriate files that depend on the code previously selected: | ||
+ | * For Chorus, maille_yyyyy.dat : data are recorded in binary format. " | ||
+ | * For sunfluidh : | ||
+ | * __**For sequential computation**__, | ||
+ | * __**For domain decomposition (MPI parallelization)**__, | ||
+ | |||
+ | ==== Check the grid ==== | ||
+ | |||
+ | For checking the grid features, a specific file named " | ||
+ | |||
+ |
sunfluidh/meshgen_doc.txt · Dernière modification : 2020/10/27 16:31 de yann