HARM
harm and utilities
 All Data Structures Files Functions Variables Typedefs Macros Pages
Macros | Functions | Variables
boundsflux.c File Reference

User Boundary conditions for fluxes. More...

#include "decs.h"
Include dependency graph for boundsflux.c:

Go to the source code of this file.

Macros

#define EXTRAP   0
 order of outflow extrap 0: none/ copy 1: first order More...
 

Functions

int bound_flux_user (int boundstage, int finalstep, SFTYPE boundtime, int boundvartype, FTYPE(*F1)[NSTORE2][NSTORE3][NPR+NSPECIAL], FTYPE(*F2)[NSTORE2][NSTORE3][NPR+NSPECIAL], FTYPE(*F3)[NSTORE2][NSTORE3][NPR+NSPECIAL])
 

Variables

int inboundloop [NDIM]
 
int outboundloop [NDIM]
 
int innormalloop [NDIM]
 
int outnormalloop [NDIM]
 
int inoutlohi [NUMUPDOWN][NUMUPDOWN][NDIM]
 
int riin
 
int riout
 
int rjin
 
int rjout
 
int rkin
 
int rkout
 
int dosetbc [COMPDIM *2]
 

Detailed Description

User Boundary conditions for fluxes.

Also calls general/frequently-used functions in bounds.tools.c

For fluxes, e.g. F1, assume fluxes exist everywhere – including j/k boundary zones. Only i-boundary zones need to be bounded. This assumesCOMPZSLOOP(is,ie,js,je,ks,ke) is over boundary zones in flux.c, which in general to be compatible with any flux method (including finite volume) this is how it should be.

With fluxes, only need to bound each dir-flux along that direction (as presently used by ENO-type schemes)

Assume flux at 0 through N are computed correctly. So only need fluxes in other boundary zones. Self-assigns for 0 or N for simplicity of coding

OUTFLOW leaves true edge of boundary unchanged Therefore, if FIXEDOUTFLOW, then extrapolation is always ok. if OUTFLOW, then extrapolation is ok as long as flux is from active zones out of boundary

GODMARK: For FLUXCTSTAG method, boundaries of values need (e.g.) F1(B2) = -F2(B1). In reality I think this means only really need extra bounding of upper N1 or N2 or N3 boundary since lower is fine and real boundary cells are only needed along direction of flux itself.

Definition in file boundsflux.c.

Macro Definition Documentation

#define EXTRAP   0

order of outflow extrap 0: none/ copy 1: first order

Definition at line 29 of file boundsflux.c.

Function Documentation

int bound_flux_user ( int  boundstage,
int  finalstep,
SFTYPE  boundtime,
int  boundvartype,
FTYPE(*)  F1[NSTORE2][NSTORE3][NPR+NSPECIAL],
FTYPE(*)  F2[NSTORE2][NSTORE3][NPR+NSPECIAL],
FTYPE(*)  F3[NSTORE2][NSTORE3][NPR+NSPECIAL] 
)

Definition at line 45 of file boundsflux.c.

Variable Documentation

int dosetbc[COMPDIM *2]

Definition at line 40 of file boundsflux.c.

int inboundloop[NDIM]

Definition at line 34 of file boundsflux.c.

int innormalloop[NDIM]

Definition at line 36 of file boundsflux.c.

int inoutlohi[NUMUPDOWN][NUMUPDOWN][NDIM]

Definition at line 38 of file boundsflux.c.

int outboundloop[NDIM]

Definition at line 35 of file boundsflux.c.

int outnormalloop[NDIM]

Definition at line 37 of file boundsflux.c.

int riin

Definition at line 39 of file boundsflux.c.

int riout

Definition at line 39 of file boundsflux.c.

int rjin

Definition at line 39 of file boundsflux.c.

int rjout

Definition at line 39 of file boundsflux.c.

int rkin

Definition at line 39 of file boundsflux.c.

int rkout

Definition at line 39 of file boundsflux.c.