gtspring2009:howto:findsoln

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

— |
gtspring2009:howto:findsoln [2010/02/02 07:55] (current) |
||
---|---|---|---|

Line 1: | Line 1: | ||

+ | ====== How to find a new solution of plane Couette flow ====== | ||

+ | For now this discussion is limited to finding equilibria. See also | ||

+ | |||

+ | * [[docs:math:symmetry]] | ||

+ | * [[docs:utils:findorbit]] | ||

+ | * [[http://www.cns.gatech.edu/~gibson/publications/HalcrowARX08b.pdf]] | ||

+ | |||

+ | ===== Generate an initial guess ===== | ||

+ | |||

+ | We expect to find equilibria in symmetry groups that contain sign changes in both x and z. See | ||

+ | [[http://www.cns.gatech.edu/~gibson/publications/HalcrowARX08b.pdf|our PCF equilibrium paper]] | ||

+ | for details. Chose any symmetry group containing σxz, for example, | ||

+ | |||

+ | <latex> | ||

+ | \{e, \sigma_{xz}\} | ||

+ | </latex> | ||

+ | |||

+ | |||

+ | Generate an initial condition in this symmetry group. One way to get a decent initial condition is | ||

+ | to randomly perturb a known solution and then project onto the right symmetry group. For example, | ||

+ | download the [[http://www.channelflow.org/dokuwiki/lib/exe/fetch.php/database:w03:eq2.ff|Nagata upper branch]] | ||

+ | and then | ||

+ | |||

+ | perturbfield --magnitude 0.01 eq2 eq2perturb | ||

+ | symmetryop -sx -sy -sz -az 0.5 eq2perturb s3eq2pertub | ||

+ | addfields 0.5 eq2perturb 0.5 s3eq2perturb eq2perturbsymm | ||

+ | |||

+ | This sequence of commands constructs | ||

+ | |||

+ | eq2perturb = eq2 + 0.01 (random perturbations) | ||

+ | s3eq2perturb = s3(eq2perturb) | ||

+ | eq2perturbsymm = 1/2 (eq2perturb + s3eq2perturbsymm) | ||

+ | |||

+ | The final field %%eq2perturbsymm%% will be %%eq2%% plus some s3-symmetric perturbations. | ||

+ | ===== Integrate ===== | ||

+ | |||

+ | Next generate a sequence of s3-symmetric data by integrating the initial condition | ||

+ | |||

+ | couette -symms sxz.asc -T0 0 -T1 1000 eq2perturbsymm | ||

+ | |||

+ | The ''-symms sxz.asc'' option restricts the integration to a symmetric subspace specified by the file ''sxyz.asc''. Here there is just one generator and the file should be | ||

+ | |||

+ | % 1 | ||

+ | 1 -1 -1 -1 0 0 | ||

+ | |||

+ | See the [[docs:classes:fieldsymmetry#ascii_io|FieldSymmetry docs]] for more on the file formats. | ||

+ | |||

+ | |||

+ | |||

+ | ===== Search for solutions ===== | ||

+ | |||

+ | Now search for a new solution using random samples of the turbulent simulation data | ||

+ | |||

+ | mkdir findorbit-u500 | ||

+ | cd findorbit-u500 | ||

+ | findorbit -eqb -symms sxz.asc ../data/u500 | ||

+ | |||

+ | Keep an eye on the file convergence.asc. If the residual gets to 1e-08 or so you're on your way to a solution. | ||

+ | |||

+ | ===== Check against known solutions ===== |

gtspring2009/howto/findsoln.txt · Last modified: 2010/02/02 07:55 (external edit)