===================
Boundary conditions
===================
The following tables list all possible boundary condition labels.
.. raw:: html
Filter:
Boundary conditions *bcx*
-------------------------
Module *boundcond.f90*
~~~~~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
:widths: 25 75
* - Variable
- Meaning
* - *0*
- zero value in ghost zones, free value on boundary
* - *p*
- periodic
* - *s*
- symmetry, :math:`f_{N+i}=f_{N-i}` ; implies :math:`f'(x_N)=f'''(x_0)=0`
* - *sf*
- symmetry with respect to interface
* - *ss*
- symmetry, plus function value given
* - *sds*
- symmetric-derivative-set
* - *s0d*
- symmetry, function value such that df/dx=0
* - *a*
- antisymmetry, :math:`f_{N+i}=-f_{N-i}` ; implies :math:`f(x_N)=f''(x_0)=0`
* - *af*
- antisymmetry with respect to interface
* - *a2*
- antisymmetry relative to boundary value, :math:`f_{N+i}=2 f_{N}-f_{N-i}` ; implies :math:`f''(x_0)=0`
* - *a2v*
- set boundary value and antisymmetry relative to it :math:`f_{N+i}=2 f_{N}-f_{N-i}` ; implies :math:`f''(x_0)=0`
* - *a2r*
- sets :math:`d^2f/dr^2 +2df/dr- 2f/r^2 = 0` This is the replacement of zero second derivative in spherical coordinates, in radial direction.
* - *cpc*
- cylindrical perfect conductor implies :math:`f''+f'/R=0`
* - *cpp*
- cylindrical perfect conductor for Aphi implies :math:`RA''+A'=0`
* - *cpz*
- cylindrical perfect conductor for Az implies :math:`R(RA)''-(RA)'=0`
* - *spr*
- spherical perfect conductor implies :math:`f''+2f'/R=0` and :math:`f(x_N)=0`
* - *v*
- vanishing third derivative
* - *cop*
- copy value of last physical point to all ghost cells
* - *1s*
- onesided
* - *d1s*
- onesided for 1st/2nd derivative in two first inner points, Dirichlet in boundary point
* - *n1s*
- onesided for 1st/2nd derivative in two first inner points, Neumann in boundary point
* - *1so*
- onesided
* - *cT*
- constant temperature (implemented as condition for entropy :math:`s` or temperature :math:`T` )
* - *c1*
- constant conductive flux
* - *Fgs*
- black body: - chi_t*rho*T*grad(s) - K*grad(T) = sigmaSBt*T**4
* - *Fct*
- Fbot = - K*grad(T) - chi_t*rho*T*grad(s)
* - *Fcm*
- :math:`Fbot = - K*grad(\overline{T})` :math:` - chi_t*\overline{rho}*\overline{T}*grad(\overline{s})`
* - *sT*
- symmetric temperature, :math:`T_{N-i}=T_{N+i}` ; implies :math:`T'(x_N)=T'''(x_0)=0`
* - *asT*
- select entropy for uniform ghost temperature matching fluctuating boundary value, :math:`T_{N-i}=T_{N}=` ; implies :math:`T'(x_N)=T'(x_0)=0`
* - *db*
- low-order one-sided derivatives (``no boundary condition'') for density
* - *f*
- ``freeze'' value, i.e. maintain initial value; antisymm wrt boundary
* - *fg*
- ``freeze'' value, i.e. maintain initial value at boundary, also mantaining the ghost zones at the initial coded value, i.e., keep the gradient frozen as well
* - *1*
- :math:`f=1` (for debugging)
* - *set*
- set boundary value to \var{fbcx}
* - *st*
- set boundary value to value generated by function bc_st. Special time-dependent boundary condition to model temporal changes.
* - *st2*
- set boundary value to value generated by function bc_st. Special time-dependent boundary condition to model temporal changes.
* - *der*
- set derivative on boundary to \var{fbcx}
* - *slo*
- set slope at the boundary = \var{fbcx}
* - *slp*
- set slope at the boundary and in ghost cells = \var{fbcx}
* - *shx*
- set shearing boundary proportional to x with slope=\var{fbcx} and abscissa=\var{fbcx2}
* - *shy*
- set shearing boundary proportional to y with slope=\var{fbcx} and abscissa=\var{fbcx2}
* - *shz*
- set shearing boundary proportional to z with slope=\var{fbcx} and abscissa=\var{fbcx2}
* - *dr0*
- set boundary value [really??]
* - *ovr*
- overshoot boundary condition ie :math:`(d/dx-1/\mathrm{dist}) f = 0.`
* - *out*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards
* - *e1o*
- allow outflow, but no inflow uses the e1 extrapolation scheme
* - *ant*
- stops and prompts for adding documentation
* - *e1*
- extrapolation [describe]
* - *e2*
- extrapolation [describe]
* - *e2h*
- extrapolation [describe]
* - *e3*
- extrapolation in log [maintain a power law]
* - *el*
- linear extrapolation from last two active cells
* - *pl*
- extrapolate using power law with the power index specified by fbcx
* - *hat*
- top hat jet profile in spherical coordinate.
* - *jet*
- top hat jet profile in cartezian coordinate.
* - *spd*
- sets :math:`d(rA_{\alpha})/dr = \mathtt{fbcx(j)}`
* - *sfr*
- stress-free boundary condition for spherical coordinate system.
* - *sr1*
- Stress-free bc for spherical coordinate system. Implementation with one-sided derivative.
* - *nfr*
- Normal-field bc for spherical coordinate system. Some people call this the ``(angry) hedgehog bc''.
* - *nr1*
- Normal-field bc for spherical coordinate system. Some people call this the ``(angry) hedgehog bc''. Implementation with one-sided derivative.
* - *sa2*
- :math:`(d/dr)(r B_{\phi}) = 0` imposes boundary condition on 2nd derivative of :math:`r A_{\phi}` . Same applies to :math:`\theta` component.
* - *pfc*
- perfect-conductor in spherical coordinate: :math:`d/dr( A_r) + 2/r = 0` .
* - *fix*
- set boundary value [really??]
* - *fil*
- set boundary value from a file
* - *cfb*
- radial centrifugal balance
* - *g*
- set to given value(s) or function
* - *ioc*
- inlet/outlet on western/eastern hemisphere in cylindrical coordinates
* - *tay*
-
* - *exp*
- exponentiate x ghost zone of other variable
* - *slc*
- set x ghost zones from slice.
* - *density_wind*
- 'wind' bc for lnrho
* - *nil, '', no*
- do nothing; assume that everything is set
Module *boundcond_alt.f90*
~~~~~~~~~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
:widths: 25 75
* - Variable
- Meaning
* - *0*
- do nothing; assume that everything is set zero value in ghost zones, free value on boundary
* - *p*
- periodic
* - *s*
- symmetry, :math:`f_{N+i}=f_{N-i}` ; implies :math:`f'(x_N)=f'''(x_0)=0`
* - *ss*
- symmetry, plus function value given
* - *s0d*
- symmetry, function value such that df/dx=0
* - *a*
- antisymmetry, :math:`f_{N+i}=-f_{N-i}` ; implies :math:`f(x_N)=f''(x_0)=0`
* - *a2*
- antisymmetry relative to boundary value, :math:`f_{N+i}=2 f_{N}-f_{N-i}` ; implies :math:`f''(x_0)=0`
* - *a2r*
- sets :math:`d^2f/dr^2 +2df/dr- 2f/r^2 = 0` This is the replacement of zero second derivative in spherical coordinates, in radial direction.
* - *cpc*
- cylindrical perfect conductor implies :math:`f''+f'/R=0`
* - *cpp*
- cylindrical perfect conductor implies :math:`f''+f'/R=0`
* - *cpz*
- cylindrical perfect conductor implies :math:`f''+f'/R=0`
* - *spr*
- spherical perfect conductor implies :math:`f''+2f'/R=0` and :math:`f(x_N)=0`
* - *v*
- vanishing third derivative
* - *cop*
- copy value of last physical point to all ghost cells
* - *1s*
- onesided
* - *1so*
- onesided
* - *cT*
- constant temperature (implemented as condition for entropy :math:`s` or temperature :math:`T` )
* - *c1*
- constant temperature (or maybe rather constant conductive flux??)
* - *Fgs*
- Fconv = - chi_t*rho*T*grad(s)
* - *Fct*
- Fbot = - K*grad(T) - chi_t*rho*T*grad(s)
* - *Fcm*
- :math:`Fbot = - K*grad(\overline{T})` :math:` - chi_t*\overline{rho}*\overline{T}*grad(\overline{s})`
* - *sT*
- symmetric temperature, :math:`T_{N-i}=T_{N+i}` ; implies :math:`T'(x_N)=T'''(x_0)=0`
* - *asT*
- select entropy for uniform ghost temperature matching fluctuating boundary value, :math:`T_{N-i}=T_{N}=` ; implies :math:`T'(x_N)=T'(x_0)=0`
* - *db*
-
* - *f*
- ``freeze'' value, i.e. maintain initial
* - *fg*
- ``freeze'' value, i.e. maintain initial
* - *1*
- :math:`f=1` (for debugging)
* - *set*
- set boundary value to \var{fbcx12}
* - *der*
- set derivative on boundary to \var{fbcx12}
* - *slo*
- set slope at the boundary = \var{fbcx12}
* - *dr0*
- set boundary value [really??]
* - *ovr*
- overshoot boundary condition ie :math:`(d/dx-1/\mathrm{dist}) f = 0.`
* - *out*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards
* - *e1o*
- allow outflow, but no inflow uses the e1 extrapolation scheme
* - *ant*
- stops and prompts for adding documentation
* - *e1*
- extrapolation [describe]
* - *e2*
- extrapolation [describe]
* - *e3*
- extrapolation in log [maintain a power law]
* - *hat*
- top hat jet profile in spherical coordinate.
* - *jet*
- top hat jet profile in cartezian coordinate.
* - *spd*
- sets :math:`d(rA_{\alpha})/dr = \mathtt{fbcx12(j)}`
* - *sfr*
- stress-free boundary condition for spherical coordinate system.
* - *nfr*
- Normal-field bc for spherical coordinate system. Some people call this the ``(angry) hedgehog bc''.
* - *sa2*
- :math:`(d/dr)(r B_{\phi}) = 0` imposes boundary condition on 2nd derivative of :math:`r A_{\phi}` . Same applies to :math:`\theta` component.
* - *pfc*
- perfect-conductor in spherical coordinate: :math:`d/dr( A_r) + 2/r = 0` .
* - *fix*
- set boundary value [really??]
* - *fil*
- set boundary value from a file
* - *g*
- set to given value(s) or function
* - *ioc*
- do nothing; assume that everything is set inlet/outlet on western/eastern hemisphere in cylindrical coordinates
* - *tay*
-
Boundary conditions *bcz*
-------------------------
Module *boundcond.f90*
~~~~~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
:widths: 25 75
* - Variable
- Meaning
* - *in*
- allow inflow, but no outflow forces ghost cells and boundary to not point outwards
* - *0*
- zero value in ghost zones, free value on boundary
* - *p*
- periodic
* - *yy*
- Yin-Yang grid
* - *s*
- symmetry
* - *sf*
- symmetry with respect to interface
* - *s0d*
- symmetry, function value such that df/dz=0
* - *0ds*
- symmetry, function value such that df/dz=0
* - *a*
- antisymmetry
* - *a2*
- antisymmetry relative to boundary value
* - *a2v*
- set boundary value and antisymmetry relative to it
* - *af*
- antisymmetry with respect to interface
* - *a0d*
- antisymmetry with zero derivative
* - *v*
- vanishing third derivative
* - *v3*
- vanishing third derivative
* - *1s*
- one-sided
* - *d1s*
- onesided for 1st and 2nd derivative in two first inner points, Dirichlet in boundary point
* - *n1s*
- onesided for 1st and 2nd derivative in two first inner points, Neumann in boundary point
* - *a1s*
- special for perfect conductor with const alpha and etaT when A considered as B; one-sided for 1st and 2nd derivative in two first inner points
* - *fg*
- ``freeze'' value, i.e. maintain initial value at boundary, also mantaining the ghost zones at the initial coded value, i.e., keep the gradient frozen as well
* - *c1*
- special boundary condition for :math:`\ln\rho` and :math:`s` : constant heat flux through the boundary
* - *c1s*
- complex
* - *Fgs*
- black body: - chi_t*rho*T*grad(s) - K*grad(T) = sigmaSBt*T**4
* - *Fct*
- Fbot = - K*grad(T) - chi_t*rho*T*grad(s)
* - *c3*
- constant flux at the bottom with a variable hcond
* - *pfe*
- potential field extrapolation
* - *p1D*
- potential field extrapolation in 1D
* - *pot*
- potential magnetic field
* - *pwd*
- a variant of 'pot' for nprocx=1
* - *d2z*
-
* - *hds*
- hydrostatic equilibrium with a high-frequency filter
* - *cT*
- constant temperature. If used for lnrho, sets both lnrho and ss (in which case the BC for ss should be set to 'nil') If used for ss, sets only ss.
* - *cT1*
- constant temperature using one-sided derivatives
* - *cT2*
- constant temp. (keep lnrho)
* - *cT3*
- constant temp. (keep lnrho)
* - *hs*
- hydrostatic equilibrium
* - *hse*
- hydrostatic extrapolation rho or lnrho is extrapolated linearily and the temperature is calculated in hydrostatic equilibrium.
* - *cp*
- constant pressure
* - *sT*
- symmetric temp.
* - *ctz*
- for interstellar runs copy T
* - *cdz*
- for interstellar runs limit rho
* - *ism*
- exponential decay/growth in rho/T by scale height
* - *asT*
- select entropy for uniform ghost temperature matching fluctuating boundary value, :math:`T_{N-i}=T_{N}=` ; implies :math:`T'(x_N)=T'(x_0)=0`
* - *c2*
- special boundary condition for s: constant temperature at the boundary --- requires boundary condition 'a2' for :math:`\ln\rho`
* - *db*
- low-order one-sided derivatives (``no boundary condition'') for density
* - *ce*
- complex
* - *e1*
- extrapolation
* - *e2*
- extrapolation
* - *ex*
- simple linear extrapolation in first order
* - *exf*
- simple linear extrapolation in first order
* - *exd*
- simple linear extrapolation in first order
* - *exm*
- simple linear extrapolation in first order
* - *b1*
- extrapolation with zero value (improved 'a')
* - *b2*
- extrapolation with zero value (improved 'a')
* - *b3*
- extrapolation with zero value (improved 'a')
* - *f, fa*
- freeze value + antisymmetry
* - *fs*
- freeze value + symmetry
* - *fBs*
- frozen-in B-field (s)
* - *fB*
- frozen-in B-field (a2)
* - *g*
- set to given value(s) or function
* - *gs*
-
* - *1*
- f=1 (for debugging)
* - *StS*
- solar surface boundary conditions
* - *set*
- set boundary value
* - *sep*
- set boundary value
* - *der*
- set derivative on the boundary
* - *div*
- set the divergence of :math:`\uv` to a given value use bc = 'div' for iuz
* - *ovr*
- set boundary value
* - *inf*
- allow inflow, but no outflow
* - *ouf*
- allow outflow, but no inflow
* - *out*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards
* - *crk*
- no-inflow: copy value of last physical point to all ghost cells, but suppressing any inflow
* - *in0*
- allow inflow, but no outflow forces ghost cells and boundary to not point outwards relaxes to vanishing 1st derivative at boundary
* - *ou0*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards relaxes to vanishing 1st derivative at boundary
* - *ind*
- allow inflow, but no outflow forces ghost cells and boundary to not point outwards creates inwards pointing or zero 1st derivative at boundary
* - *oud*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards creates outwards pointing or zero 1st derivative at boundary
* - *ubs*
- copy boundary outflow, reduce inflow speed outside the boundary
* - *win*
- forces massflux given as :math:`\Sigma \rho_i ( u_i + u_0)=\textrm{fbcz1/2}(\rho)`
* - *cop*
- copy value of last physical point to all ghost cells
* - *str*
-
* - *tay*
-
* - *exp*
- exponentiate z ghost zone of other variable
* - *slc*
- set z ghost zones from slice.
* - *nil, '', no*
- do nothing; assume that everything is set
Module *boundcond_alt.f90*
~~~~~~~~~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
:widths: 25 75
* - Variable
- Meaning
* - *cfb*
- radial centrifugal balance
* - *fBs*
- frozen-in B-field (s)
* - *fB*
- frozen-in B-field (a2)
* - *0*
- zero value in ghost zones, free value on boundary
* - *p*
- periodic
* - *s*
- symmetry
* - *sf*
- symmetry with respect to interface
* - *s0d*
- symmetry, function value such that df/dz=0
* - *0ds*
- symmetry, function value such that df/dz=0
* - *a*
- antisymmetry
* - *a2*
- antisymmetry relative to boundary value
* - *af*
- antisymmetry with respect to interface
* - *a0d*
- antisymmetry with zero derivative
* - *v*
- vanishing third derivative
* - *v3*
- vanishing third derivative
* - *1s*
- one-sided
* - *fg*
- ``freeze'' value, i.e. maintain initial
* - *c1*
- complex
* - *Fgs*
- Fconv = - chi_t*rho*T*grad(s)
* - *Fct*
- Fbot = - K*grad(T) - chi_t*rho*T*grad(s)
* - *c3*
- constant flux at the bottom with a variable hcond
* - *pfe*
- potential field extrapolation
* - *p1D*
- potential field extrapolation in 1D
* - *pot*
- potential magnetic field
* - *pwd*
- a variant of 'pot' for nprocx=1
* - *d2z*
-
* - *hds*
- hydrostatic equilibrium with a high-frequency filter
* - *cT*
- constant temp.
* - *cT2*
- constant temp. (keep lnrho)
* - *cT3*
- constant temp. (keep lnrho)
* - *hs*
- hydrostatic equilibrium
* - *hse*
- hydrostatic extrapolation rho or lnrho is extrapolated linearily and the temperature is calculated in hydrostatic equilibrium.
* - *cp*
- constant pressure
* - *sT*
- symmetric temp.
* - *ctz*
- for interstellar runs copy T
* - *cdz*
- for interstellar runs limit rho
* - *asT*
- select entropy for uniform ghost temperature matching fluctuating boundary value, :math:`T_{N-i}=T_{N}=` ; implies :math:`T'(x_N)=T'(x_0)=0`
* - *c2*
- complex
* - *db*
- complex
* - *ce*
- complex
* - *e1*
- extrapolation
* - *e2*
- extrapolation
* - *ex*
- simple linear extrapolation in first order
* - *exf*
- simple linear extrapolation in first order
* - *exd*
- simple linear extrapolation in first order
* - *exm*
- simple linear extrapolation in first order
* - *b1*
- extrapolation with zero value (improved 'a')
* - *b2*
- extrapolation with zero value (improved 'a')
* - *b3*
- extrapolation with zero value (improved 'a')
* - *f, fa*
- freeze value + antisymmetry
* - *fs*
- freeze value + symmetry
* - *g*
- set to given value(s) or function
* - *gs*
-
* - *1*
- f=1 (for debugging)
* - *StS*
- solar surface boundary conditions
* - *set*
- set boundary value
* - *der*
- set derivative on the boundary
* - *div*
- set the divergence of :math:`\uv` to a given value use bc = 'div' for iuz
* - *ovr*
- set boundary value
* - *inf*
- allow inflow, but no outflow
* - *ouf*
- allow outflow, but no inflow
* - *in*
- allow inflow, but no outflow forces ghost cells and boundary to not point outwards
* - *out*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards
* - *in0*
- allow inflow, but no outflow forces ghost cells and boundary to not point outwards relaxes to vanishing 1st derivative at boundary
* - *ou0*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards relaxes to vanishing 1st derivative at boundary
* - *ind*
- allow inflow, but no outflow forces ghost cells and boundary to not point outwards creates inwards pointing or zero 1st derivative at boundary
* - *oud*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards creates outwards pointing or zero 1st derivative at boundary
* - *ubs*
- copy boundary outflow,
* - *win*
- forces massflux given as :math:`\Sigma \rho_i ( u_i + u_0)=\textrm{fbcz1/2}(\rho)`
* - *cop*
- copy value of last physical point to all ghost cells
* - *nil*
- do nothing; assume that everything is set
Boundary conditions *bcy*
-------------------------
Module *boundcond.f90*
~~~~~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
:widths: 25 75
* - Variable
- Meaning
* - *0*
- zero value in ghost zones, free value on boundary
* - *p*
- periodic
* - *pp*
- periodic across the pole
* - *yy*
- Yin-Yang grid
* - *ap*
- anti-periodic across the pole
* - *s*
- symmetry, :math:`f_{N+i}=f_{N-i}` ; implies :math:`f'(y_N)=f'''(y_0)=0`
* - *sf*
- symmetry with respect to interface
* - *ss*
- symmetry, plus function value given
* - *sds*
- symmetric-derivative-set
* - *cds*
- complex symmetric-derivative-set
* - *s0d*
- symmetry, function value such that df/dy=0
* - *a*
- antisymmetry
* - *af*
- antisymmetry with respect to interface
* - *a2*
- antisymmetry relative to boundary value
* - *v*
- vanishing third derivative
* - *v3*
- vanishing third derivative
* - *out*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards
* - *1s*
- onesided
* - *d1s*
- onesided for 1st and 2nd derivative in two first inner points, Dirichlet in boundary point
* - *n1s*
- onesided for 1st and 2nd derivative in two first inner points, Neumann in boundary point
* - *cT*
- constant temp.
* - *sT*
- symmetric temp.
* - *asT*
- select entropy for uniform ghost temperature matching fluctuating boundary value, :math:`T_{N-i}=T_{N}=` ; implies :math:`T'(x_N)=T'(x_0)=0`
* - *f*
- freeze value
* - *s+f*
- freeze value
* - *fg*
- ``freeze'' value, i.e. maintain initial
* - *fBs*
- frozen-in B-field (s)
* - *fB*
- frozen-in B-field (a2)
* - *1*
- f=1 (for debugging)
* - *set*
- set boundary value
* - *sse*
- symmetry, set boundary value
* - *sep*
- set boundary value
* - *e1*
- extrapolation
* - *e2*
- extrapolation
* - *e3*
- extrapolation in log [maintain a power law]
* - *der*
- set derivative on the boundary
* - *cop*
- outflow: copy value of last physical point to all ghost cells
* - *c+k*
- no-inflow: copy value of last physical point to all ghost cells, but suppressing any inflow
* - *sfr*
- stress-free boundary condition for spherical coordinate system.
* - *nfr*
- Normal-field bc for spherical coordinate system. Some people call this the ``(angry) hedgehog bc''.
* - *spt*
- spherical perfect conducting boundary condition along :math:`\theta` boundary :math:`f''+\cot\theta f'=0` and :math:`f(x_N)=0`
* - *pfc*
- perfect conducting boundary condition along :math:`\theta` boundary
* - *str*
-
* - *tay*
-
* - *exp*
- exponentiate y ghost zone of other variable
* - *slc*
- set x ghost zones from slice.
* - *nil, '', no*
- do nothing; assume that everything is set
Module *boundcond_alt.f90*
~~~~~~~~~~~~~~~~~~~~~~~~~~
.. list-table::
:header-rows: 1
:widths: 25 75
* - Variable
- Meaning
* - *sds*
- symmetric-derivative-set
* - *p*
- periodic
* - *pp*
- periodic across the pole
* - *ap*
- anti-periodic across the pole
* - *s*
- symmetry symmetry, :math:`f_{N+i}=f_{N-i}` ; implies :math:`f'(y_N)=f'''(y_0)=0`
* - *ss*
- symmetry, plus function value given
* - *cds*
- complex symmetric-derivative-set
* - *s0d*
- symmetry, function value such that df/dy=0
* - *a*
- antisymmetry
* - *a2*
- antisymmetry relative to boundary value
* - *v*
- vanishing third derivative
* - *v3*
- vanishing third derivative
* - *out*
- allow outflow, but no inflow forces ghost cells and boundary to not point inwards
* - *1s*
- onesided
* - *cT*
- constant temp.
* - *sT*
- symmetric temp.
* - *asT*
- select entropy for uniform ghost temperature matching fluctuating boundary value, :math:`T_{N-i}=T_{N}=` ; implies :math:`T'(x_N)=T'(x_0)=0`
* - *f*
- freeze value
* - *s+f*
- freeze value
* - *fg*
- ``freeze'' value, i.e. maintain initial
* - *1*
- f=1 (for debugging)
* - *set*
- set boundary value
* - *sse*
- symmetry, set boundary value
* - *sep*
- set boundary value
* - *e1*
- extrapolation
* - *e2*
- extrapolation
* - *e3*
- extrapolation in log [maintain a power law]
* - *der*
- set derivative on the boundary
* - *cop*
- outflow: copy value of last physical point to all ghost cells
* - *c+k*
- no-inflow: copy value of last physical point to all ghost cells, but suppressing any inflow
* - *sfr*
- stress-free boundary condition for spherical coordinate system.
* - *nfr*
- Normal-field bc for spherical coordinate system. Some people call this the ``(angry) hedgehog bc''.
* - *spt*
- spherical perfect conducting boundary condition along :math:`\theta` boundary :math:`f''+\cot\theta f'=0` and :math:`f(x_N)=0`
* - *pfc*
- perfect conducting boundary condition along :math:`\theta` boundary
* - *str*
-
* - *nil, ''*
- do nothing; assume that everything is set