Home
elsA MU-98057
Contents
1. 64 9 6 2 1 Use of reserved keywords 64 9 6 2 2 Duplicated object name 64 9 6 2 3 Memory problem 65 9 6 2 4 Arithmetic exception NaN Nota Number 65 9 6 2 5 Turbulence does not develop 65 0 62 6 Fileemor 65 Ref ELSA MU 03037 lei ONERA Version Edition 1 1 ere TR NEUEN LL Date June 4 2007 Page 6 79 E La DSNA 9 6 3 When all else Tails rad RAMOSO OTRA BR 66 10 Frequently asked questions 67 10 1 How to convert e sA files from a format to anotherone 67 10 2 Can I exchange VOIR3D binary files between different computing plat Row Re Res a Rk e ew ae ee dd E dem o RUE qe de qe Red 68 AppendixA FORTRAN example creating a Tecplot mesh file 69 AppendixB How to run benchmarks 70 Bl CPU efficiency zu koe bed AA ACH X AX RR X qe ac E ded 70 B 2 Memory USAGE 2 644 644 3 4o eee eee ee ts Bee este 71 75 ONERA gt Ref ELSA MU 03037 p CO PL elsA Version Edition 1 1 ne m Date June 4 2007 DSNA User s Starting Guide Page 7 79 1 INTRODUCTION 1 1 What is elsA elsA is a software simulation tool developed by ONERA since 1997 and in collabora tion with CERFACS since 2000 elsA solves the compressible Reynolds averaged Navier Stokes RANS equations in integral form in fixed or moving reference frames Turbulence is modeled by either algebraic or transport equation models Numeri
2. cfd flow ini dir Wksp Flow 1s4 cfd flow out dir Wksp Flow 1s2 nozzle se nozzle se num set multigrid v cycle num set nbcoarsegrid 1 3rd run nozzle set fromcoarse 2 cfd flow ini dir Wksp Flow 1s2 cfd flow out dir Wksp Flow 1s1 nozzle se nozzle se num set multigrid v cycle num set nbcoarsegrid 2 Presently interpolation prolongation from coarse to fine grid use simple linear inter polation without inter block communications 6 3 Numerical cutoffs 6 3 1 Cutoffs Cutoffs are mainly used for the turbulent computation e muratiomax maximum authorized value of ju j during a computation This cutoff may be needed for turbulence models in which the u expression can lead to 0 0 This is mainly the case for the k e model This cutoff may be used during the establishment phase of the solution and must be inactive when convergence is reached If this is not the case the user does not use the expected turbulence model but its own model Depending on the Reynolds number p p can take very different values If the cutoff is set to 0 a laminar computation is done e t cutvarl and t cutvar2 these cutoff on turbulent conservative vari ables are needed to avoid non physical negative values of these quantities A good practice is to define these cutoffs equal to a fraction from 1 to 0 001 or less of the values at infinity see para
3. 9 5 Stack overflow In some rare cases e sA might fail at runtime probably with a segmentation vio lation due to overflowing the stack Try to increase the stack size typically using limit stacksize incsh and derivatives or ulimit s in sh and deriva tives 9 6 What should you do in case of trouble 9 6 1 Do not ignore warning messages Warning Error messages often provide a clue that something is going wrong Please do not ignore them Also please read carefully log messages printed on stdout and stderr Look with special care the banner which is printed at the beginning of each run many information are provided which can help you to perform many checks e elsA release production date and mode elsA v3 1 06 Copyright c 1997 2003 by ONERA dE db db db Fortran Compiler Option O Wall 03 march i686 mcpu i686 either running e SA sequential executable or the parallel one with N PROC 1 gt This is usable only if the configuration allows multigrid Production Linux japhet 2 2 13 linux Feb 16 2002 16 44 08 C Compiler Option Wall march i686 mcpu i686 O DNDEBUG D E FORTRAN LOO Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Re Date June 4 2007 T Page 64179 User s Starting Guide DSNA e Information about single double precision Size of Float 4 Bytes Size of Integer 4 Bytes 9 6 1 1 Special case parallel mode I
4. turbmod noa 26 type bndphys 13 type wounaary 3 22 i IS ES ES ONERA Ref ELSA MU 03037 elsA CE Ra S Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Ee ns 79179 DIFFUSION SCHEME Archives Secr tariat Logiciel R dacteurs Utilisateurs e sA END of LIST
5. 4 7 4 8 4 9 4 10 4 11 4 12 4 13 4 14 ONERA DSNA 4 5 Critical state dimensioning elsA User s Starting Guide Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page 41 79 In this system the critical density p the critical temperature T and the sound veloc ity a corresponding to 7 are taken equal to unity Qoo Us Po Eco Hoo 1 it 1 22M Modo a ON Ga LI dq iT y p p v1 M2 1 1 Bc c Wia de der QT p pi 1 25 1 M2 p 1 1 R C pr uw my 1 1 142 OT A y 1 114 2 M2 1 E e mE 2y y e 1 __ Pos Hoo 1 ste ZI _ My 1 Reco 1 TEM i _ 2 1 14 X a 1 M2 1 M2 4 6 Turbulent conservative variables and cutoff 4 15 4 16 4 17 4 18 4 19 4 20 4 21 4 22 4 23 4 24 The choice of the boundary values to impose to the turbulent conservative variables and to the corresponding cutoff is not trivial since it depends on the non dimensionality and of the turbulence models However the rule of thumb is relatively simple the user must choose the turbulence level 77 4 of order 107 or 107 and the turbulent Reynolds Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA A a Date June 4 2007 NCH AEROSPACE LA Page 42 79 User s Starting Guide DSNA number 44 1 of order 10 2 These quantities are only given for numerical pur
6. Python tuple 1 1 31 32 kl k2 The argument of type bndphys here b wall is used by the kernel to select which numerical treatment to apply In 3D for each block the external interfaces belonging to the 6 external block faces must be defined so we must create at least 6 boundary objects However it frequently happens that block faces are split into several windows thus enabling different boundary conditions along the same block face Note that in multigrid computations users do not have to create different boundaries associated with the different grid levels e sA kernel takes care of all the indexes management this is one of the reasons why users do not have access to grid objects see 1 A very broad range of different boundary treatment is available see elsA User s Reference Manual for an exhaustive list 2 4 2 1 symmetry lt bndphys gt type sym This boundary is very useful in fully symmetric configurations since it allows compu tation to be performed with half the mesh points 2 4 2 2 Wall This boundary comes in different versions e bndphys type wallslip slip wall condition for inviscid flows no normal velocity e bndphys type walladia adiabatic wall used in viscous computa tion e bndphys type wallisoth isothermal wall used in viscous com putation Ex bnd bndphys wallisoth name bnd bnd wall temp 2 e bndphys type walladia wl adiabatic wall
7. T1 C T ws mm 4 1 EU AE Hi the users must provide the 3 coefficients e suth const C constant in non dimensional form 110 4 T y e suth muref us non dimensional molecular viscosity corresponding to T i e suth_tref T non dimensional temperature to define 4s modl model name mod1 modl suth_const 1 modl suth muref 1 E 4 modl suth_tref 1 0 All quantities must be given in accordance to the non dimensional form chosen by the user to the equations The jz value fixes the Reynolds of the computation In turbulent computations with transport equation models users must additionally sup ply cutoffs values section 6 3 1 This is related to floating point arithmetic properties Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Fo eR Date June 4 2007 T AEROSPACE LA S al HI Page 38 79 User s Starting Guide DSNA For post processing purpose it is often useful to express the pressure coefficient and the global aerodynamic forces with their usual definitions In dimensional or non dimensional quantities in coherent unit system we have D Poo P Poo K 4 2 P IpeU2 ipM un C Jes flux dX 4 3 FEw EPICE Aas The quantity Cry may be any of the forces acting on a solid wall boundary As the integration of the fluxes is done over the boundaries the reference surface S must be chosen in agreement with the mesh definition The flux integral is obtain
8. m km KMAX Giving mesh dimensions explicitly enables some checks by e SA However in most cases users do not take the trouble to enter mesh dimensions and e sA uses the di mensions stored inside mesh files to infer the computational mesh dimensions For multi block configurations explicitly defining mesh objects one by one may become cumbersome and error prone See section B T for a faster way to specify mesh files 2 3 1 1 Mesh File Format elsA accept several mesh format to read spatial coordinate data e formatted Tecplot BLOCK 8 ml mesh name ml1 ml set file ml tp ml set format fmt tp e formatted VOIR3D e binary VOIR3D With the help of method lt cfdpb gt set_binv3d binary VOIR3D files can be used on different platforms and with different productions ELSAPROD for example nec sgi i4 r8 dec r4 f In this example binary files are created with integers coded with four bytes floats coded with eight bytes my cfdpb set binv3d i4 r8 A complete FORTRAN code that creates a valid formatted Tecplot grid file is given in Appendix A Multi zone structured meshes are discussed in chapter B TelsA also checks consistency between mesh dimensions and topology definition provided by boundary objects Currently e SA do not accept Tecplot POINT format Page 19 79 Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA 2a E Date June 4 2007 T e y Page
9. 20 79 User s Starting Guide DSNA 2 3 2 Important special case 2D or axi symmetric configuration For 2D or axi symmetric configuration one can provide mesh files in two ways e a mesh file containing the point coordinates of two K planes in 2D the two planes must of course be parallel K 1 and K Kmax boundaries can be omitted In axi symmetric case it is up to the user to insure that the 2 planes are correctly rotated K 1 and K Kmax boundaries must be defined with type axisym e however it is usually much easier and less prone to errors to provide only a single plane K 1 then elsA will be able to generate internally the correct geometry In the axi symmetric case you can set cfdpb axi formul axi source axi symmetric terms are computed as source terms lt cfdpb gt axi_formul standara axi symmetric terms are computed as fluxes In the axi symmetric case if the user chooses to provide a single plane it must be one of the three coordinate planes xy xz or yz 2D pb_2d cfdpb name pb_2d pb 2d config 2d m 2d mesh name m 2d m 2d file mesh_lplan axi pb axi cfdpb name pb axi pb axi config axi two planes will be generated by rotating through y axis pb axi axis rot y m axi mesh m axi file mesh_lplan 2 3 3 What is a correct mesh A very common error for newcomers is to provide an incorrect mesh file Let us give some advices here e A me
10. 4 30 globborder 36 grid E E gridl NE model wal1distcompute link is to index s alphabetical headings 73 gridline Ortho model walldisteompute elsA 10 elsa 10 11 GUL 7 t lsA py Python module n 10 11 H ELSA MEMORY VERBOSE environment variable link is to index s alphabetical headings elsA_use t Python module _ I _ elsA user 9py Python module 9 link is to index s alphabetical headings ELSAHOME environment variable 9 ICEM CFD ELSAPROD environment variable 9 ICEM2elsA 50 elsAsession 47 inactive bnophys type environment variable 9 init MBARA B3 EpAttrDefs py Python module in onaphys type B 4 EpelsA py Python module IRS EpKernelDefVal Py eython module iter ini tur unit 65 euler numerics phymod EVB 8 9 49 J ONERA nie Ref ELSA MU 03037 Se elsA Version Edition 1 1 ina Date June 4 2007 DSNA User s Starting Guide Page 77179 link is to index s alphabetical headings 73 N Jameson link is to index s alphabetical headings NaN K near match class 4 link is to index s alphabetical headings 73 near match keps jl moder turbmod EC ki11 52 new_boundary 46 50 komega KOK model turbnoa new join 50 komega wilCOX moder turbmoa nomat ch lt cias gt RE ksh 9 nomat ch 36 nomat Ch boundary type L
11. Remark The family concept can also be used with boundary objects instantiated with direct call to boundary constructor In that case one must use boundary family Bnd0000 boundary Block0000 E_W_Bnd0000 inj1 name Bnd0000 E W Bnd0000 set wnd 1 1 1 17 1 7 Bnd0000 set family 6 lie not with call to construction method new boundary ONERA Ref ELSA MU 03037 elsA ME DR NU a Version Edition 1 1 a Date June 4 2007 DSNA User s Starting Guide Page 47 79 6 2 Mesh sequencing It frequently happens that we would like to perform computations with a coarsened mesh e It may be convenient to perform preliminary computations on a coarsened mesh to find mistakes in the Python script s to identify any unforeseen problems or to tune numeric and physical parameters without wasting too much resources e Comparing computations performed on coarse and fine mesh gives very useful information concerning grid convergence To achieve this e SA provides users with an easy to use yet powerful mechanism problem cfdpb name problem problem coarsen_mesh 2 In this example coarsening is uniform in the entire computational domain Ex cept this additional line the script is unchanged which avoids many potential errors e The total time to obtain converged results can sometimes be reduced through several chained computations converging first on the coarsest grid
12. float i 1 y i rjr k float j 1 z i j k float k 1 END DO END DO END DO cform 6E15 7 OPEN UNIT FILE ml tp C See Tecplot User s Guide WRITE UNIT A TITLE First mesh example WRITE UNIT A VARIABLES x y z WRITE UNIT A ZONE T grid 1 I 12 J 7 K 7 F BLOCK WRITE UNIT cform x i j k i 1 IMAX j 1 JMAX k 1 KMAX WRITE UNIT cform y i j k i 1 IMAX j 1 JMAX k 1 KMAX WRITE UNIT cform z i j k i 1 IMAX j 1 JMAX k 1 KMAX C UNI Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 MS Date June 4 2007 Page 70 79 User s Starting Guide DSNA Appendix B HOW TO RUN BENCHMARKS B 1 CPU efficiency It is sometimes useful to know e sA CPU efficiency on a given platform A convenient way to measure CPU efficiency is to divide the total CPU time by the time iterations and the number of mesh points The computed value will of course depend somewhat upon the specific test case however if the problem size is large enough since the cost asso ciated with boundary treatment can be neglected the efficiency will be nearly entirely determined by the numerical scheme spatial discretization and temporal integration To give an easy way to measure e sA performance with complete freedom to specify the number of blocks and the number of mesh points inside each block we have provide
13. instead they are stored in a resource file that can be customized to specific needs in fact this resource file see can be modified by local e sA experts so that less ad vanced users will benefit from their experience For instance one can imagine that a computing site specialized in hypersonic flows may choose different de fault settings than a a computing site specialized in turbo machinery computa tion Page 43 79 Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Fo eR Date June 4 2007 AEROSPACE LA S 3 Page 44179 User s Starting Guide DSNA However default values have their price e Some users definitely wish to see in a single script file the complete problem definition of course these users are entirely free to avoid using any default values e A bigger problem in our opinion is that experienced users may have the un pleasant feeling that they do not know exactly which options e sA has chosen behind the curtain Two answers to this legitimate concern are given in the next sections 52 Whatis the default value associated with a given attribute Internally e sA default values are stored in a Python dictionary dict def val which can be consulted in Python module EpKernelDefVal py For example running the following command cat SELSAHOME Dist lib py EpKernelDefVal py grep format We obtain format fmt tp Another better way to get defaul
14. m coarse j 3 m coarse k 1 e extractor name e e var xyz e file m coarse e loc node This will create a file corresponding to a mesh with one point over two in the i direction one over three in j and every point in k 10 2 Can I exchange VOIR3D binary files between different computing plat forms The answer is YES this is done through lt cfdpb gt set_binv3d see elsA User s Reference Manual for a complete discussion For instance binary files created by elsA executables on COMPAQ DEC ALPHA machines can be used by SGI PC running Linux and NEC computers Binary Tecplot files can be exchanged freely note however that Tecplot binary files are not available on all platforms An experimental version of e sA is available for PC running Windows this version requires that Cygwin has been installed ONERA Ref ELSA MU 03037 elsA Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page 69 79 HE FRENCH AEROSPACE LAB Appendix A FORTRAN EXAMPLE CREATING A TECPLOT MESH FILE ROGRAM WRITI PLICIT NON TEGER UNIT TEGER IMAX JMAX KMAX TEGER i j k HARACTER 8 cform ARAMETER UNIT 10 ETER IMAX 12 JMAX 7 KMAX 7 REAL x IMAX JMAX KMAX y IMAX JMAX KMAX z IMAX IMAX KMAX C Create Grid Points DO i 1 IMAX DO j 1 JMAX DO k 1 KMAX GRID TP EE pr z Z D D Q H H H HD Z D z Z x i j k
15. nomatch linem cas RE N N n n Z link is to index s alphabetical headings 73 omatch_linemt 36 l ami nar numerics phymod ds re f bndphys type LD Ll BRARY 6 4 PA TH environment variable stur nunerics phymod ui LD QM ESI BRARY PAT H environment variable umer 1 cs A LES 7 limit 63 _0 Lo P3 link is to index s alphabetical headings 73 LU ODE 18 LUSSOR 29 18 ONERA 7 M 00 1161 OpenMP 56 link is to index s alphabetical headings 73 p 56 man Out SUP wnapnys type B 24 man ool overlap lt cias gt A O overlap 36 match P mat ch boundary type i B l mesh 4 ALEE link is to index s alphabetical headings mesh sequencing EMG P AT H environment variable mesh sequencing wo phymod onesies 25 metrics 2 prescor wnapnys 5 23 Michel 26 proc o 56 63 michel model turbmod 26 ps 71 mininterf model wallaisteompute Python mininterf ortho model walldistcompute Python gt elsA mode 1 25 PYTHONHOME environment variable 10 MPI 9 46 56 57 63 PYTHONPATH environment variable 9 mpi block2proc crap 57 multigrid 29 Q MUSCL 27 link is to index s alphabetical headings 73 Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 a Date June 4 2007 Page 78179 User s Starting Guide DSNA R U link is to
16. s alphabetical headings 73 backward Euler baldwin moder turbmoa dy Baldwin Lomax bin_v3d extractor format 68 binary VOIR3D block 4 13 17 P1 33 B6 bndphys boundary link is to index s alphabetical headings 73 Cartesian mesh generator cell central type numerics 27 CERFACS 7 ceo 81118 24 27 6459161 70 cfd nb block cfdpb cfdpb CFL 29 52 65 CGNS 17 23 25 check 61 check 66 coarsen init esapo 47 Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 P CI MERRILL Date June 4 2007 Page 76 79 User s Starting Guide DSNA coarsen mesh ctapb 147 163 extract 22 56 coeffmutinit init A extractor 2251 collect vounaary type 22 SRE Tab danse command line option 55 COMPAQ 68 F compute link is to index s alphabetical headings 73 config crapb 18 amily H6 51 Coquel Liou 27 family boundary 1 146 CPU 6 70 FMG 47 CRAY 50 format extractor 68 csh 9 formatted crecpio Cygwin formatted vor FORTRAN 1 I 19 D fromcoarse cra 47 link is to index s alphabetical headings FUJITSU db di re GE O ry cfdpb automatic block gen Full MultiGrid FMG DEC ALPHA 68 G DES 7 link is to index s alphabetical headings 73 dict def val generator nesn 17 display 21 get defaults 45 disp numerics artviscosity global time step pts
17. been built its internal state i e the value of its attributes can be modified two syntaxes are available e Long form ext set var xyz mach set attribute var to value xyz mach e Short form ext var xyz mach The short form is more compact P however for large scripts with many objects it may lead to increased start up time So we recommend to use the long form 1 7 1 boundary objects Currently boundary objects can be created with two equivalent syntax Syntax 1 Using a constructor requiring a window object win i window block name name win i boundary type walladia outpres Physical boundary match nearmatch nomatch Topological boundary bndy i boundary block name win i boundary type name bnd Syntax 2 Using specific construction method 2 1 Physical boundary using an indirection to a bndphys object bndy i new boundary bndy i block name bndphys j FAMILY ID 1 65 33 33 1 2 2 2 Topological join join i new join join i block name join j FAMILY ID 1 65 33 33 1 2 The second method avoids the explicit creation of a window object which in many cases is not used elsewhere in the script it is also more compact see also p and 6 1 p 46 Single or double quotes are allowed our advice prefer single quote this is the reason why it is used by many examples in this document ONERA Ref E
18. index s alphabetical headings 73 link is to index s alphabetical headings 73 RANS 7 ulimit 63 Roe URM Runge Kutta use de fault s 45 S USR2 52 link is to index s alphabetical headings 73 V script load balance py son moa link is to index s alphabetical headings ule van Leer set 50 VAT extractor set_binv3d 19 68 view 45 SGI 9 68 viscous fluxes umeris 27 sh 63 V SCrapp excess ma 42 show defaults 45 VOIR3D 6 19 67 68 show _origin 45 s1 A 38 W SIGUSR2 52 52 link is to index s alphabetical headings 73 slope walladia onapnys type 23 46 smith moder turbmoa walladia Wl bnaphys type Spalart moder turbnoa 26 walldistcompute noaer 26 Spalart Allmaras 26 wallisot wl onapnys type 23 stacksize 63 wallisoth cnapnys type 23 standard sape axi former y 20 wallslip conapnys type 5 23 state D4 47 window 22 22 23 statistics 71 72 Windows 68 suth_constt 87 suth muref 37 A suth_trefu 37 link is to index s alphabetical headings 73 SYM bnaphys type 3 Y link is to index s alphabetical headings 73 link is to index s alphabetical headings 73 t harten uses 27 Z Tecplot link is to index s alphabetical headings THI 28 top topo_and_bnd py Python module tuple N turb_order numeries
19. integer Internally e SA uses an algorithm to find the orientation of the abutting faces In some cases this algorithm fails and users have to provide additional information in the form of an additional Python tuple here 1 2 3 join new join bl1 join2 f match 23 291 7 Li L 22 3 Remark A good practice is to always explicitly give the orientation tuple 3 2 2 near match to n connectivity definition new join nearmatch blE b1 b2W Fam 23 23 1 17 1 17 fine new join nearmatch b2W b2 blE Fam 1 1 1 9 1 9 coarse Compared with t ype match the only added information is a Python tuple here 2 2 2 giving the refinement ratio 3Once again readers are strongly advised to consult CGNS documentation specially CGNS Overview and Entry Level Document Appendix C Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 Dos TO E Date June 4 2007 A a Page 36 79 User s Starting Guide DSNA 3 2 3 nomatch gl globborder name gl g2 globborder name g2 new join nomatch Bnd0001 Block0000 gi g2 Fam 23 23 1 17 1 17 new join nomatch Bnd0006 Block0001 g2 gl Fam 1 1 1 17 1 17 3 2 4 nomatch linem new join nomatch linem Bnd0001 Block0000 gi g2 Fam 23 23 1 17 1 17 Compared with type nomatch the only added information is a Python tuple here 0 0 giving the internal ordering insid
20. is detected Processing continues but garbage will almost surely being produced Example Boundary interface not defined elsA 2361 ERROR User Error info 2361 Boundary Interface never defined blk 69 69 63 64 1 2 3 FATAL There is no way to continue processing immediately stops Example failure of memory allocation Dynamic memory allocation algorithm has failed Please try increasing the process datasize limit ulimit in ksh limit in csh If submitted with qsub check 1m argument Note that the problem you try to solve may be too big for your machine ONERA Ref ELSA MU 03037 p CO PL elsA Version Edition 1 1 Se Date June 4 2007 DSNA User s Starting Guide Detailed Memory Information Process asked for 1345294332 bytes Current Total count 1345298532 Page 63 79 t elsA 9110 FATAL Out of Memory Leaving error code is 9110 f elsA exit forced 9 4 Parallel errors In MPI parallel mode if something goes wrong look carefully to each logfile produced by each processor elsA MPI Pid xxxxxxx NO elsA MPI Pid xxxxxxx N 1 paying special attention to any error messages It is sometimes useful to run in sequential mode in this case proc is simply ignored so that it is not necessary to remove definition of proc attributes If the configuration is too big to be run on a single processor consider using c dpb coarsen mesh and cfdpb coarsen init
21. permission some checks should be added so that for instance re start files cannot be inadvertently overwritten elsA test the residuals if a NaN is found computation is stopped Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA e AS Date June 4 2007 NCH AEROSPACE LA Page 66 79 User s Starting Guide DSNA 9 6 3 When all else fails e Look at known bugs in the appropriate section of the e sA Web site http elsa onera fr elsA use refbugs html e Search for interface changes also in the appropriate section of the e sA Web site It may happen that some attributes have been changed so that your python script does not mean what you think Look carefully to EpAttrDefs py and or use the man and check interface commands elsA gt gt gt man vel formulation Attribute name vel formulation Class es numerics Description velocity formulation for mobile grids Allowed values relative absolute Default value s absolute Rules dependency rules vel formulation is meaningful only IF block motion mobile e Send an e mail to elsA info onera fr Seehttp elsa onera fr elsA query PRsub html man elsA prints synthetic information for each attribute ONERA Ref ELSA MU 03037 elsA Version Edition 1 1 Date June 4 2007 HE FRENCH AEROSPACE LAB DSNA User s Starting Guide 10 FREQUENTLY ASKED QUESTIONS 10 1 How to convert els
22. readers to consult the EVB which contains more than 100 carefully validated test cases instead of starting from scratch it is often a better idea to start from an existing valid script as close as possible to the planned computation and then to customize it to the specific computation to be performed You can consult EVB scripts e browsing the URL http elsa onera fr elsA validation valid html e very basic script is available at http elsa onera fr elsA use test sh cart 2blk pyj this script which does not require any mesh or init files is often convenient to check that e sA installation is correct 1 5 Environment and installation In the following we assume that you have access to a working e sA installation We also assume that you are using a Unix shell compatible with ksh In some cases you may even have access to several productions single double precision opti mized debug serial parallel MPI static dynamic shared libraries To run elsA you must set three environment variables e ELSAHOME consult the local e SA expert to know its value e ELSAPROD this variable will control which production will be used For example on SGI sgi is sequential double precision sgi mpi parallel double precision sgi r4 single precision sgi dbg debug version and so on e PYTHONPATH this controls where the Python interpreter will search extension modules such as elsA py orelsA user py Most of the time you ca
23. t1 NITER NPOINT print d B 2 Memory usage The Unix Operating System as well as standard queuing systems provide utilities such as ps top acct job to measure the memory used by a process However we have found useful to provide our own internal measure of the dynamic memory allo cated inside e SA kernel We restrict the memory allocation diagnostic to F1dField objects which are the basic containers of numerical values manipulated by elsA problem cfdpb name problem problem compute problem statistics An example of output from lt cfdpb gt statistics call Heap Memory Usage Summary Total Number of new calls 7836 new E Float 6182 new E Int 1614 new E Boolean 40 Maximum total allocated memory 15454328 bytes Maximum allocated memory float 13097992 bytes i e obtained from the Operating System through new operator Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 Dos TO E Date June 4 2007 Page 72 79 User s Starting Guide DSNA Maximum allocated memory int 2398728 bytes Maximum allocated memory bool 148208 bytes Another way to get memory information without inserting a call to lt cfdpb gt statistics is to set environment variable ELSA MEMORY VERBOSE to TRUE a detailed memory usage summary will be printed at the end of the logfile ONE
24. the user must select a global time step it must be small enough so as to resolve correctly the unsteady phenomena but not to small in order to minimize the number of time steps 2 6 2 2 Explicit stage In the explicit stage the time integration is based upon either a multi stage Runge Kutta algorithm or a standard backward Euler scheme 2 6 2 3 Implicit stage In both steady and unsteady cases an implicit stage is generally added to speed up the total computation time by bypassing the time step limitation of explicit schemes The most widely used implicit operators are e Implicit Residual Smoothing IRS it is used in association with centered Jame son s scheme with Runge Kutta 4 stage explicit time integration e LU or LUSSOR they may be used with both centered and upwind spatial dis cretization schemes with backward Euler explicit time integration 2 6 3 Multigrid acceleration Multigrid uses a sequence of successively coarser meshes in some cases it can be a very powerful tool to accelerate convergence To use multigrid users must provide meshes which can be coarsened in each direction if n grid levels are desired the number of points of the fine grid must be divisible by 2 1 In fact the constraint is even stronger each boundary condition must be coarsen able Also a minimum number of points must remain in the coarsest grid this minimum depends on the spatial discretization scheme e 3 nodes 2 cells
25. var residual cons extractResF file nozzle residual tp Aerodynamic data extractMach extractMach var xyz mach extractor name extractMach extractMach file mach extractMach loc node STEP 2 COMPUTATION nozzle compute HE STI EXTRACTION nozzle extract End script nozzle py It is good practice to gather boundary definition in a separate script here topo_and_bnd py from elsA user import from EpConstant import F_0 1 F_W 2 Definition of Physic b_sym bndphys sym b wall bndphys wal b out bndphys out b inlet bndphys inj al Boundary bndphy r r lslip name b wal sup name b out Ts name b inl S objects name p sym q e et Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page 16 79 stagPres 1 352092 stagEnth 3 txv 1 tyv 0 tzv 0 b_inlet set b_inlet set b_inlet set b_inlet set Number of Boundary Objects new boundary b1W new boundary b1S new boundary b1N new boundary b1B new boundary b1F new boundary b2E Block0000 Block0000 Block0000 Block0000 Block0000 Block0001 new boundary Db2S new boundary b2N new boundary b2B new_boundary b2F new join b1E Bl new join b2W Bl Block0001 Block00
26. vectorisable ONERA Ref ELSA MU 03037 LLLA elsA mp iene SS Version Edition 1 1 e 8 Date June 4 2007 DSNA User s Starting Guide Page 35 79 to store the connectivity information once saving us the cost of re computing connectivity information at the beginning of every run There are three types of connectivity that can occur point by point patched and over set e The point by point or 1 to 1 type occurs when the edges of zones abut and where grid vertices from one patch exactly correspond with grid vertices from the other with no points missing a partner e The patched type occurs when the edges of zones abut but there is not a corre spondence of the points or they are not partnered with another point e The over set type occurs when zones overlap one another or a zone overlaps itself We do not describe mismatched patched or over set connectivity infor mation in this document the user is referred to User s Reference Manual for details 3 2 1 match 1 to 1 connectivity definition The easiest way to explain how to specify 1 to 1 connectivity is as usual to give a simple example bl block name b1 joinl new join joinl bl join2 f match 23 23 1 7 1 7 b2 block name Pb2 join2 new join join2 b2 joinl f match CL lg dT LTY In this example the i IMAX 23 edge of block b1 abuts the i 1 edge of block b2 f_ match is a user chosen arbitrary
27. with Jameson s scheme e 4 nodes 3 cells with Upwind schemes Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 Coq RUNE RE Date June 4 2007 Page 30 79 User s Starting Guide DSNA 2 6 4 Other acceleration techniques We do not discuss here either Low Speed Preconditioning or Dual Time Stepping Please consult the Theoretical Handbook and User s Reference Manual 2 6 5 Some useful examples In the following we shall try to provide a limited set of useful associations starting from these examples it is hoped that users will tune the numerical parameters to their specific problem in far less time than by starting from scratch To keep examples as compact as possible we have used default values see 5 1 in a systematic way 2 6 5 1 Centered scheme steady computation May be used in subsonic transonic configuration num numerics name num spatial discretization scheme num flux jameson num set avcoef k2 0 5 num set avcoef k4 0 032 temporal integration scheme num ode rk4 num implicit irs num cfl 4 typical CFL number 2 6 5 2 Centered scheme unsteady computation num numerics name num spatial discretization scheme num flux jameson num set avcoef k2 0 5 num set avcoef k4 0 032 temporal integration scheme num time algo unsteady num ode rk4 num implicit irs num timestep
28. with wall law treat ment used in viscous computation e bndphys type wallisot wl isothermal wall with wall law treat ment used in viscous computation Additional qualifiers prescor and ext rap can be optionally set by users k1 k2 Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 La Date June 4 2007 ii is uid DEA Page 24179 ser s Starting Guide 2 4 2 3 Subsonic inlet lt bndphys gt type injl b inlet bndphys injl name b inlet b inlet set stagnation pressure stagPres b inlet set stagnation enthalpy stagEnth b inlet set txv txv b inlet set tyv tyv b inlet set tzv tzv 2 4 2 4 Supersonic outlet lt bndphys gt type outsup 2 4 2 5 Non reflexion lt bndphys gt type nref Some state state name some state some state set ro 1 0 some state set rou 9 998476951564e 01 some state set rov 0 0 some state set row 1 745240643728e 02 some state set roe 2 971576866041e 00 b ref bndphys nref name b ref b ref state some state 2 4 3 Block Initialization To perform CFD computations some initialization is always required init class takes care of this at least one init object must be attached to any block object b block name b i init b name i To initialize the conservative variable vector field we can e Initialize with a uniform constant state vector e SA provides a specific c
29. 0 toolkit is equivalent to a Unix library multigrid precond artviscosity ode time_algo implicit Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 Cx REUNIR Date June 4 2007 Page 62 79 User s Starting Guide DSNA elsA Internal Error Please check your script file and look carefully to warning errors Then Please submit a full bug report See URL http elsa onera fr elsA query PRsub html elsA File 0bj sgi Base BlkMesh C line no 951 elsA 9920 FATAL Internal Error The philosophy corresponding to these two contexts is quite different to be useful the toolkit must be very extensible letting programmers do numerical experiments at their own risk On the contrary end users and specially newcomers must be provided with as much safety guards as possible Let us hope that a good compromise can be found between these two conflicting requirements 9 3 1 The three kernel error levels Kernel errors are classified in three categories according to the error severity 1 WARNING there is some inconsistency in the user input e SA tries to do its best to continue Example 1 E ERRENTRY 2232 E WARNING Rotation with null angle JoinBaseP C No text Example 2 Boundary interface re defined elsA 2350 ERROR User Error info 2350 Boundary Interface already defined b1k1 bnd111 1 1 2 3 1 2 2 ERROR an error
30. 01 Block0001 Block0001 ock0000 b2 ock0001 b1 ONERA elsA Rec User s Starting Guide DSNA 12 ho inlet E 0 1 1 1 b_sym F 0 Ll 23 F b wall F W 1 235 17 b sym F0 1 23 d b wall F W 1 23 1 b out F O0 23 23 db b sym F 0 7 23 21 b wall F W 1 23 17 b_sym F 0 1 23 a7 b wall F_W C 1 23 1 F0 23 23 1 T7 FO 1 j i UM stagnation pressure stagPres stagnation enthalpy stagEnth b inlet set txv txv JAY HP I war Y yrrrre p I I Sa uurrrr eis dpi y H EHH SJ H A sd ee ee ONERA Ref ELSA MU 03037 mp OE elsA Version Edition 1 1 ARA m Date June 4 2007 S A 1 eT 3 DSNA User s Starting Guide Page 17 70 2 GETTING STARTED In the following we will briefly show what are the basic elements of a CFD computa tion performed with e sA Each section will introduce a new concept corresponding to a Python class To keep the discussion as simple as possible we do not discuss multi zone computations in this chapter Chapter 3 is entirely devoted to multi zone specific information 2 1 Some terminology We start with some terminology in order to avoid misunderstandings Browsing the extensive CGNS documentation may also help since this document tries to stick to
31. 37 ox CE elsA Version Edition 1 1 ne Date June 4 2007 DSNA User s Starting Guide Page 65 79 9 6 2 3 Memory problem If you run out of memory it is sometimes possible to increase the memory allowed by the Unix system give maximum size of data segment or heap in kbytes ulimit d 3906250 You may try ulimit d unlimited 9 6 2 4 Arithmetic exception NaN Not a Number When a floating point exception is encountered depending on the production two cases are possible e Computation stops immediately e Computation continues until the next occurrence of convergence residual com putation 8 Suggestion it may help to reduce CFL maybe starting from a relatively low value and increasing towards larger values f_cfl function linear f cfl set linear 2 30 0 500 3000 num attach f cfl 9 6 2 5 Turbulence does not develop In case of Navier Stokes computation with transport equation models check that the turbulence develops correctly To this end look at the residual of pk It must in crease at the beginning of the computation Use init coeffmutinit and iter ini tur if needed in particular for Spalart Allmaras and k e 96 2 6 File error Mesh ml file very bidulic file name ml format fmt tp elsA 4011 FATAL Fortran OPEN error Suggestion check file name and file permission Please note that e SA is currently too Jaxist about file ownership and
32. 411732e 04 Linf 4 1046027e 03 3 16 15 0 dq 5 L2 1 1554889e 03 Linf 2 8076357e 02 3 16 16 0 CK CKkCk ck CKkCk ck A KK ck ckck k ck ck ck kCckck ckck ck kc kCck ck ck ck ck ck ckck ck ck ck ck kck ck ck ck ck ck ck ck k ck ck ck ck ck ck k ck ck ck ck ck k k k kk kk iteration no 18 Dump restart file 9044182 process pid niter 18 elsA Post Processing for Block0000 pid0009044182 iter00018 Write Block0000 pid0009044182 iter00018 tdg 1 L2 3 7224305e 04 Linf 6 1108484e 03 4 16 16 0 dq 2 L2 3 5497200e 04 Linf 5 6742947e 03 5 16 16 0 3On some platforms you may have to replace SIGUSR2 by USR2 ONERA Ref ELSA MU 03037 elsA ME DR NU a Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page 53 79 dq 3 L2 2 1372279e 04 Linf 4 6443970e 03 3 15 16 0 dq 4 L2 2 1372277e 04 Linf 4 6443970e 03 3 16 15 0 dq 5 L2 9 9448340e 04 Linf 1 7954864e 02 3 16 16 0 7 3 2 SIGTSTP signal Control Z Another possibility to interact dynamically with a running job is to send it the SIGTSTP signal In interactive mode you can use control Z key combination You are then prompted with a menu StODss s nons 1 Extract 2 Continue 3 AAA 4 1 The job is suspended 1 Stopped SIGSTOP tools Tempo v2 2 10 Dist bin sgi elsA x x py Execution will continue if the user enters fg 1 2 The registered extract objec
33. 7 Page 60 79 User s Starting Guide DSNA 9 2 2 Invalid attribute 9 2 2 1 Unknown attribute The user tries to give a value to an attribute which does not exist in the class to which belongs the object in the following example note the spurious h in gahmma elsA py gt gt gt modl model name mod1 elsA py gt gt gt modl gahmma 1 4 Note the spurious h elsA interface ERROR Name error unknown macro attribute gahmma for class model macro attribute name should be in baldwin model constke constkel constke2 constke3 constke4 cv fluid gamma michel model models phymod phys props prandtl prandtltb specrad s mean sst cor suth const suth muref suth tref tblx ckleb tblx distlim tblx ibalditx tblx preslim tblx vortrlim tmic cfg tmic ctipleak tmic delta tmic deltamx tmic itpf tmic vortcrit tmic vortlim tmic vortrlim turbmod turbmod variants type asm type keps visclaw viscosity walldistcompute zhenglim message is unknown attribute gahmma for class model 9 2 2 2 Invalid type Here the attribute exists but the type of the associated value is wrong gt gt gt from elsA user import gt gt gt cfdl cfdpb name cfdl gt gt gt modl model name modl1 gt gt gt modl set gamma 1 elsA interface ERROR Type e
34. A naca cfdpb name naca naca set automatic block gen db directory naca set cfd nb block 2 DEFAULT 1 Optional parameters if not DEFAULT naca set cfd block prefix Block naca set cfd file indexO 0 naca set cfd file digit 4 naca set cfd mesh format fmt tp c r L naca set cfd flow out format fmt tp naca set fd flow ini format fmt tp r MESH dE naca set cfd mesh dir Mesh Mesh is actually default Flow initialisation D dE dE od ESTART FROM FILE 1 if RESTART FROM FILE naca set cfd flow ini dir Flow ini else naca set cfd init state sta restart file naca set cfd flow out dir Flow out 3 2 Zone connectivity In principle one can think of clever geometrical algorithms which would be able to generate zone connectivity information when parts of a zone connect with parts of an other zone or itself without any additional user inputs However e sA use a different strategy for several reasons e Coding of such algorithms is certainly not an easy task we are not sure that it is even achievable in the most general case e Even in cases where such algorithms could be used the associated cost may not be negligible compared with CFD computations It is thus more efficient Specially on vector computers since these geometrical algorithms are not easily
35. A files from a format to another one It occurs frequently that one has to convert a file from a given format say formatted Tecplot to another one say binary VOIR3D Instead of writing a conversion utility 1t is much better to let e SA do the work for us my_cfdpb cfdpb name my cfdpb m mesh name m m file m tp m format fmt_tp blk block name blk blk mesh m e extractor blk name e e var xyz e file m v3d e format bin v3d e loc node num numerics num iter 0 0 iteration no actual computation my_cfdpb compute my_cfdpb extract Using automatic block gen db directory the whole configuration can be converted very easily my cfdpb cfdpb name my cfdpb my cfdpb set cfd mesh format fmt tp extractor without additional argument f Applies to the whole configuration e extractor name e e var xyz e file m v3d e loc node num numerics num iter 0 0 iteration no actual computation my cfdpb compute my cfdpb extract Page 67 79 Ref ELSA MU 03037 ONERA elsA ONERA Version Edition 1 1 p TR Date June 4 2007 id S Page 68 79 User s Starting Guide DSNA At run time for each block a mesh file with format bin v3d will be created m v3d0000 m v3d0001 A similar trick can be used to extract a coarsened grid from the fine one m mesh m file m fine m coarse i 2
36. LSA MU 03037 elsA PURA a 35 Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page 13 79 1 8 A concrete example For the impatient reader let us present a simple yet complete elsA script This first example script computes the flow through a rectangular nozzle using two blocks Mesh files respectively Flow files are located in directory Nozzle_m respec tively Flow_i In this example we do not instantiate geometric objects block mesh init explicitly instead we ask e sA to generate them internally attribute cfdpb automatic block gen This will be quite useful when many blocks are involved Your very first elsA script from elsA user import STI Eri tg 1 PROBLEM DESCRIPTION PROBLEM CREATION must be at the beginning of the script file or interactive session nozzle cfdpb name nozzle I Geometry and Space and Time Problem Definition nozzle set block creation mode automatic nozzle set automatic block gen db directory nozzle set cfd nb block 2 MESH 2 Mesh files ar xpected in directory Nozzle m Default format bin v3d nozzle set cfd mesh dir Nozzle m Flow initialisation 2 Flow init restart files ar xpected in directory Nozzle i Default format bin v3d nozzle set cfd flow ini dir Nozzle i restart fil
37. Presently this task must be done by users before actually submitting their parallel job to elsA Let us give a simple example Before splitting PO bl b2 After splitting PO bl b20 b21 Once this pre processing step is over using e SA in MPI parallel mode is straightfor ward 1 Script files are nearly identical in serial and parallel mode the only additional data to be specified is the mapping of blocks to processors Two options are available to define this mapping a use of attribute lt block gt proc that must be set for block blkO block name b1k0 blk0 node 0 blkl block name blk1 blkl node 1 lFuture elsA releases may provide in addition OpenMP shared memory parallel processing OpenMP is the de facto standard for directive based shared memory parallel processing although some experiments have already been done to parallelize e SA with OpenMP OpenMP version is still not officially supported And not for mesh or extract objects ONERA Ref ELSA MU 03037 elsA PURA a 35 Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page 57 79 b use of attribute c dpb mpi block2proc my cfdpb set mpi block2proc script load balance Here script load balance py isa very simple Python script con taining a Python dictionary providing the mapping of blocks to processors The dictionary keys an
38. RA Ref ELSA MU 03037 o CE elsA Version Edition 1 1 AttosPAC Date June 4 2007 DSNA User s Starting Guide Page 73179 Direct access to index s alphabetical section headings MIN MINI rita fia l l lt x x s c Sa ello m O MIN MITE MINO l l EA EEE E TI S e 1 e SOS S S S S S S S S S S S S S S S oS S S S S S sd Y Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA pa Date June 4 2007 Page 74179 THE FRENCH AEROSPACE LAB User s Starting Guide DSNA r a User s Starting Guide Ref ELSA MU 03037 JA Version Edition 1 1 Date June 4 2007 Page 75179 INDEX DSNA v B8 fast 50 A B 5 Ce Ds D F6 E 16 F he G ns H he 6 eJ K I Eu m M 77 N n 0 17 P n 0 aa R d S js eT U ha V js W js lt X se Y s Ze I 2D 20 3p T2 23 3p numerics viscous_fluxes 5p numerics viscous_fluxes 5p cor numerics viscous_fluxes A link is to index s alphabetical headings 73 acct job adim_l ib Python module artviscosity numerics 22113 automatic block gen era 67 automatic_block_gen cetapo 13 av_type numerics 1 27 avcoef k2 numerice 27 avcoef k4 numerice 27 avcoef sigma nunerics IZA axi symmetric axi_formul era 29 axi s OUYCE cfdpb axi formul axi SYM bnaphys type 0 B link is to index
39. YES we EDS 47 6 3 Numerical cutoiis 44 4 4 4294404229489 88688 053 48 AA cue i depo e dece dor od ce dioe der He Head d 48 6 4 Topics not discussed 24 x3 9x woe O exe wee ES 49 50 7 1 ICEM CFDtoe sAtranslato 50 7 2 How to reduce start up time 50 titi hi tit didier dt RES 51 EA A 52 1 3 2 SIGTSTP signal COC ES Le x dw Ne XD ue 53 oii acre E v RSS dod gom de So dog d d 54 56 9 Troubleshooting 58 9 1 Environment error 2 44 ROS OR X RO X A SEE EY SER 58 9 1 1 Incorrect PYTHONPATH 4 2 4 2 RR RS 58 9 1 2 Incorrect LD LIBRARY PATH 58 9 1 3 Incorrect PY THONHOME see dee So ede dead 59 PANAS s 206 ho 39 eee eRe RE See ee SS 59 9 2 1 Syntax ento 2 3 oy 9 era ara ste X eased 59 92 2 Invalid attribute e e ee aie e d ma RR ERES 60 9 2 2 1 Unknown attributel 60 02227 Invaldtype wo ARA ES 60 9 2 2 3 Invalid range 4 ead eed m e ma a 60 9 23 Attribute value required 60 9 3 Kernel errors 2 s nan Rate see 61 9 3 1 The three kernel error levels 62 9 4 Parallel errors 54224 x REOR See Se eS RS SEE e xU 63 LEALES TTT ee e ee Tee re ee 63 9 6 What should you do in case of trouble 63 9 6 1 Do not ignore warning messages 63 9 6 1 1 Special case parallel mode 64 9 6 2 Some of the most frequent errors
40. a iii DSNA User s Starting Guide User s Starting Guide 4 c d cfdpb modi model numi numerics view check cfd1 compute cfdi extract Quality Author For the reviewers Function Interface Manager Name M Gazaix M Lazareff Visa Software management ELSA SCM Applicability date immediate Diffusion see last page modi set phymod nstur Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page 1 79 Approver Project head L Cambier Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA PT Date June 4 2007 wc Page 2179 User s Starting Guide DSNA HISTORY version DATE CAUSE and or NATURE of EVOLUTION edition 1 0 May 16 2006 Creation 1 1 May 23 2007 Corrections added script evolution 1 1 June 4 2007 Corrections ONERA nie Ref ELSA MU 03037 e rd Version Edition 1 1 Date June 4 2007 DSNA Page 3 79 CONTENTS 3 7 MEA cem whe dex ES EER 7 1 2 What sin this documen locas ome OR EE OUR RE Re gr 8 1 3 Who should read this document 8 CAMARADAS 8 e a sd bas 9 L6 Whatis PO arar irradia 44 458 11 m 12 1 7 1 boundary objects 12 p oe ee c I DNS TDR RTS TE 13 2 Getting Started 17 2 1 Some terminology i e x ie i e e dr ne e RR EEE ES 17 E rrr 18 RA a A A A AA 18 2 3 1 Single zone structured Mesh 19 2 3 1 1 Mesh Fi
41. act lift set format fmt tp extract lift set var convflux rou convflux row extract lift set period PERIOD EXTRACT LIFT extract lift set loc INTERFACE extract lift set fluxcoeff COEFL extract drag extractor Some Family name extract drag extract lift set format fmt tp extract drag set var diffflux rou diffflux row T T extract drag set period PERIOD EXTRACT DRAG extract drag set loc INTERFACE extract drag set fluxcoeff COEFD 2 8 4 Flow analysis Let us give an example where the mesh coordinates and the Mach number are saved in a Tecplot file thus allowing further analysis of the computation extract mach extractor name extract mach extract mach var extract mach file extract mach format xyz mach mach tp born tp ONERA Ref ELSA MU 03037 PURA GM S elsA Version Edition 1 1 a Date June 4 2007 DSNA User s Starting Guide Page 33 79 3 MULTI ZONE COMPUTATIONS elsA accepts multi zone structured meshes Each zone corresponds to one and only one mesh object Each mesh is in turn attached to its corresponding block ml mesh ml file ml tp ml format fmt tp b1 block bl mesh ml m2 mesh m2 file m2 tp m2 format fmt tp b2 block b2 mesh m2 Note that a file is associated to a single zone this is a very simple way to store mesh data For massively parallel configuration
42. ady computation dual time step DTS 30 a PRR 31 31 hz ek442 254 0934922 92 9 52 9 2 3593 31 2 8 Information extraction 31 251 Restahles 5 5 ooo o m x m eee eke eh 32 ce aR a ieu ee Ces 32 AEREA dod NOR deg 32 ee a tv ooi Ore ae i ME S UE ot 32 3 Multi zone computations 33 3 1 Automatic generation of block mesh and init objects 33 3 2 Zone connecivity usce mos kom Ign su ane ses Das 34 3 2 1 match 1 to 1 connectivity definition 33 near match l to n connectivity definition 33 AA orari ox Rog o Rae nine S 36 3 24 nomatch linem 36 IURE 36 37 ER pm Mo RIE 37 AT SIUS s pee pe ea e eevee ee eee tee di a ew 38 4 2 Free stream dimensioning free stream velocity scaling 38 4 3 Free stream dimensioning free stream pressure scaling 39 4 4 Stagnation condition dimensioning 40 4 5 Critical state dimensioning 41 EEE da f 41 SR 65d eR EVE GNSS S amp S eS e SURE po e eR RA 42 43 5 1 Why default values L s5 es kom 43a 0 a 43 5 2 What is the default value associated with a given attribute 44 ONERA ala Ref ELSA MU 03037 E DE ww Version Edition 1 1 A Date June 4 2007 DSNA User s Starting Guide Page 5 79 46 BI Pub ea 3594 3 R A oe ee ee ELE de ul 46 6 2 Mesh sequencing xo eX RERO SAE SY ES
43. cal procedure is based on a finite volume conservative formulation on block structured meshes Both steady and unsteady simulations can be performed elsA users can interact with e sA in two ways e through a high level scripting interface built upon Python one of the best script ing language out there This guide aims to provide newcomers with the basics required to run their first simulation e through a Graphical User Interface GUI called PyGelsA not described in the present document To run a simulation several steps must be taken 1 first a full description of the problem is required this amounts to e discretise the computational space sections 2 3 and 2 4 e specify the boundary conditions both in space section and time section 2 4 3 specify the physical model section 2 5 specify the numerical algorithm section D 6 2 run the simulation section 2 7 3 extract useful information from the computation for example convergence resid uals lift or Mach number distribution section 2 8 These three steps are detailed in the present document A very simple concrete valid script illustrating the basic ingredients included in any elsA scripts is presented at the end of this introductory chapter 1 8 INeglecting viscosity Navier Stokes equations degenerate to Euler equations In addition to RANS LES and DES formulation are also available Ref ELSA MU 03037 m f ONERA c gt Z Version Edit
44. carefully at the printed diagnostics avoid spending expensive computer resources on an inadequate mesh 2 4 Block concept Class block is an abstraction a block object corresponds to a region of the physical space To be useful a mesh object must be attached to a block object m mesh m file mesh file b block b mesh m ONull surfaces occur for example when axes are present Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 Page 22 79 User s Starting Guide DSNA 2 4 1 Window concept Class window provides a way to select a sub part of a block block first syntax new window b family il i2 jl j2 kl k2 second syntax window b name w iwl il iw2 i2 jwl jl jw2 32 kwl kl kw2 k2 L 2 ss Z Z ur E OO Here il i2 jl 32 k1 k2 corresponds to the indexes of the underlying mesh points By convention mesh point numbering starts at 1 in each direction As a special case the region defined by a window can degenerate to a surface for example if il i2 1 Windows may also be used to define extractor objects see p 8 Remark With old versions of elsA it was necessary to explicitly instantiate a large number of window objects which were used in the definition of init extract and boundary objects With the current version most if not all window objects can be removed resulting in shorter scripts The fol
45. d 4 interfaces some nodes may be coincident leading to degenerate cells 3 4 5 Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA I A RE aaa Date June 4 2007 Icor e Starti aui Page 18 79 User s Starting Guide DSNA Solving the discretized numerical problem involves two different process spatial dis cretization and time integration Internally the e SA numerical kernel computes flux of conservative variables through each cell interface and source terms inside each cell volume How flux and source terms are computed is governed by the spatial dis cretization algorithm After spatial discretization a numerical time integration of the resulting Ordinary Differential Equation ODE system is performed either explicitly or using some kind of implicit operator e sA can perform unsteady computations thus giving time accurate solutions In this type of computation the global time step must be small enough to capture the unsteady time scales of interest When only the final steady solution is of interest it is usually more efficient to use a pseudo unsteady formulation the solution is advanced in pseudo time until convergence is achieved within a prescribed tolerance 2 2 Problem definition In the following sections to be as concrete as possible we will illustrate every concept using examples The very first object created by the user belongs to the cfdpb class This object can be seen as the root of a tree to which a
46. d an automatic way to build mesh objects without the burden to create new mesh files each time the problem size changes Example of automatic cartesian mesh generation avoid use of external mesh files 2 block configuration This script can be used to run sigle MPI benchmark with 2 computing nodes from elsA user import bench cfdpb name bench cartesian delta 1 Cell size Parallelepiped siz IM 25 JM 10 KM 5 NPOINT 2 IM JM KM MESH CREATION mesh name m0 set generator cartesian Set im IM set jm JM Set km KM rd 3 38335383 OOO OO mesh name ml1 set generator cartesian set im IM set jm JM Set km KM id 33333 PPPP RB We may have to compare elsA with other CFD codes or we have to check the efficiency of a a new implementation for example quality of vectorization ONERA Ref ELSA MU 03037 elsA PURA a 35 Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page Anis Offset of mesh 2 ml set cartesian orig x IM 1 cartesian delta BLOCK CREATION b0 block name pb0 bO set mesh m0 b0 set proc 0 pl block name b1 bl set mesh ml bl set proc 1 import time tl time clock bench compute t2 time clock print 7 het TEE ER Tid E EE EI print T CPU t2 tl1 print T CPU 6f t2
47. d associated values are the block numbers and the processor numbers cat script load balance py Splitted configuration 5 blocks Number of processors 4 nproc 1 dict block2proc Q z Ss NP WN RR 2 At run time launching e SA MPI executable is platform dependent in many situations the following will work mpirun np nb of Proc parallel script py Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 AEROSPACE LA Page 58 79 User s Starting Guide DSNA 9 TROUBLESHOOTING Since elsA is a complex system user errors are unavoidable Also unfortunately internal errors may arise inside e SA kernel This chapter presents the basics of error treatment provided by e sA it is hoped that a careful classification of error messages as well as a description of the most frequent ones will help users to understand by themselves what is going wrong thus saving a lot of precious time It is useful to classify errors in three broad categories environment errors 2 interface errors 3 kernel errors 9 1 Environment error Let us give examples of errors resulting from incorrect environment this should help you to recognize what s going on In case of trouble please look carefully the first few lines printed on the standard output after you enter the elsa command with v option elsa v elsA interface Message displaying se
48. e Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 Page 14 79 User s Starting Guide DSNA 2 Flow output restart files will be created in directory Nozzle o nozzle set cfd flow out dir Nozzle o Boundary definition import topo and bnd II Physical MODEL mod nozzle model name mod_nozzle mod_nozzle fluid pg mod nozzle phymod euler mod nozzle gamma 1 4 III NUMERICS num nozzle numerics name nozzle num Spatial Discretization Scheme num nozzle flux jameson num nozzle artviscosity dissca num nozzle avcoef k2 1 0 num nozzle avcoef k4 0 032 num nozzle avcoef sigma 1 0 Time Integration Scheme num nozzle ode rk4 num nozzle time algo steady num nozzle cfl 1 num nozzle inititer 1 num_nozzle niter 100 IV EXTRACTION DEFINITION RESIDUALS Convergence check Screen output L 2 and L 1 ONERA THE FRENCH AEROSPACE LAB DSNA extractResS extractResS title extractResS var elsA User s Starting Guide block 1 amp 27 residual cons Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page 15 79 extractor name extractResS File Tecplot output extractResF extractor name extractResF extractResF title block 1 amp 2 extractResF
49. e the globborder global reference frame 3 2 5 overlap new join Bnd0002 Block0000 overlap Fam 10 202 1 1 1 2 ONERA Ref ELSA MU 03037 o CEPR elsA Version Edition 1 1 ne rem Date June 4 2007 DSNA User s Starting Guide Page 37 79 4 UNITS DIMENSIONAL AND NON DIMENSIONAL DATA To solve the Navier Stokes or Euler equations it is often convenient although not mandatory to use dimensionless quantities In some cases using a well chosen nor malization can improve numerical accuracy specially inside geometric algorithms metrics computation neighbour search chimera Let us recall that it is equivalent to say either that the quantity x is non dimensionalised referred to a length L or that the unit of length is chosen such that the length of x is unity Contrary to many other scientific software e sA do not use a specific unit system This means that users do not have to adapt to a unit system not suited to their needs Of course this freedom has a price it is up to the user to enter all values using a coherent unit system Remark An additional Python module adim 1lib is available to help users in the choice of a convenient normalisation system See Additional Tools User s Manual http elsa onera fr ExternDocs user MU 06023 pdf fora complete description 4 0 6 Example viscous coefficients In viscous computations since fluid molecular viscosity is computed with Sutherland s law
50. ed use v for traceback See 1 5 for a possible value of PYTHONHOME 9 2 Interface errors Users interact with the computational CFD kernel through a software layer which we will call here the e sA interface The interface is written itself in Python one can view this layer as a wrapper providing users with a high level CFD interpreter The interface layer provides many convenient mechanisms to check user inputs as soon as possible and so to be able to give users reliable information and even in some cases suggestions to correct the error see also p 52 See User s Reference Manual for complete information The interface cannot identify all the possible errors that can arise during a computation This may happen because of incomplete coherence checks or because of truly internal errors such as failure of numerical algorithm in such cases it will be the kernel s job to implement the error treatment see 9 3 1 9 2 1 Syntax error As in any language users may enter invalid commands Since the e SA interpreter is built on top of Python most syntax errors are reported by the Python interpreter itself 2 elsA py gt gt gt mmm File console line 1 mmm SyntaxError invalid syntax in fact this is one of the many advantages brought by extending an existing interpreter instead of writing yet another one by ourselves Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 200
51. ed using the extraction of convflux_rou for the pressure forces in x direction or diffflux rou for the friction forces in x direction see the User Manual In the following we will discuss in some details five useful examples of unit normalization systems and give some advice to avoid common errors specially for viscous computations 4 1 SI units The user must enter every quantities using SI units meter length kilogram mass second time Kelvin temperature from which derived units can be built e velocity V m s density p kg m 5 e pressure P Pa kg m 1s e specific internal energy e kg m s 2 e viscosity coefficient u Poiseuille Kg m s or N sm This system is very simple However a common error is to introduce mesh coordinates in a non SI unit for instance millimeters or centimeters 4 2 Free stream dimensioning free stream velocity scaling In this system a reference length L the free stream density p free stream velocity U and free stream temperature Tz are unity This system is very popular specially in external flow computations Every other fluid quantity is then non dimensionalised ONERA Ref ELSA MU 03037 Re elsA Version Edition 1 1 Se Date June 4 2007 DSNA User s Starting Guide Page 39 79 using a reference quantity with the corresponding dimension Introducing Mach num ber Moo Ux dx where a is the free stream speed of sound and specific heat ra
52. examples e Assume that the user has not provided an explicit choice for the artificial vis cosity In that case e sA provides a default value currently artviscosity dissca num numerics name num num flux jameson flux type MUST be provided num artviscosity dissca t Note the this line is a comment e Here the user does not define the data format associated with the extract object e SA provides fmt tp as default value ext extractor name ext ext var xyz mach ext file mach tp ext format fmt_tp Note the this line is a comment Conversely note that some values must be entered by users For instance users must choose a flux type to associate with any numerics object If they do not elsA will return some kind of error message see also 5 2 and 9 2 3 elsA 2114 ERROR User Error info 2114 No Key flux We are convinced that default values are very convenient for most users and specially for newcomers e elsA scripts can be more compact the important feature of a given computation are thus not lost in a very large script file e When a new option is added to the software without a default value mechanism every already existing script would have to be modified simply to say No I do not want to use this option Clearly this is not acceptable e elsA default values are not hard coded inside compiled code
53. for many hours and you discover that you have forgotten to ask for restart files in your script 4 You may wish to change some computing parameters for instance the CFL num ber This is sometimes called Computational Steering presently e sA does not provide such a facility The following two subsections 7 3 1 and 7 3 2 describe two mechanisms to deal with the first three points 7 3 1 Restart file When elsA has entered the main pseudo time loop the user can ask that restart files corresponding to the current iteration should be written To do that one must know the Unix process number of the computing job probably through the Unix command ps Then the user must enter the following command kill SIGUSR2 process number Restart files will then be created the file name will be constructed from the block name and the time iteration for instance if b1k1 blk2 are the names of the two blocks in the problem and the signal is sent during iteration 130 two files named blkl iter00130 and blk2 iter00130 will be created Then the process re enters the time loop and the solution proceeds further on Let us give an example of the printed output when the user has enter the kill command during iteration 18 iteration no 17 dq 1 L2 4 3240937e 04 Linf 9 0833416e 03 3 16 16 0 dq 2 L2 3 8816478e 04 Linf 5 9381099e 03 3 16 16 0 dq 3 L2 2 3411757e 04 Linf 4 1046026e 03 3 15 16 0 tdg 4 L2 2 3
54. global time step num itime Simulation initial time num ftime Simulation final time 2 6 5 3 Unsteady computation dual time step DTS num set ode backwardeuler num set time algo dts num set cfl 4 0 num set restoreach cons 5 e 2 num set dual iteration 50 ONERA Ref ELSA MU 03037 PURA GM S elsA Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page 31 79 2 6 5 4 Centered scheme steady computation with multigrid acceleration num numerics spatial discretization scheme num flux jameson num set avcoef k2 0 5 num set avcoef k4 0 032 f temporal integration scheme num ode rk4 num implicit irs num multigrid num coarse num cfl 4 typical CFL number 2 6 6 Upwind scheme steady computation May be used in subsonic transonic as well as in supersonic hypersonic configuration num numerics spatial discretization scheme num flux roe Must be used with caution in viscous flow computation temporal integration scheme num ode packwardeuler num implicit lurelax num cfl 10 2 7 Run the simulation This is probably the easiest part problem compute The current version allows users to chain several lt cfdpb gt compute in the same run IS initl init name init1 initl file restart 1 cfd compute cfd reuse active cfd compu
55. graph 4 6 ONERA uum DSNA 6 4 Topics not discussed elsA User s Starting Guide Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page 49 79 Many important subjects are still not covered in this document Computations involving motions in relative or absolute reference frame Chimera computation See EVB Va Va M 2 lidation script CH D 01 chim 2d 01 py Transition lidation script RAE KO CH M rae ko chim lam py Data associated with boundary object in specific files for instance to prescribe a temperature field in isothermal wall boundary Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 Page 50 79 User s Starting Guide DSNA 7 ADDITIONAL INFORMATION 7 4 ICEM CED to elsA translator For complex multi block configurations writing manually e sA script files can be cumbersome and error prone Fortunately users can use ICEM2elsA a tool to au tomate the translation from ICEM CFD topological files to e sA 7 2 How to reduce start up time For very large configurations script files may be quite large In most cases this is not a problem However on some platforms specially vector computers NEC CRAY FUJITSU it has been observed that in certain situations the start up time can be un bearable more than ten minutes Here are some guidelines to avoid such annoyance 1 Use systematically the new boundary new join
56. hatis Python Python is a modern Object Oriented 00 interpreted scripting language it is freely available it has a clean easy to learn syntax The real power of Python lies in its ex tensibility through the mechanism of modules In fact elSA can be viewed as a stan dard Python module Additional useful features of Python will be introduced through examples in the following if not see chapter 9 see pid p in the following examples to save space this line may be omitted however never forget to insert it Please note that since e SA only use dynamically allocated memory contrary to most traditional FORTRAN codes which use statically allocated memory the same e sA executable can be used regard less of the problem size Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 AS Date June 4 2007 Page 12 79 User s Starting Guide DSNA 1 7 elsAsyntactic rules To define their computation e SA users must write Python scripts however only a very limited knowledge of the Python language is required Basically users interact with e sA by creating objects setting some attributes and invoking a small number of methods upon these objects To create objects in most cases we use constructors my cfd cfdpb name my cfd create a cfdpb object name is my cfd b0 block name b0 create a block object name is b0 ext extractor name ext 4 create an extractor object Once an object has
57. ine post processing thus avoiding the trouble of potentially extremely long lines preferred Fuselag 50 Integer family code associated to fuselage part bndl new boundary Fuselage bnd2 new boundary Fuselage ext extractor Fuselage name ext ext var psta deprecated winl window blk name winl win2 window blk name win2 bndl boundary winl bnd2 boundary win2 ext extract group name ext ext windows winl win2 potentially very long string 7 3 Control of job execution It is sometimes useful to be able to change the planned job execution during the run 1 You receive a message from the system administrator System will be shut down in 5 minutes In such cases you may wish to save the state of the computation so that you can start a new computation from this state thus sparing precious computing time 2 During a computation you may wish to see dynamically if everything goes as expected Of course you could have asked for periodic extractions by creating extractor objects in the simulation script in a static way However dynamic interaction is definitely much more flexible 2Most text editors cannot manage properly lines exceeding a given limit Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page 52 79 ONERA User s Starting Guide DSNA 3 Your computation has been running
58. ion 1 1 c ISA Date June 4 2007 Wo NOCT FRENCH AE A Page 8 79 User s Starting Guide DSNA 1 2 What s in this document Exhaustive rules and conventions governing how to write a valid Python script file to interact with e SA are specified in the e sA User s Reference Manual Since e sA scope is very large going from low subsonic to hypersonic flow regimes with sophisti cated physical and numerical modeling it is understandable that the User s Reference Manual can be quite difficult to use by newcomers The reader can get a good idea of the very large number of options by browsing through the e sA Validation Base EVB However to get started with e sA it is not necessary for newcomers to be aware of all the many technical details The primary purpose of this guide is thus to reduce the learning time of the elsA system In the following sections we give detailed instruc tions on how to create typical elsA script files or portions of files These instructions are given in the form of simple examples Hopefully users should be able to easily extend these simple examples to their own applications Chapter D covers the basics that most users need to learn in order to get started us ing elsA Chapter B covers multi zone treatment Normalization and units issues are discussed in Chapter 4 The mechanism of default values is explained in Chapter 5 Many additional information are covered in Chapter 6 and Chapter 7 these issues are felt
59. lass state roInf 1 rouInf 1 rovinf 0 rowInf O0 roEInf O0 S state name s s ro roInf s rou roInf s rov roInf s row roInf s roe roInf i state s e Initialize from a re start file which in most cases comes from a previous run ONERA A Ref ELSA MU 03037 E T elsA Version Edition 1 1 ne m Date June 4 2007 DSNA User s Starting Guide Page 25 79 i file my restart file For multi bock configurations explicitly defining init objects may become cumber some and error prone See section 3 1 for a faster way to specify the initialization process 2 5 Physical model Objects of class model define which system of equations will be solved by elsA 2 5 1 Fluid model The user should select one of three options e lt numerics gt phymod euler viscous effects are neglected e lt numerics gt phymod laminar laminar computation e lt numerics gt phymod nstur turbulent computation Sutherland s law is used to compute fluid viscosity 2 5 2 Turbulence modeling An impressive number of turbulent models are available the collection of which may appear daunting to newcomers one can give several explanations for this proliferation e first of all the universal best turbulence model simply does not exist and the research must go on e everybody has his own preferred model and wants to find it in e sA e In an industrial context the time and
60. le Format 19 2 3 2 Important special case 2D or axi symmetric configuration 20 2 3 3 What is d correct mesh orcos 20 2 4 Block concept x eee a 21 24 1 Window concept 22 ERES MN NT EAE E NIE 22 2 4 2 1 symmetry bndphys type sym 23 2 4 2 2 Wall icem irre nhi A 23 2 4 2 3 Subsonic inlet bndphys type injl 24 2 4 2 4 Supersonic outlet lt bndphys gt type outsup 24 2 4 2 5 Nonreflexion bndphys type nref 24 doth Set He He thy Ges Hat Ho He See ee NINE te 24 2 5 Physical model 4 4 4 54 oo did 4944944454 HER ESS 25 AA AA 25 2 5 2 Turbulence modeling o 29 ooo bee x 25 2 5 21 Wall Gistance 54 4 4 4 4444 44462454448 26 ee ee ee ee es eee ee lo 27 2 6 1 Space discretization ao oe ee AA nee 21 2 6 1 1 Convective inviscid fluxes 27 2 6 1 2 Viscousfluxes cc 27 2 0 2 Time integration es 2 2 oe amp Dee Ses DHSS He ES 29 Ref ELSA MU 03037 ONERA Version Edition 1 1 xp TR Date June 4 2007 Page 4 79 au DSNA 2 621 Local Global time step 40 sss s 29 2 6 2 2 Explicit Sage oia Die e une 29 2 6 2 3 Implicit stage 2 4 urhe rhe Goh RUE une 20 dee s A a Woe ta HR d 29 p xpo roe rs a 30 2 6 5 Some useful examples 30 2 6 5 1 Centered scheme steady computation 30 2 6 5 2 Centered scheme unsteady computation 30 2 6 5 3 Unste
61. lected control parameters verbose echo use import off platform nickname GNU Linux ELSAPROD intellA32em ELSAHOME tmp user eos010 gazaix v3301 ELSA EXE tmp user eos010 gazaix v3301 Dist bin intelIA32em elsA x PYTHONPATH tmp user eos010 gazaix v3301 Dist lib py LD_LIBRARY_PATH opt intel fce 9 0 lib opt intel cce 9 0 lib 9 1 1 Incorrect PYTHONPATH Traceback innermost last File lt string gt line 1 in ImportError No module named EpelsA_loader 9 1 2 Incorrect LD_LIBRARY PATH An example of message issued by Unix system with an incorrect LD_LIBRARY_PATH Depending on your platform and the version used messages may be somewhat different ONERA Ref ELSA MU 03037 elsA an SES Version Edition 1 1 DSNA SS Gui Date June 4 2007 User s Starting Guide Page 59 79 12700720 tools Tempo v2 2 10 Dist bin sgi elsA x rld Fatal Error Cannot map soname libeDescp so under any of tools gnome lib libeDescp so usr lib64 libeDescp so Check carefully your spelling did you define LD LIBARY PATH 9 1 3 Incorrect PYTHONHOME Example of message written by the Python interpreter Could not find platform independent libraries prefix Could not find platform dependent libraries exec prefix Consider setting PYTHONHOME to lt prefix gt lt exec_prefix gt import exceptions failed use v for traceback Warning Falling back to string based exceptions import site fail
62. ll the other objects will be linked nozzle cfdpb name nozzle Only one object of type cfdpb can exist at a given time Only a few attributes are meaningful for cfdpb objects e its name e the config attribute see also 2 3 2 with allowed values 3d default ie A ud my cfdpb cfdpb my_cfdpb my cfdpb set config axi In the following sections we will briefly show how to fully specify the CFD problem to be solved Remark There is a large freedom in the order in which Python instructions specifying the prob lem to solve can be entered For instance you can choose to define all the numerics before the modeling items doing it the other way will be equivalent 2 3 Mesh definition This section explains how the computational space is discretized Presently e sA accepts multi zone structured meshes with generalized geometrical relationships be tween individual meshes see Chapter 3 except when using the automatic block generation feature 2 ONERA Ref ELSA MU 03037 elsA Version Edition 1 1 Se Date June 4 2007 DSNA User s Starting Guide 3 1 Single zone structured mesh The class managing mesh data is mesh m m mesh name m set file mesh tp Note that the user is not required to specify mesh dimensions explicitly This is left as an option IMAX 45 Python variables JMAX 17 KMAX 17 m mesh name m m im IMAX m jm JMAX
63. lowing two sections show how space and time boundary conditions are attached to block objects 2 4 2 Block boundary conditions To run a simulation for every block each external interface section I must be as sociated with one and only one boundary condition Since e sA only uses structured meshes it is convenient to associate to every boundary object a rectangular window topological information It is important to separate boundaries in two groups e Internal boundaries or joins which describe information about how the zones are connected to one another see Chapter B e Physical boundary conditions here the physical boundary condition is fully described by a specific object of type bndphys P The most frequently used types are briefly described in the following paragraphs See ier d for another convenient way to define ext ractor objects More complex situations can be handled with the boundary type collect feature BOf course the same bndphys object can be used by many different boundary objects this factorization greatly simplifies script check and maintenance ONERA Ref ELSA MU 03037 p CO PL elsA Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page 23 79 family code 10 b wall bndphys wallslip name b wall bnd new boundary bnd b wall family code Ly 1 jl 327 In both cases join and physical boundary a window object is implicitly created
64. lts use defaults show origin and view Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 Page 46 79 User s Starting Guide DSNA 6 ADVANCED PROBLEM DEFINITION This chapter covers material not discussed in Chapter 2 6 1 Family It is often convenient to gather boundaries which share a common properties into family objects e in this example all the boundaries that are or type type walladia be longs to family F WALL where F WALL is a pre defined positive integer F WALL 14 bndl new boundary bnd1 bk0 b wall F WALL ly Lp Jl 12 KL K2 bndn new boundary bndn bkN b wall F WALL Ly 1 ji 32 KE K2 e For more complex configurations it can be useful to divide the wall family into subsets for example when computing a complete aircraft one family for the wing another one for the fuselage The power of the family concept appears when we have to define post processing extraction specially in parallel MPI contrary to individual boundaries which are not invariant through block splitting arising during the load balancing algorithm families are conserved so that defining extraction using family is much easier and less error prone than using directly boundary or associated window objects see also section 2 8 3 ext wing extractor F WING name ext wing ext fuselage extractor F FUSELAGE name ext fuselage wing
65. money needed to validate a turbulence model on a large number of realistic configurations is usually very large this implies that removing an old fashioned turbulence model is difficult since users would be afraid of losing part of their experience The beginner is advised to experiment by himself with several models as well as to ask some help from turbulence modeling experts 1 Algebraic models The primary advantage of algebraic models is their reduced cost compared with transport equation model they can give good results provid ing they are used for configurations to which they have been designed attached boundary layers and wakes Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Fo eR Date June 4 2007 Page 26 79 User s Starting Guide DSNA e Baldwin Lomax lt model gt turbmod baldwin it has been successfully used in wing design and missile flow simulation e Michel model turbmod michel used in turbo machinery computations mainly for historical reasons With algebraic models computation initialization is usually straightforward However these models are generally not mesh topology independent and so are difficult to apply in complex geometries corner flows 2 Transport Equation models e one equation model of Spalart Allmaras lt model gt turbmod spalart widely used in aircraft computations e 2 equation model k l model turbmod smith probably one of the mo
66. n parallel mode each computing node writes to standard output its own messages Unfortunately on some platforms one can obtain scrambled outputs quite difficult to interpret Future versions will avoid this annoying behaviour 9 6 2 Some of the most frequent errors Frequent user errors have already been discussed in section 9 2 2 Let us describe other common errors 9 6 2 1 Use of reserved keywords elsA scripts are really just Python scripts so they must respect Python naming rules Moreover A limited set of keywords are used by the e sA interpreter 7 it is forbidden to name user created objects with these keywords List of reserved e sA keywords cfdpb mesh block numerics model init extractor extract extract group boundary group family window globwindow globborder Python has also its own list of reserved keywords for example if else 9 6 2 2 Duplicated object name In order to distinguish between objects created by users it is strictly forbidden to use the same name for two objects even if they belong to different classes wl window wl window Error duplicated object name The duplicated name is wl You must choose non ambiguous object name Sorry cannot continue elsA 2111 FATAL User Error For example an identifier must not contain a dot character These names are injected in the current scope through the from elsA user import ONERA Ref ELSA MU 030
67. n use the following setting export PYTHONPATH SELSAHOME Dist lib py gt with other shells such as csh you have to modify the following examples for instance export PYTHONPATH SELSAHOME Dist lib py ksh must be replaced by setenv PYTHONPATH ELSAHOME Dist lib py csh Ref ELSA MU 03037 ONERA elsA ONERA Version Edition 1 1 2 TRU NEU RI Date June 4 2007 S Page 10 79 User s Starting Guide DSNA In some cases you may have to set additional environment variables e LD_LIBRARY_PATH or LD LIBRARY64 PATH this may be required if you use dynamic shared libraries Most of the time you can use the follow ing setting export LD LIBRARY PATH SELSAHOME Dist bin S ELSAPROD SLD LIBRARY PATH e PYTHONHOME this may be required if the platform where the e sA system was built is different from the platform where you actually run the software It is often possible to guess the correct PY THONHOME just enter the shell command ksh which python home user lambda bin python In this example you should enter export PYTHONHOME home user lambda Finally the e sA executable itself must be available as any other Unix command The most convenient way is probably to modify your PATH environment variable export PATH SPATH SELSAHOME Dist bin SELSAPROD Having set all these environment variables you should be able to launch e
68. pose and in particular Tu has generally nothing to do with the turbulence level of a wind tunnel to impose for transition criteria From the T definition one have k 3U2 T 2 and the second turbulent quantity is obtained from ju y through the u formulation of each particular turbulence model To simplify one can take the wall damping function appearing in u equal to unity Except for the Wilcox model without Zheng limiter the solution is normally insensitive to the values at infinity providing they are small enough One must not hesitate to check the u u x var viscrapp quantity issued from the computation 4 7 Summary Let us provide a Python script example which may make the normalization task less prone to user errors from math import Some flow characteristics MachInf 9 86 Gamma 1 40 Reynolds 1 E5 Alpha 0 if FREESTREAM NORM Pinf 1 Gamma MachInf MachInf RoInf 1 RouInf cos Alpha RovInf 0 RowInf sin Alpha RoeInf Pinf Gamma 1 0 5 Cv Pinf Gamma 1 suth_const 110 4 TinfDim suth_muref 1 Reynolds suth_tref 1 else if SI UNIT Cv 717 R 8 31 ONERA Ref ELSA MU 03037 o TT De elsA Version Edition 1 1 Se Date June 4 2007 DSNA User s Starting Guide 5 DEFAULT VALUE MECHANISM 5 1 Why default values In many cases elsA tries to simplify the problem definition by providing default val ues Let us give some
69. rror wrong type for value 1 types type int gt vs type float gt for gamma attribute of model instance modl 9 2 2 3 Invalid range elsA py gt gt gt modl gamma 5 elsA interface ERROR Value error wrong value 0 5 for attribute gamma of object model instance modl gt value s should be in l O sr al 9 2 3 Attribute value required A value is required but the user did not provide one and no default value exists e sA raises an error ONERA XM EUREN REEL THE FRENCH A LAB DSNA User s Starting Guide elsA 2114 ERROR User info 2114 No Key flux elsA Error Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page 61 79 Note that the previous message is provided at runtime by e sA kernel not the Python interface on a check call Useful information about default value can also be obtained through check elsA lsA elsA 0 gt gt gt numl numerics name numl gt gt gt numl check interface Warning using default value 2 9387360491e 39 for numl convergence level static default value context dependent one failed interface Warning using default value none for numi static default value context dependent one failed interface Warning using default value none for numi static default value in
70. s it is probably the safest way to obtain a fully scalable solution However for large configurations the management of a large number of files and the definition of many objects in the script file to specify mesh and restart files can become cumbersome Future releases will provide access to hierarchical CGNS data base file where a single file can store the data corresponding to every zone and much more In addition e SA users can choose to let e SA generate internally in an automatic and safe way block mesh init and extract for restart objects This is described in the next section 3 1 Automatic generation of block mesh and init objects To choose this mode we must use the lt cfdpb gt automatic block gen at tribute Mesh files init files if any and restart files follow the same naming con vention e they must belong to a single directory for example Mesh d Flow i d Flow o dfor mesh init and restart files respectively e File names are built with a prefix completed with digits my prefix000 my prefix001 Most attributes admit default value the exception is c d nb block Note however that if a global file system is not available which frequently happens for low cost cluster systems a copy of the CGNS file must be available on all the computing nodes which can be cumbersome Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 Page 34 79 User s Starting Guide DSN
71. s used by e sA kernel to integrate the CFD equations We may regret that situ ation but it is unavoidable if elsA is to stay at the forefront of research Fortunately a large number of default values see Chapter 5 have been set during e sA installation this means that you the beginner can safely ignore many of the technical subtleties of CFD In the following we will try to present a simplified 5 process of numerical parameter selection mostly through several typical examples 2 6 1 Space discretization 2 6 1 1 Convective inviscid fluxes Both centered schemes with some kind of artificial dissipation and upwind schemes are available e Jameson s centered scheme is second order in space it must be combined with artificial dissipation Main options are artviscosity av type avcoef k2 avcoef k4 avcoef sigma central type e Several upwind schemes are available notably Roe Coquel Liou and van Leer fluxes To reach second order accuracy they are combined with MUSCL extrapo lation where the s ope computation must include a limiter to avoid non physical oscillations and improve convergence The situation is more complex in turbulent computation with a transport equation tur bulent model in such cases one has the option to use different spatial discretization for the mean flow system and for the system of turbulent equation Related attributes are t harten turb order 2 6 1 2 Viscous fluxes Three options are available e
72. sA Actu ally two e sA interpreters are available e elsA x the basic Unix executable e elsa this is a convenient wrapper of elsA x providing addtional user oriented features Depending on your personal taste you can choose to run e sA interactively or to run script files e To enter interactive mode just type elsa Or elsA x Sa symbolic link e1sA to elSA x is also provided ONERA Ref ELSA MU 03037 ME DR NU a el sA Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page If everything is OK elSA banner is first printed on screen followed by the interpreter prompt With elsa 8 11 79 Welcome to the elsA Python interface type D or close to exit elsA gt gt gt With elsA x You should get a slightly different prompt for example Python 2 4 4 5 Feb 12 2007 11 31 02 GCC 3 4 4 20050721 Red Hat 3 4 4 2 on linux2 Type help copyright credits or license for more information gt gt gt In this case before invoking elsA features you must import Python module elsA user by entering the line from elsA user import e In non interactive mode you must first create a script file when this is done just type elsa my script py Or elsA x my script py In this case the script must contain the line from elsA user import before any invocation of e SA methods You are now able to begin learning e sA Enjoy 1 6 W
73. sh must be direct oriented A mesh is defined by its nodes x i j k yli j k z i j k The i j k trihedral is assumed direct by definition The x y z trihedral must be direct with respect to 7 j k For example let us consider a 3D mesh and x z corresponding to 7 and j respectively in this case the y direction must be oriented from k kmaz to k 1 If defined they must be defined with type inactive ONERA Ref ELSA MU 03037 elsA PURA a 35 Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page 21 79 e Cell volumes must be strictly positive e Cell face surfaces must be positive or null 9 A convenient way to analyse mesh quality is provided by two methods mesh display and block metrics from elsA user import c cfdpb name c c config 2d m mesh name m m file ROOT_DB nacaProfile naca_eu mai m format fmt tp m display b block name b b mesh m b metrics Let us give an example of the results obtained using the block metrics method GeoMetrics statistics Grid 257 X 33 X 2 Minimum Volume 1 5348375e 06 cell indices i 128 j 1 k 1 Maximum Volume 1 8564431e 00 cell indices i 256 3 32 k 1 Minimum Surface type K 1 5348375e 06 interface indices i 128 j 1 k 1 Maximum Surface type K 1 8564431e 00 interface indices i 1 3 32 k 1 Please look
74. significant validate check script coherency see warn below implies noexecution check noraise nowarn noshow nostats disables allow obsolete keeps a memory of all errors not final state only strict warnings are treated as errors warn re enable warnings useful after validate allow obsolete accept automatic replacement of obsolete features So that validate warn will check a script not performing the computation with all warnings enabled while validate strict will also perform only a check but treating warnings as errors Using strict specified without validate will abort the computation only if any error or warning was found during the global check Remark The allow obsolete option should not be used after validate be cause it defeats the purpose of catching inadequate specifications also it is only meant to be an aid in performing computations with old scripts but may not perform all necessary conver sions in all cases Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 Page 56 79 User s Starting Guide DSNA 8 PARALLEL MODE elsA implements coarse grained block based parallelism based on MPI It is the user s responsibility to allocate blocks on each processor Depending on the number of processor and the individual block sizes achieving good load balancing may require that some blocks have to be split in several sub blocks
75. st robust 2 equation models in e SA with k w It gives good results for external flows shock locations but suffers of in consistencies for wakes jets and mixing layers e 2 equation k w model several variants are available model turbmod komega wilcox model turbmod komega kok The k w models are often robust but because of physical inconsistencies they suffer from various weaknesses This explains the number of versions available in e SA The Kok version is probably the most widely used e 2 equation model k e Jones Launder model turbmod kepsjl The k e model implemented in e sA corresponds to the Jones Launder low Reynolds version This model has been chosen mainly because it does not use the wall distance in the wall damping functions 2 5 2 1 Wall distance Many turbulence models have to know the distance between each cell and the nearest wall Several options are available e walldistcompute gridline this is the fastest one e walldistcompute gridline ortho e walldistcompute mininterf e walldistcompute mininterf ortho ONERA Ref ELSA MU 03037 p CO PL elsA Version Edition 1 1 ne em Date June 4 2007 DSNA User s Starting Guide Page 27 79 2 6 Numerical algorithm Objects of class numerics define how the system of equations will be solved by elsA There is an incredible number of options available to control the numerical al gorithm
76. syntax preferred syntax bnd new boundary bnd blk b phys family il i2 jl j2 kl instead of the equivalent syntax with involves the creation of an auxiliary window object Slow syntax win window b name win win set iwl il win set iw2 i2 win set jwl 31 win set jw2 32 win set kwl k1 d LA win set kw2 k2 bnd boundary blk win wallslip name bnd 2 As soon as your script is debugged you can switch off most of the checks per formed by the elsA interpreter simply by adding the fast option on the command line elsa f my script py fast This can reduce markedly the start up time typically by a factor of 2 Caution this option is incompatible with the short form you have to use the set accessor ONERA Ref ELSA MU 03037 elsA an SES Version Edition 1 1 3 Date June 4 2007 DSNA User s Starting Guide Page 51 79 3 You can put all the invariant part of your script and specially boundary condi tion definition in a separate Python script file say my bnd py Python will create a file my bnd pyc on the first interpretation the pyc files contain compiled code and are interpreted much faster in subsequent runs Python will automatically re compile the original py file if it is modified cfd cfdpb name cfd import my bnd Please note no extension 4 Use the family concept to def
77. t value associated with any attribute is to issue the following Python commands either from the Python interpreter itself bash 2 03 python gt gt gt import EpKernelDefVal gt gt gt print EpKernelDefVal dict def val format fmt tp gt gt gt or from the elsA interpreter elsA py gt gt gt import EpKernelDefVal elsA py gt gt gt print EpKernelDefVal dict def val format fmt tp elsA py gt gt gt So you are now able to answer the question What is the default value associated with a given attribute Another question is Do elsA provide a default value for a given attribute As seen before section 5 1 you can obtain an answer a posteriori simply by removing attribute definition from script and running the simulation A cleaner way is to run the same Python or e SA command The following section 5 2 may be safely skipped by newcomers 2usually found in directory SELSAHOME Dist lib py Sor grep format for older versions ONERA Ref ELSA MU 03037 elsA an SES Version Edition 1 1 Date June 4 2007 DSNA User s Starting Guide Page 45 79 elsA py gt gt gt import EpKernelDefVal elsA py gt gt gt print EpKernelDefVal dict def val flux Traceback innermost last File console line 1 in KeyError flux elsA py gt gt gt For additional information consult Users Reference Manual specially get defaults show defau
78. te 2 8 Information extraction elsA users can be interested in lots of data during and after a simulation We will not even try to explain all the extraction modes available Here our advice is experiment yourself and read the User s Reference Manual Let us only give some examples 6Note however that in the current version mesh sequencing runs cannot be chained in the same script Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 Page 32 79 User s Starting Guide DSNA 2 8 1 Restart files Restart files may be obtained with explicit creation of extractor objects e restart extractor name e restart e restart set var conservative e restart set file restart e restart set loc cell See section B 1 for a faster and safer way to specify restart file management 2 8 2 Convergence information Convergence information can be sent both to standard output and to a file res stdout extractor name res stdout xtraction on stdout res stdout var residual ro density residual L1 and L2 res file extractor name res file xtraction in a file res file var residual conservative extract residual for each conservat res file file residual tp res file norm NORM L2 2 8 3 Lift and Drag information APROF KL Wl APROF KL W1l py extract lift extractor Some Family name extract drag extr
79. te Wksp Flow 1s1 flow0000 Pause t Extragt 2 Continue 3 KILL 421 4 3 ACkCkCk ck ckckck k ck ck ck ckck ck kck ck kck ck ck ck ck ck ck ck ck ck ck ck ok ckck ck ck ck ck kck ck ck ck ck ck ck ck ck ck ck ck ck ck ck ck ck ck k kc ck k k k kk kk iteration no 9 3 Execution continues 4 The job is killed immediately 7 4 Script files and new releases For each elsA release the Python elsA interface defines all the documented features coherently with the User s Reference Manual URM ELSA MU 98057 attached to this release The URM details the various debugging procedures including dealing with Python e sA scripts which are no more coherent with the current release or conversely using current scripts with older releases if need be A global means of interface definitions comparison between two elsA versions is to invoke for each version the man function as man elsA and to re direct the output to a file Ex using old environment elsa pycmds man elsA close gt old out using new environment ONERA Ref ELSA MU 03037 elsA PURA a 35 Version Edition 1 1 DSNA SS Gui Date June 4 2007 User s Starting Guide Page 55 79 elsa pycmds man elsA close new out diff old out new out more For a given script the following command line options definitions extracted from the URM may be useful please mind that option order is
80. terface Warning using default value none for numi static default value context dependent one failed interface Warning using default value rk4 for numi static default value context dependent one failed interface Warning using default value steady for numl static default value context dependent one failed interface Warning using default value none for numi static default value context dependent one failed interface ERROR Coherency error missing value for numl flux and no default value found or allowed for lt numerics gt flux attribute lt numerics gt flux attribute value is always required 9 3 Kernel errors The separation between interface and kernel errors is not absolute Being pragmatic we may define kernel errors as every error which is not an interface error In fact it is not an easy task to design a clean error system because the e sA kernel is used in two different contexts e it is used through the e SA interface by e sA end users to perform CFD compu tations it provides CFD scientists with a powerful Object Oriented CFD toolkit they can build their specific applications by combining kernel classes deriving new classes from existing ones and adding their own classes In this context error messages are sent to programmers not to end users We acknowledge that such kernel error messages intended for programmers can be quite intimidating for end users Let us give an example 3an O
81. the CGNS terminology elsA solves the compressible fluid dynamics equations using space and time dis cretization The three dimensional 3D computational space is discretized with a single or a multi zone structured mesh 2 e mesh elsA uses a cell center formulation in direct oriented structured meshes defined node by node x i j k yli j k z i j k see also paragraph 2 3 3 Meshes must be provided by the users e grid The conservative relationships are applied to grid cells Several grids can be associated to a single mesh object This happens for example in multi grid algorithm and also in the context of mesh sequencing chapter 6 2 Users do not have direct access to grid objects instead they have access to mesh and block objects e cell The elementary volume on which the conservative relationships are applied In e sA a cell has 8 nodes and is limited by 6 interfaces through which the numerical fluxes are computed e block Itis the basic object used by elsA to solve the aerodynamic problem It corresponds to a region of the discretized physical space defined by a mesh to which are associated boundary and initial conditions In most cases several blocks are needed Communication between the blocks is done through join boundaries defined in e1sA user module 2unknowns are associated with the center of cells an exception is to set mesh generator cartesian in 2D 4 nodes an
82. tio y a2 YPoo Poo we obtain 1 A a M2 1 co C DM P 01 T M where R is the gas constant R P pT and Cv is the specific heat capacity e CvT In viscous computation we also introduce the Reynolds number coU ss L Re cs ES e Hoo o 1 Pis E Res Sutherland s law T14 C T Usa 4 4 dios COE WEN pm With REINF Re and TzNFDIM T K one have modl model name modl modi suth const 110 4 TINFDIM modl suth_muref 1 REINF modl suth_tref 1 0 4 3 Free stream dimensioning free stream pressure scaling This system is a slight variant of the previous one Here the free stream pressure instead of the free stream velocity is unity Boo yY Dec PS often used in hypersonics computation Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page 40 79 ONERA User s Starting Guide DSNA 1 Coo 7 1 R 1 1 Cv eed Pool _ M7 cm Re Rex The Sutherland law is expressed as in the previous case 4 4 Stagnation condition dimensioning In this system the stagnation density p the stagnation temperature 7 and the sound velocity a corresponding to 7 are taken equal to unity 1 Uso Modo 1 1 Y Pi os 1 Y NPi 7 os p 1 1 He es y e T q yy 1 1 y 1 es Culo 1 2 1 Esa Caly Sepe els Reso B Hoo _ Mo fp T oe gt Res Pi o La oo yp b Pi os K d foo Us 2p 4 5 4 6
83. to be important but not as crucial as the basic items covered in Chapter 2 Specific information concerning elsA on parallel platforms are given in chapter 8 Chapters 9 and IO briefly cover troubleshooting and frequently asked questions respectively 1 3 Who should read this document Every one wanting to use e SA seriously must read this document However please note that e this document is not an introduction to Computational Fluid Dynamics CFD see the e sA Theoretical Handbook or any standard CFD textbook for such an introduction e we will not describe all functions of elsA in this guide because some of them are only required for special applications nor we will explain every parameter in detail please refer to e SA User s Reference Manual for such kind of infor mation 1 4 More information Other information about e sA can be found in the following places e elsA User s Reference Manual provides a complete description of all e sA fea tures http elsa onera fr elsA validation valid html ONERA Ref ELSA MU 03037 Ro ES elsA Version Edition 1 1 a A Date June 4 2007 DSNA User s Starting Guide Page 9 79 e elsA Graphical User Interface is described in another document e elsA installation is covered in the e SA Development Process Tutorial ELS A MDEV 03036 e many additional information including how to contact e sA support team may be found at elsA WEB site Also we strongly advise
84. ts are scanned and the corresponding files are written without the user interruption these files would have been written at the job s end during the job extract command This option is specially interesting to look at the convergence residuals When all the extraction have been performed the user is prompted again with the same four possible choices Stop Extract Continue Kill Letus give an example in which three extractor objects have been registered Ck CkCk ck kCk ck kckck AAA AAA AAA KA ck ck ck kc kck ck kck ck kckck ck ck ck ck kCck ck ck ck ck ck ck ck k ck ck ck k ck ck ck ck ck ck k ck k k k kk kk iteration no 7 dq 1 L2 2 1194850e 03 Linf 2 5305340e 02 16 16 16 0 dq 2 L2 1 9950121e 03 Linf 2 0783402e 02 17 16 16 0 dq 3 L2 1 Pause 1 Extra ct 2 Continue 3 dl cine 4 2 dq 1 L2 1 7171855e 03 Linf 2 3111593e 02 7 16 16 0 dq 2 L2 1 4053604e 03 Linf 1 4030115e 02 15 16 16 0 Ref ELSA MU 03037 ONERA elsA Version Edition 1 1 AS Date June 4 2007 Page 54179 User s Starting Guide DSNA tdg 3 L2 8 9873227e 04 Linf 7 0547847e 03 5 15 16 0 dq 4 L2 8 9873191e 04 Linf 7 0547845e 03 5 16 15 Q tdg 5 L2 4 5892234e 03 Linf 6 6441164e 02 7 16 16 0 elsA Post Processing for debam_1s1 Write debam 1s1 elsA Post Processing for debav_1s1 Write debav 1s1 elsA Post Processing for Wksp Flow 1s1 flow0000 Wri
85. using the coarse solution to initialize solution on the finer grid through any interpolation algorithm and going towards finest mesh The idea is very similar to stan dard multigrid algorithm long wave perturbation are dissipated much faster on coarse grids Note that except for the coarsest level if the coarsening factor is equal to 2 it is possible to use multigrid acceleration association of mesh sequencing and multigrid is sometimes called Full Multi Grid FMG To ease running FMG computations e SA provides users with several attributes lt cfdpb gt coarsen_mesh lt cfdpb gt coarsen_init lt cfdpb gt fromcoarse The following example shows how to chain three runs going from coarse to fine grid 3 1st computation 1 point over four nozzle set coarsen mesh 4 nozzle set coarsen_init 4 Flow 0 contains some initialization for 1s1 mesh nozzle set cfd flow ini dir Wksp Flow O0 nozzle set cfd flow out dir Wksp Flow 1s4 if initialization files are used instead of initialization from constant state a second line has to been inserted problem coarsen init 2 3Consider using elsAsession in EpelsA py to automate this process Ref ELSA MU 03037 ONERA Version Edition 1 1 elsA Date June 4 2007 Page 48179 User s Starting Guide DSNA num set multigrid none 2nd computation 1 point over two nozzle set coarsen mesh 2 nozzle set fromcoarse 2
86. viscous fluxes J3p e viscous fluxes 5p e viscous fluxes b5p cor viscous fluxes 5p which is the most CPU efficient may lead to unphys ical results see figure 2 1 viscous fluxes 3p is the less CPU efficient viscous fluxes 5p cor is often a good compromise Phopefully not oversimplified Ref ELSA MU 03037 Version Edition 1 1 Date June 4 2007 Page elsA 28 79 User s Starting Guide THI Passot Pouquet 32 x 32 x 32 Calcul LES Reyt 74 6 900 800 700 600 500 400 o 300 o d 200 m hei H v3201d grad 3p v3003p grad 3p gt v3201d grad 5p 100 Q v3201d grad 5p cor QPF elsA LES Num 2 CERFACS k Figure 2 1 Turbulent energy THI computation ONERA HE FRENCH AER E LAB DSNA ONERA A Ref ELSA MU 03037 E T elsA Version Edition 1 1 ne m Date June 4 2007 DSNA User s Starting Guide Page 29 79 2 6 2 Time integration The best time integration algorithms are different for steady and unsteady computa tions 2 6 2 1 Local Global time step e Local time stepping where the time step is not constant across the computa tional domain can be used in steady computations to speed overall convergence in that case the user must choose the CFL number high CFL values generally increase convergence rate but may lead to numerical instability e Conversely in unsteady computations where time accuracy is required
Download Pdf Manuals
Related Search
Related Contents
ULTRAK 485 60 - Memory Version ULTRAK 493 300 IM Spanish Grabadora K-AGRN10G01 (03-12-2014).cdr Philips PB9001 7 Steps to Specifying a DL205 System Documents BCM2000 Bock Compressor Management - GEA Comdial DX-80 User Guide Refs. 5559, 555901 Holmes Portable Electric Heater User's Manual TDTV-100 - Clickplus Copyright © All rights reserved.
Failed to retrieve file