Functions

prob/par_linearwave1d.c File Reference

Problem generator for plane-parallel, grid-aligned linear wave tests with Lagrangian particles. More...

Go to the source code of this file.

Functions

int GetPosition (Grain *gr)
 get particle status (grid/crossing)
void problem (Grid *pGrid, Domain *pDomain)
void problem_write_restart (Grid *pG, Domain *pD, FILE *fp)
void problem_read_restart (Grid *pG, Domain *pD, FILE *fp)
static Real ScalarDen (const Grid *pG, const int i, const int j, const int k)
 Scalar density.
static Real dratio (const Grid *pG, const int i, const int j, const int k)
 Density ratio.
Gasfun_t get_usr_expr (const char *expr)
 Sets pointer to expression for special output data.
VGFunout_t get_usr_out_fun (const char *name)
 Returns a user defined output function pointer.
PropFun_t get_usr_par_prop (const char *name)
 Returns a user defined particle selection function.
void gasvshift (const Real x1, const Real x2, const Real x3, Real *u1, Real *u2, Real *u3)
 Gas velocity shift.
void Userforce_particle (Vector *ft, const Real x1, const Real x2, const Real x3, const Real v1, const Real v2, const Real v3)
void Userwork_in_loop (Grid *pGrid, Domain *pDomain)
void Userwork_after_loop (Grid *pGrid, Domain *pDomain)

Detailed Description

Problem generator for plane-parallel, grid-aligned linear wave tests with Lagrangian particles.

PURPOSE: Problem generator for plane-parallel, grid-aligned linear wave tests with Lagrangian particles. Works only for 2D grid and with wavevector parallel to grid. Particles can be initialized either with uniform density or with the same density profile as gas.

Can be used for either standing (problem/vflow=1.0) or travelling (problem/vflow=0.0) waves.

Definition in file par_linearwave1d.c.


Function Documentation

static Real dratio ( const Grid *  pG,
const int  i,
const int  j,
const int  k 
) [static]

Density ratio.

Definition at line 254 of file par_linearwave1d.c.

void gasvshift ( const Real  x1,
const Real  x2,
const Real  x3,
Real u1,
Real u2,
Real u3 
)

Gas velocity shift.

Definition at line 285 of file par_linearwave1d.c.

Gasfun_t get_usr_expr ( const char *  expr  ) 

Sets pointer to expression for special output data.

Definition at line 264 of file par_linearwave1d.c.

VGFunout_t get_usr_out_fun ( const char *  name  ) 

Returns a user defined output function pointer.

Definition at line 275 of file par_linearwave1d.c.

PropFun_t get_usr_par_prop ( const char *  name  ) 

Returns a user defined particle selection function.

Definition at line 280 of file par_linearwave1d.c.

int GetPosition ( Grain *  gr  ) 

get particle status (grid/crossing)

Get particle status (grid/crossing).

Definition at line 417 of file par_linearwave1d.c.

Referenced by problem().

Here is the caller graph for this function:

void problem ( Grid *  pGrid,
Domain *  pDomain 
)

Definition at line 41 of file par_linearwave1d.c.

References amp, ath_error(), cc_pos(), GetPosition(), Iso_csound, n, Npar, nwave, par_getd(), par_getd_def(), par_geti(), particle_realloc(), tstop0, x1max, x1min, x2max, and x2min.

Here is the call graph for this function:

void problem_read_restart ( Grid *  pG,
Domain *  pD,
FILE *  fp 
)

Definition at line 236 of file par_linearwave1d.c.

void problem_write_restart ( Grid *  pG,
Domain *  pD,
FILE *  fp 
)

Definition at line 231 of file par_linearwave1d.c.

static Real ScalarDen ( const Grid *  pG,
const int  i,
const int  j,
const int  k 
) [static]

Scalar density.

Definition at line 245 of file par_linearwave1d.c.

void Userforce_particle ( Vector *  ft,
const Real  x1,
const Real  x2,
const Real  x3,
const Real  v1,
const Real  v2,
const Real  v3 
)

Definition at line 291 of file par_linearwave1d.c.

void Userwork_after_loop ( Grid *  pGrid,
Domain *  pDomain 
)

Definition at line 309 of file par_linearwave1d.c.

References amp, ath_fname(), cc_pos(), Iso_csound, n, nwave, omega, par_getd(), par_geti(), particle_to_grid(), property_all(), x1max, x1min, x2max, and x2min.

Here is the call graph for this function:

void Userwork_in_loop ( Grid *  pGrid,
Domain *  pDomain 
)

Definition at line 298 of file par_linearwave1d.c.