PLUTO  4.0
 All Data Structures Files Functions Variables Enumerations Macros Pages
Functions
ct_emf_average.c File Reference

Collects different EMF averaging schemes. More...

#include "pluto.h"

Functions

void CT_EMF_ArithmeticAverage (const EMF *Z1, const double w)
 Compute arithmetic average of EMF at cell edges.
 
void CT_EMF_IntegrateToCorner (const Data *d, const EMF *emf, Grid *grid)
 
void CT_EMF_HLL_Solver (const Data *d, const EMF *emf, Grid *grid)
 Solve 2D Riemann problem for induction equation.
 
void CT_EMF_CMUSCL_Average (const Data *d, const EMF *emf, Grid *grid)
 
 

Function Documentation

void CT_EMF_ArithmeticAverage ( const EMF Z1,
const double  w 
)

Combine the four electric field values computed at zone faces as upwind Godunov fluxes into an edge-centered value.
The face-centered EMF should have been stored by previous calls to CT_StoreEMF() during the one-dimensional sweeps.
This function employs a simple arithmetic averaging of the face-centered electric field.

References:

  • "A Staggered Mesh Algorithm Using High Order Godunov Fluxes to Ensure Solenoidal Magnetic Fields in Magnetohydrodynamic Simulations"
    Balsara & Spicer, JCP (1999) 149, 270.
Parameters
[in]Z1pointer to EMF structure
[in]wweighting factor
Returns
This function has no return value.
Author
A. Mignone (migno.nosp@m.ne@p.nosp@m.h.uni.nosp@m.to.i.nosp@m.t)
Date
Aug 16, 31, 2012
void CT_EMF_CMUSCL_Average ( const Data d,
const EMF emf,
Grid grid 
)

Used in the predictor scheme of CTU scheme in conjunction with UCT_HLL average. No riemann solver actually used, but only a simple pointwise average.

References:

  • "A High order Godunov scheme with constrained transport and adaptie mesh refinement for astrophysical magnetohydrodynamics"
    Fromang, Hennebelle and Teyssier, A&A (2006) 457, 371
Returns
This function has no return value.
Author
A. Mignone (migno.nosp@m.ne@p.nosp@m.h.uni.nosp@m.to.i.nosp@m.t)
Date
Aug 16, 2012
void CT_EMF_HLL_Solver ( const Data d,
const EMF emf,
Grid grid 
)

Solve 2-D Riemann problem using the 2D HLL Riemann flux formula of Londrillo & Del Zanna (2004), JCP, eq. 56. Here N, W, E, S refer to the following configuration:

*                    |
*                    N
*                 NW | NE
*                    | 
*               --W--+--E--
*                    | 
*                 SW | SE
*                    S
*                    |
* 
Parameters
[in]dpointer to PLUTO Data structure
[in]gridpointer to Grid structure;
Returns
This function has no return value.
Author
A. Mignone (migno.nosp@m.ne@p.nosp@m.h.uni.nosp@m.to.i.nosp@m.t)
Date
Aug 16, 2012
void CT_EMF_IntegrateToCorner ( const Data d,
const EMF emf,
Grid grid 
)

Add derivatives to the 4-point arithmetic average of magnetic fields. Obtain the electric field at corners.

References:

  • "An unsplit Godunov method for ideal MHD via constrained transport"
    Gardiner & Stone, JCP (2005) 205, 509. See Eq. (41), (45) and (50).
Parameters
[in]dpointer to PLUTO Data structure
[in]emfpointer to EMF structure
[in]gridpointer to Grid structure
Returns
This function has no return value.
Author
A. Mignone (migno.nosp@m.ne@p.nosp@m.h.uni.nosp@m.to.i.nosp@m.t)
Date
Aug 16, 31, 2012