User Tools

Site Tools


This is an old revision of the document!

Table of Contents


compute crossings of a Poincare section in a pre-computed trajectory


  poincare -T0 0 -T1 400 -d datadir ueqb.ff e.ff

reads a trajectory u0, u1, …, u400 stored in datadir, computes the crossings of the Poincare section (u(t)-ueqb, e) == 0, and saves them in a poincare/ directory.


options :
  -T0       --T0                <real>      default == 0           start time
  -T1       --T1                <real>      default == 100         end time
  -dT       --dT                <real>      default == 1           save interval
  -d        --datadir           <string>    default == data/       flowfield series directory
  -o        --poindir           <string>    default == poincare/   output dir for Poincare crossings
  -vdt      --variabledt                                           adjust dt to keep CFLmin<=CFL<CFLmax
  -dt       --dt                <real>      default == 0.03125     timestep
  -dtmin    --dtmin             <real>      default == 0.001       minimum time step
  -dtmax    --dtmax             <real>      default == 0.05        maximum time step
  -CFLmin   --CFLmin            <real>      default == 0.4         minimum CFL number
  -CFLmax   --CFLmax            <real>      default == 0.6         maximum CFL number
  -ts       --timestepping      <string>    default == sbdf3       timestepping algorithm
  -nl       --nonlinearity      <string>    default == rot         method of calculating nonlinearity
  -R        --Reynolds          <real>      default == 400         Reynolds number
  -c        --channel                                              channelflow instead of plane Couette
  -b        --bulkvelocity                                         hold bulk velocity fixed, not pressure gradient
  -P        --dPdx              <real>      default == 0           value for fixed pressure gradient
  -U        --Ubulk             <real>      default == 0           value for fixed bulk velocity
  <flowfield>      (trailing arg 2)                                fixed pt of poincare map
  <flowfield>      (trailing arg 1)                                e, for poincare condition (u(t)-u*, e) = 0

Usage example

Here is the basic idea of usage. Suppose you have an equilibrium ueqb with an unstable complex eigenvalue pair whose eigenfunctions are ef1 and ef2. Integrate a trajectory with initial condition u(0) = ueqb + 0.001 ef1 as follows

   addfields 1 ueqb 0.001 ef1 ueqb_001ef1
   couette -T0 0 -T1 1000 -o data-ueqb_0001ef1 ueqb_001ef1

Then you can define a Poincare section as, say, (u-ueqb, ef2) = 0, that is, the displacement from the equilibrium is orthogonal to the ef2 eigenfunction. To compute crossings of the Poincare section within the previously integrated trajectory, run

   poincare -T0 0 -T1 1000 -d data-ueqb_0001ef1 ueqb ef2
docs/utils/poincare.1235422610.txt.gz · Last modified: 2009/02/23 12:56 by gibson