File vectorphase.h

RCS Header: /cvsroot/rheoplast/vectorphase.h,v 1.25 2004/08/11 21:56:33 el_oso Exp

The typedefs and function prototypes for vector-value phase field. This is not meant to be included on its own, only when someone #includes "rheoplast.h".


Included Files


Preprocessor definitions

#define VECTORPHASE_H

#define VECTORPHASE_HELP "Vector-value phase field is currently done using the 1998 Kobayashi, Warren\nand Carter formulation. To use it, add option:\n -with_vectorphase\nand control it with proprerties:\n -mparam <m> KWC m parameter [0.25]\n -epsilon <eps> epsilon/dx [5.0]\n -mubar <mb> mubar param in mu=mubar(phi)^muexp [0.01]\n -muexp <me> muexp param in same [4.0]\n -n_general <N0> general rotation symmetry order [4]\n -delta_surface <ds> relative variation in epsilon [0.2]\n -n_surface <Ns> surface rotation symmetry order [4]\n -exp_surface <es> surface energy cosine exponent [3.0]\n -temp_equil <Te> equilibrium temperature [0.0]\n -m_alpha <alpha> m T-dependance parameter [0.9]\n -m_gamma <gamma> m T-dependance parameter [20]\nKinetic growth parameters not yet implemented. Initial condition:\n -nukes <n> number of nucleation sites [5]\n -nuke_theta <th> Theta (degrees) for (all) nuclei [random]\n -nuke_x <x> One nucleus: dimensionless x coord [random]\n -nuke_y <y> One nucleus: dimensionless y coord [random]\nFor simulations with symmetry boundary conditions (instead of periodic),\nnuclei can be planted on the edges or in the interior using:\n -edge_nukes <n> nucleation sites on the edges [0]\n -interior_nukes <n> nucleation sites in the interior [0]\n\nA nice example with the default four-fold symmetry and one grain is:\n\n ./rheoplast -da_grid_x 50 -da_grid_y 50 -explicit_timesteps 1000000 -explicit_monsteps 10000 -with_vectorphase -nukes 3 -contours\n\nor if you wish to use semi-implicit timesteps (explicit is needed to get a\nworkable initial condition for semi-implicit):\n\n ./rheoplast -da_grid_x 50 -da_grid_y 50 -explicit_timesteps 20000 -explicit_monsteps 10000 -ts_dt 0.02 -ts_max_steps 1000 -monsteps 10 -snes_mf -with_vectorphase -nukes 1 -contours\n\n"


Typedef AppCtx

typedef void AppCtx

Typedef vectorphasers

Structure typedef for vector-value phase field.

typedef struct {...} vectorphasers

struct  
   {  
      PetscScalar eps_dx;  
      PetscScalar mparam;  
      PetscScalar mubar;  
      PetscScalar muexp;  
      PetscScalar N0;  
      PetscScalar delta_s;  
      PetscScalar N_s;  
      PetscScalar n_s;  
      PetscScalar T_e;  
      PetscScalar C;  
      PetscScalar m_alpha;  
      PetscScalar m_gamma;  
      int pvar;  
      int qvar;  
      int phivar;  
      int epsvar;  
      int tauvar;  
      int dphidtvar;  
   }