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

All routines related to fixing up solution when inversion fails or floors on densities are hit all fixup stuff only called for non-B advance. More...

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

Go to the source code of this file.

Macros

#define YFLADDRADTOGAS   0
 
#define FIXUPTYPE   0
 
#define MAXVOTES   8
 
#define NUMCHECKS   2
 
#define ISGAMMACHECK   0
 
#define ISUUCHECK   0
 
#define ORDERINDEPENDENT   1
 
#define GENERALAVERAGE   1
 
#define DO_CONSERVE_D_INFAILFIXUPS   (0&&finalstep==1 && (SCALARPL(pl)))
 
#define HANDLEUNEG   0
 
#define HANDLERHONEG   0
 
#define HANDLERHOUNEG   0
 
#define DOCOUNTNEGU   1
 
#define DOCOUNTNEGRHO   1
 
#define DOCOUNTNEGRHOU   1
 
#define ADJUSTCONSERVEDQUANTITY   0
 
#define PLOOPSTARTEND(pl)   for(pl=startpl;pl<=endpl;pl++) if((NONRADFULLPL(pl) && doingmhd || RADFULLPL(pl) && doingmhd==0) && BPL(pl)==0)
 
#define AVG4_1(pr, i, j, k, pl)   (0.25*((MACP0A1(pr,i,jp1mac(j),k,pl)+MACP0A1(pr,i,jm1mac(j),k,pl))+(MACP0A1(pr,im1mac(i),j,k,pl)+MACP0A1(pr,ip1mac(i),j,k,pl))))
 
#define AVG4_2(pr, i, j, k, pl)   (0.25*((MACP0A1(pr,ip1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,ip1mac(i),jm1mac(j),k,pl))+(MACP0A1(pr,im1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,im1mac(i),jm1mac(j),k,pl))))
 
#define AVG2_1(pr, i, j, k, pl)   (0.5*(MACP0A1(pr,i,jp1mac(j),k,pl)+MACP0A1(pr,i,jm1mac(j),k,pl)))
 
#define AVG2_2(pr, i, j, k, pl)   (0.5*(MACP0A1(pr,ip1mac(i),j,k,pl)+MACP0A1(pr,im1mac(i),j,k,pl)))
 
#define AVG2_3(pr, i, j, k, pl)   (0.5*(MACP0A1(pr,ip1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,im1mac(i),jm1mac(j),k,pl)))
 
#define AVG2_4(pr, i, j, k, pl)   (0.5*(MACP0A1(pr,ip1mac(i),jm1mac(j),k,pl)+MACP0A1(pr,im1mac(i),jp1mac(j),k,pl)))
 
#define AVG4_1(pr, i, j, k, pl)   (0.25*((MACP0A1(pr,i,jp1mac(j),k,pl)+MACP0A1(pr,i,jm1mac(j),k,pl))+(MACP0A1(pr,im1mac(i),j,k,pl)+MACP0A1(pr,ip1mac(i),j,k,pl))))
 
#define AVG4_2(pr, i, j, k, pl)   (0.25*((MACP0A1(pr,ip1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,ip1mac(i),jm1mac(j),k,pl))+(MACP0A1(pr,im1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,im1mac(i),jm1mac(j),k,pl))))
 
#define CAUSALAVG   0
 
#define CAUSALAVG_WHEN_U2AVG   0
 
#define SIMPLEAVG_WHEN_U2AVG   1
 
#define MAXUPOSAVG_WHEN_U2AVG   2
 
#define CAUSAL_THENMIN_WHEN_U2AVG   3
 
#define HOWTOAVG_WHEN_U2AVG   MAXUPOSAVG_WHEN_U2AVG
 
#define NOGOODSTATIC   0
 
#define NOGOODRESET   1
 
#define NOGOODAVERAGE   2
 
#define TODONOGOOD   NOGOODAVERAGE
 
#define WHICHPTOUSEWHENNOGOOD   0
 
#define FLOORDAMPFRAC   (0.1)
 
