User Tools

Site Tools


docs:utils:continuefields

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
docs:utils:continuefields [2009/02/26 08:52]
gibson
docs:utils:continuefields [2010/03/04 17:35] (current)
gibson
Line 1: Line 1:
 ====== continuefields ====== ====== continuefields ======
  
-Quadratic extrapolation of FlowField u(mu) as function of parameter mu+Quadratic extrapolation of FlowField u(mu) as function of parameter mu, where mu is one of Reynolds number, //dP/dx, Lx, Lz, Lx/Lz, sqrt(Lx^2 + Lz^2),// or the length between the starting //(Lx,Lz)// and a target value of //​(Lx,​Lz)//​.
  
 ====== options ====== ====== options ======
  
-  -dv       ​--divergence ​                                          ​project field onto div-free subspace +<code
-  -e        --epsilon ​          <real     ​default == 1e-13       ​don'​t interpolate Lx,Lz,a,b if |diffs| < eps +  ​continuesoln :                                                                                                      ​ 
-  ​mu1              (trailing arg 8)                                parameter for u1 +        (ALPHA VERSION!continue invariant solution of plane Couette flow in Reynolds number ​                      
-  <​flowfield> ​     ​(trailing arg 7                               input field u1 +
-  mu2              (trailing arg 6)                                parameter for u2 +
-  <​flowfield> ​     (trailing arg 5)                                input field u2 +
-  mu3              (trailing arg 4)                                parameter for u3 +
-  <​flowfield> ​     (trailing arg 3)                                input field u3 +
-  mu               ​(trailing arg 2)                                parameter for output field +
-  <​flowfield> ​     (trailing arg 1)                                output field +
-====== usage ======+
  
 +options : 
 +  -r        --restart ​                                             start from three previously computed solutions
 +  -eqb      --equilibrium ​                                         search for equilibrium or relative equilibrium (trav wave)                                                                                                                   
 +  -orb      --periodicorbit ​                                       search for periodic orbit or relative periodic orbit 
 +  -poinc ​   --poincare ​                                            ​(relative) periodic orbit search constrained to I-D=0 Poincare section ​                                                                                                      
 +  -xrel     ​--xrelative ​                                           search over x phase shift for relative orbit or eqb  ​
 +  -zrel     ​--zrelative ​                                           search over z phase shift for relative orbit or eqb  ​
 +  -contRe ​  ​--continueRe ​                                          ​continue solution in Reynolds number ​                
 +  -contdPdx ​ --continuedPdx ​                                        ​continue solution in imposed pressure gradient ​     ​
 +  -contLx ​  ​--continueLx ​                                          ​continue solution in streamwise width Lx             
 +  -contLz ​  ​--continueLz ​                                          ​continue solution in spanwise width Lz               
 +  -contAsp ​ --continueAspect ​                                      ​continue solution in aspect ratio Lx/Lz              ​
 +  -contDiag ​ --continueDiagonal ​                                    ​continue solution along diagonal with const aspect ratio Lx/Lz                                                                                                              ​
 +  -contLtarg ​ --continueLtarget ​                                     continue solution towards a target Lx,Lz           
 +  -up       ​--upwards ​                                             for non-restart searches, search in dir of increasing free parameter ​                                                                                                        
 +  -Lxtarg ​  ​--LxTarget ​         <​real> ​     default == 6.28319 ​    aim for this value of Lx                             
 +  -Lztarg ​  ​--LzTarget ​         <​real> ​     default == 3.14159 ​    aim for this value of Lz                             
 +  -T        --maptime ​          <​real> ​     default == 20          initial guess for orbit period or time of eqb/reqb map f^T(u) ​                                                                                                               ​
 +  -R        --Reynolds ​         <​real> ​     default == 400         ​Reynolds number ​                                     ​
 +  -dPdx     ​--dPdx ​             <​real> ​     default == 0           ​imposed mean pressure gradient ​                      
 +  -s0       ​--s0 ​               <​real> ​     default == 0           start value for arclength (arbitrary) ​               ​
 +  -ds       ​--ds ​               <​real> ​     default == 0.0001 ​     initial arclength increment for quadratic extrapolation ​                                                                                                                     ​
 +  -adt      --adjustDt ​                                            ​adjust dt between continuation steps to keep CFL in bounds ​                                                                                                                  
 +  -dsmin ​   --dsmin ​            <​real> ​     default == 1e-08       ​minimum arclength increment (in normalized D,Re space) ​                                                                                                                      
 +  -dsmax ​   --dsmax ​            <​real> ​     default == 0.05        maximum arclength increment (in normalized D,Re space) ​                                                                                                                      
 +  -errmin ​  ​--errmin ​           <​real> ​     default == 1e-05       ​minimum error for extrapolated guesses ​              
 +  -errmax ​  ​--errmax ​           <​real> ​     default == 0.0001 ​     maximum error for extrapolated guesses  ​
 +  -sigma ​   --sigma ​            <​string> ​                          file containing sigma of sigma f^T(u) - u = 0 (default == identity) ​                                                                                                         ​
 +  -symms ​   --symmetries ​       <​string> ​                          file containing generators of isotropy group for symmetry-constrained search ​                                                                                                
 +  ...
 +  -o        --outdir ​           <​string> ​   default == ./          output directory
 +  -log      --logfile ​          <​string> ​   default == findsoln.logoutput log (filename or "​stdout"​)
 +  -dg       ​--digits ​           <​int> ​      ​default == 8           ​number of digits for ReD.asc
 +  <​flowfield> ​     (trailing arg 1)                                initial guess for Newton search
 +</​code>​
 +====== Usage ======
 +===== start-up mode =====
  
-Suppose you have an equilibrium velocity field at three different Reynolds numbers  +There are two basic modes for starting ​continuation:​ from scratch (a single previous solution)or from a previous continuation (using three successive steps)Starting from scratch looks like this
-and you want to extrapolate to new Reynolds number. Let the fields be EQ1Re350.ff, +
-EQ1Re360.ff, EQ1Re370.ff at Re=350, 360, and 370. Then you can produce +
-a quadratic extrapolation to Re=380 by running+
  
-  ​continuefields ​-dv  ​350 EQ1Re350 ​ 360 EQ1Re360 ​ 370 EQ1Re370 ​ 380 EQ1Re380+  ​continuesoln ​-eqb -contRe -R 350 uRe350.h5 
 +   
 +The trailing argument here is a FlowField which is assumed to be a solution of the specified type at the specified parameters (or a good guess for a solution). The continuation will begin by making very small +/- perturbations in the continuation parameter (here Reynolds number) and finding new solutions at that value using the input field as an initial guess. By default the continuation goes down in the parameter. If you want to go up, use the ''​-up''​ option. ​
  
-The last two arguments are the desired parameter value and the output filename. Previous  +Starting from a previous continuation looks like this
-arguments are inputs in parameter, flowfield pairs. ​+
  
-The -dv option assures that the output field is divergence-freeThis is especially  +  continuesoln ​-eqb -contRe --restart ​  ../​contRe0/​search-14 ​../​contRe0/​search-15 ​../​contRe0/​search-16
-useful when the extrapolation changes the cellsize (Lx,Lz)For example, suppose  +
-you have three equilibrium fields with slightly different cell sizes, say EQ1Lz21.ff, +
-EQ1Lz22.ff, and EQ1Lz23.ff at Lz=2.1, 2.2, and 2.3. To produce a quadratic extrapolation +
-to Lz=2.4, you would run+
  
-  continuefields -dv  2.1 EQ1Lz21 ​ 2.2 EQ1Lz22 ​ 2.3 EQ1Lz23 ​ 2.4 EQ1Lz24+The trailing three arguments are directories containing results from a previous run of ''​continuesoln''​The direction of continuation is determined by the order of the three previous solutions 
 +===== continuation parameter =====
  
-The continuefields utility is especially useful for continuation around bifurcations.  +''​continuesoln''​ will continue solutions ​in one of seven parameters: 
-For example, you're tracking an equilibrium solution ​in a D vs Re plot (dissipation vs  +    
-Reynolds number), and you notice that as Re approaches a fixed value (say Re=220), D  +   ​-contRe ​   --continueRe ​                  ​continue solution in Reynolds number ​                ​ 
-starts to shoot up very rapidly. You suspect that the continuation is approaching a  +   -contdPdx ​ --continuedPdx ​                ​continue solution in imposed pressure gradient ​     ​ 
-saddle-node bifurcation and that your solution ​is on the lower branch, and you want  +   -contLx ​   --continueLx ​                  ​continue ​solution ​in streamwise width Lx              
-to "turn the corner"​ and get the upper branch ​solution. Suppose you have EQ1Re222+   -contLz ​   --continueLz ​                  ​continue ​solution ​in spanwise width Lz                
-EQ1Re221and EQ1Re220. Then run +   ​-contAsp ​  ​--continueAspect ​              ​continue solution in aspect ratio Lx/Lz               
 +   ​-contDiag ​ --continueDiagonal ​            ​continue solution along diagonal in Lx,Lz with const aspect ratio Lx/Lz                                                                                                              ​ 
 +   -contLtarg --continueLtarget ​             continue solution towards a specified Lx,Lz pair 
  
-  fieldprops ​-e EQ1Re222 +The target //Lx,Lz// for ''​-contLtarg''​ is specified by these options
-  fieldprops -e EQ1Re221 +
-  fieldprops -e EQ1Re220+
  
-etcto get the value of D for each field. Let the values be 2.56, 2.60, and 2.65  +   ​-Lxtarg ​  ​--LxTarget ​         <​real> ​     default == 6.28319     aim for this value of Lx                              
-respectivelyThen //to be continued...//​+   -Lztarg ​  ​--LzTarget ​         <​real> ​     default == 3.14159     aim for this value of Lz 
  
 +Two other options related to the continuation type are 
  
 +   ​-up ​      ​--upwards ​                      ​continue upwards in parameter (default is downwards)
 +   ​-adt ​     --adjustDt ​                     adjust dt between continuation steps to keep CFL in bounds ​
 +  ​
 +The ''​-up''​ option is self-explanatory. The ''​-adt''​ option is most important when the continuation changes //Lx//, since this will change the //x// gridspacing and consequently the CFL number. It should be safe to use ''​-adt''​ in other cases, too.
docs/utils/continuefields.1235667137.txt.gz · Last modified: 2009/02/26 08:52 by gibson