|
programmer's documentation
|
This function solves an advection diffusion equation with source terms for one time step for the variable
.
More...
Functions/Subroutines | |
| subroutine | codits (idtvar, ivar, iconvp, idiffp, ireslp, ndircp, nitmap, imrgra, nswrsp, nswrgp, imligp, ircflp, ischcp, isstpp, iescap, imucpp, idftnp, iswdyp, imgrp, ncymxp, nitmfp, ipp, iwarnp, blencp, epsilp, epsrsp, epsrgp, climgp, extrap, relaxp, thetap, pvara, pvark, coefap, coefbp, cofafp, cofbfp, flumas, flumab, viscfm, viscbm, visccm, viscfs, viscbs, visccs, weighf, weighb, icvflb, icvfli, rovsdt, smbrp, pvar, dpvar, xcpp, eswork) |
This function solves an advection diffusion equation with source terms for one time step for the variable
.
The equation reads:
This equation is rewritten as:
where
and 
It is in fact solved with the following iterative process:
where 
Be careful, it is forbidden to modify
here!
| subroutine codits | ( | integer | idtvar, |
| integer | ivar, | ||
| integer | iconvp, | ||
| integer | idiffp, | ||
| integer | ireslp, | ||
| integer | ndircp, | ||
| integer | nitmap, | ||
| integer | imrgra, | ||
| integer | nswrsp, | ||
| integer | nswrgp, | ||
| integer | imligp, | ||
| integer | ircflp, | ||
| integer | ischcp, | ||
| integer | isstpp, | ||
| integer | iescap, | ||
| integer | imucpp, | ||
| integer | idftnp, | ||
| integer | iswdyp, | ||
| integer | imgrp, | ||
| integer | ncymxp, | ||
| integer | nitmfp, | ||
| integer | ipp, | ||
| integer | iwarnp, | ||
| double precision | blencp, | ||
| double precision | epsilp, | ||
| double precision | epsrsp, | ||
| double precision | epsrgp, | ||
| double precision | climgp, | ||
| double precision | extrap, | ||
| double precision | relaxp, | ||
| double precision | thetap, | ||
| double precision, dimension(ncelet) | pvara, | ||
| double precision, dimension(ncelet) | pvark, | ||
| double precision, dimension(nfabor) | coefap, | ||
| double precision, dimension(nfabor) | coefbp, | ||
| double precision, dimension(nfabor) | cofafp, | ||
| double precision, dimension(nfabor) | cofbfp, | ||
| double precision, dimension(nfac) | flumas, | ||
| double precision, dimension(nfabor) | flumab, | ||
| double precision, dimension(nfac) | viscfm, | ||
| double precision, dimension(nfabor) | viscbm, | ||
| double precision, dimension(ncelet) | visccm, | ||
| double precision, dimension(nfac) | viscfs, | ||
| double precision, dimension(nfabor) | viscbs, | ||
| double precision, dimension(ncelet) | visccs, | ||
| double precision, dimension(2,nfac) | weighf, | ||
| double precision, dimension(nfabor) | weighb, | ||
| integer | icvflb, | ||
| integer, dimension(nfabor) | icvfli, | ||
| double precision, dimension(ncelet) | rovsdt, | ||
| double precision, dimension(ncelet) | smbrp, | ||
| double precision, dimension(ncelet) | pvar, | ||
| double precision, dimension(ncelet) | dpvar, | ||
| double precision, dimension(ncelet) | xcpp, | ||
| double precision, dimension(ncelet) | eswork | ||
| ) |
| [in] | idtvar | indicateur du schema temporel |
| [in] | ivar | index of the current variable |
| [in] | iconvp | indicator
|
| [in] | idiffp | indicator
|
| [in] | ireslp | indicator
|
| [in] | ndircp | indicator (0 if the diagonal is stepped aside) |
| [in] | nitmap | maximum number of iteration to solve the iterative process |
| [in] | imrgra | indicator
|
| [in] | nswrsp | number of reconstruction sweeps for the Right Hand Side |
| [in] | nswrgp | number of reconstruction sweeps for the gradients |
| [in] | imligp | clipping gradient method
|
| [in] | ircflp | indicator
|
| [in] | ischcp | indicator
|
| [in] | isstpp | indicator
|
| [in] | iescap | compute the predictor indicator if 1 |
| [in] | imucpp | indicator
|
| [in] | idftnp | indicator
|
| [in] | iswdyp | indicator
|
| [in] | imgrp | indicator
|
| [in] | ncymxp | max. number of multigrid cycles |
| [in] | nitmfp | number of equivalent iterations on fine mesh |
| [in] | ipp | index of the variable for post-processing |
| [in] | iwarnp | verbosity |
| [in] | blencp | fraction of upwinding |
| [in] | epsilp | precision pour resol iter |
| [in] | epsrsp | relative precision for the iterative process |
| [in] | epsrgp | relative precision for the gradient reconstruction |
| [in] | climgp | clipping coeffecient for the computation of the gradient |
| [in] | extrap | coefficient for extrapolation of the gradient |
| [in] | relaxp | coefficient of relaxation |
| [in] | thetap | weightening coefficient for the theta-schema,
|
| [in] | pvara | variable at the previous time step |
| [in] | pvark | variable at the previous sub-iteration . If you sub-iter on Navier-Stokes, then it allows to initialize by something else than pvara (usually pvar=pvara) |
| [in] | coefap | boundary condition array for the variable (Explicit part) |
| [in] | coefbp | boundary condition array for the variable (Impplicit part) |
| [in] | cofafp | boundary condition array for the diffusion of the variable (Explicit part) |
| [in] | cofbfp | boundary condition array for the diffusion of the variable (Implicit part) |
| [in] | flumas | mass flux at interior faces |
| [in] | flumab | mass flux at boundary faces |
| [in] | viscfm | at interior faces for the matrix |
| [in] | viscbm | at border faces for the matrix |
| [in] | visccm | symmetric cell tensor |
| [in] | viscfs | at interior faces for the r.h.s. |
| [in] | viscbs | at border faces for the r.h.s. |
| [in] | visccs | symmetric cell tensor |
| [in] | weighf | internal face weight between cells i j in case of tensor diffusion |
| [in] | weighb | boundary face weight for cells i in case of tensor diffusion |
| [in] | icvflb | global indicator of boundary convection flux
|
| [in] | icvfli | boundary face indicator array of convection flux
|
| [in] | rovsdt | |
| [in] | smbrp | Right hand side |
| [in,out] | pvar | current variable |
| [in,out] | dpvar | last variable increment |
| [in] | xcpp | array of specific heat (Cp) |
| [out] | eswork | prediction-stage error estimator (if iescap > 0) |
1.8.7