#define NUMBSQFLAGS   5
 
#define GAMMAERGOLIMIT   0
 
#define DO_CONSERVE_D   0
 
#define UTLIMIT   (50.0)
 
#define UTFIX   (utobs)
 
#define GRADIENTFACTOR   (.001)
 

Functions

static int simple_average (int startpl, int endpl, int i, int j, int k, int doingmhd, PFTYPE(*lpflagfailorig)[NSTORE2][NSTORE3][NUMFAILPFLAGS], FTYPE(*pv)[NSTORE2][NSTORE3][NPR], FTYPE(*ptoavg)[NSTORE2][NSTORE3][NPR])
 simple average of good surrounding zones More...
 
int count_whocalled (int i, int j, int k, int finalstep, int whocalled, CTYPE toadd)
 record who called the diag_fixup routine More...
 

Detailed Description

All routines related to fixing up solution when inversion fails or floors on densities are hit all fixup stuff only called for non-B advance.

Definition in file fixup.c.

Macro Definition Documentation

#define ADJUSTCONSERVEDQUANTITY   0

Definition at line 2685 of file fixup.c.

#define AVG2_1 (   pr,
  i,
  j,
  k,
  pl 
)    (0.5*(MACP0A1(pr,i,jp1mac(j),k,pl)+MACP0A1(pr,i,jm1mac(j),k,pl)))

Definition at line 3013 of file fixup.c.

#define AVG2_2 (   pr,
  i,
  j,
  k,
  pl 
)    (0.5*(MACP0A1(pr,ip1mac(i),j,k,pl)+MACP0A1(pr,im1mac(i),j,k,pl)))

Definition at line 3014 of file fixup.c.

#define AVG2_3 (   pr,
  i,
  j,
  k,
  pl 
)    (0.5*(MACP0A1(pr,ip1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,im1mac(i),jm1mac(j),k,pl)))

Definition at line 3015 of file fixup.c.

#define AVG2_4 (   pr,
  i,
  j,
  k,
  pl 
)    (0.5*(MACP0A1(pr,ip1mac(i),jm1mac(j),k,pl)+MACP0A1(pr,im1mac(i),jp1mac(j),k,pl)))

Definition at line 3016 of file fixup.c.

#define AVG4_1 (   pr,
  i,
  j,
  k,
  pl 
)    (0.25*((MACP0A1(pr,i,jp1mac(j),k,pl)+MACP0A1(pr,i,jm1mac(j),k,pl))+(MACP0A1(pr,im1mac(i),j,k,pl)+MACP0A1(pr,ip1mac(i),j,k,pl))))

Definition at line 3018 of file fixup.c.

#define AVG4_1 (   pr,
  i,
  j,
  k,
  pl 
)    (0.25*((MACP0A1(pr,i,jp1mac(j),k,pl)+MACP0A1(pr,i,jm1mac(j),k,pl))+(MACP0A1(pr,im1mac(i),j,k,pl)+MACP0A1(pr,ip1mac(i),j,k,pl))))

Definition at line 3018 of file fixup.c.

#define AVG4_2 (   pr,
  i,
  j,
  k,
  pl 
)    (0.25*((MACP0A1(pr,ip1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,ip1mac(i),jm1mac(j),k,pl))+(MACP0A1(pr,im1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,im1mac(i),jm1mac(j),k,pl))))

Definition at line 3019 of file fixup.c.

#define AVG4_2 (   pr,
  i,
  j,
  k,
  pl 
)    (0.25*((MACP0A1(pr,ip1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,ip1mac(i),jm1mac(j),k,pl))+(MACP0A1(pr,im1mac(i),jp1mac(j),k,pl)+MACP0A1(pr,im1mac(i),jm1mac(j),k,pl))))

Definition at line 3019 of file fixup.c.

#define CAUSAL_THENMIN_WHEN_U2AVG   3

Definition at line 3028 of file fixup.c.

#define CAUSALAVG   0

Definition at line 3023 of file fixup.c.

#define CAUSALAVG_WHEN_U2AVG   0

Definition at line 3025 of file fixup.c.

#define DO_CONSERVE_D   0

Definition at line 4111 of file fixup.c.

#define DO_CONSERVE_D_INFAILFIXUPS   (0&&finalstep==1 && (SCALARPL(pl)))

Definition at line 1782 of file fixup.c.

#define DOCOUNTNEGRHO   1

Definition at line 2674 of file fixup.c.

#define DOCOUNTNEGRHOU   1

Definition at line 2677 of file fixup.c.

#define DOCOUNTNEGU   1

Definition at line 2671 of file fixup.c.

#define FIXUPTYPE   0

Definition at line 1067 of file fixup.c.

#define FLOORDAMPFRAC   (0.1)

Definition at line 3975 of file fixup.c.

#define GAMMAERGOLIMIT   0

Definition at line 4104 of file fixup.c.

#define GENERALAVERAGE   1

Definition at line 1774 of file fixup.c.

#define GRADIENTFACTOR   (.001)

Definition at line 4351 of file fixup.c.

#define HANDLERHONEG   0

Definition at line 1789 of file fixup.c.

#define HANDLERHOUNEG   0

Definition at line 1794 of file fixup.c.

#define HANDLEUNEG   0

Definition at line 1784 of file fixup.c.

#define HOWTOAVG_WHEN_U2AVG   MAXUPOSAVG_WHEN_U2AVG

Definition at line 3032 of file fixup.c.

#define ISGAMMACHECK   0

Definition at line 1556 of file fixup.c.

#define ISUUCHECK   0

Definition at line 1557 of file fixup.c.

#define MAXUPOSAVG_WHEN_U2AVG   2

Definition at line 3027 of file fixup.c.

#define MAXVOTES   8

Definition at line 1553 of file fixup.c.

#define NOGOODAVERAGE   2

Definition at line 3545 of file fixup.c.

#define NOGOODRESET   1

Definition at line 3544 of file fixup.c.

#define NOGOODSTATIC   0

Definition at line 3543 of file fixup.c.

#define NUMBSQFLAGS   5

Definition at line 3976 of file fixup.c.

#define NUMCHECKS   2

Definition at line 1555 of file fixup.c.

#define ORDERINDEPENDENT   1

Definition at line 1770 of file fixup.c.

#define PLOOPSTARTEND (   pl)    for(pl=startpl;pl<=endpl;pl++) if((NONRADFULLPL(pl) && doingmhd || RADFULLPL(pl) && doingmhd==0) && BPL(pl)==0)

Definition at line 3004 of file fixup.c.

#define SIMPLEAVG_WHEN_U2AVG   1

Definition at line 3026 of file fixup.c.

#define TODONOGOOD   NOGOODAVERAGE

Definition at line 3548 of file fixup.c.

#define UTFIX   (utobs)

Definition at line 4350 of file fixup.c.

#define UTLIMIT   (50.0)

Definition at line 4349 of file fixup.c.

#define WHICHPTOUSEWHENNOGOOD   0

Definition at line 3557 of file fixup.c.

#define YFLADDRADTOGAS   0

Definition at line 24 of file fixup.c.

Function Documentation

int count_whocalled ( int  i,
int  j,
int  k,
int  finalstep,
int  whocalled,
CTYPE  toadd 
)

record who called the diag_fixup routine

Definition at line 199 of file fixup.c.

Here is the caller graph for this function:

static int simple_average ( int  startpl,
int  endpl,
int  i,
int  j,
int  k,
int  doingmhd,
PFTYPE(*)  lpflagfailorig[NSTORE2][NSTORE3][NUMFAILPFLAGS],
FTYPE(*)  pv[NSTORE2][NSTORE3][NPR],
FTYPE(*)  ptoavg[NSTORE2][NSTORE3][NPR] 
)
static

simple average of good surrounding zones

Definition at line 3348 of file fixup.c.