|
PICurv 0.1.0
A Parallel Particle-In-Cell Solver for Curvilinear LES
|
Go to the source code of this file.
Macros | |
| #define | __FUNCT__ "MetricGetCellVertices" |
| #define | __FUNCT__ "TrilinearBlend" |
| #define | __FUNCT__ "MetricLogicalToPhysical" |
| #define | __FUNCT__ "MetricJacobian" |
| #define | __FUNCT__ "MetricVelocityContravariant" |
| #define | __FUNCT__ "InvertCovariantMetricTensor" |
| #define | __FUNCT__ "CalculateFaceNormalAndArea" |
| #define | __FUNCT__ "ComputeCellCharacteristicLengthScale" |
| #define | __FUNCT__ "CheckAndFixGridOrientation" |
| #define | __FUNCT__ "ApplyPeriodicCorrectionsToCellCentersAndSpacing" |
| #define | __FUNCT__ "ApplyPeriodicCorrectionsToIFaceCenter" |
| #define | __FUNCT__ "ApplyPeriodicCorrectionsToJFaceCenter" |
| #define | __FUNCT__ "ApplyPeriodicCorrectionsToKFaceCenter" |
| #define | __FUNCT__ "ComputeFaceMetrics" |
| #define | __FUNCT__ "ComputeCellCenteredJacobianInverse" |
| #define | __FUNCT__ "ComputeCellCentersAndSpacing" |
| #define | __FUNCT__ "ComputeIFaceMetrics" |
| #define | __FUNCT__ "ComputeJFaceMetrics" |
| #define | __FUNCT__ "ComputeJFaceMetrics" |
| #define | __FUNCT__ "ComputeMetricsDivergence" |
| #define | __FUNCT__ "ComputeMetricNorms" |
| #define | __FUNCT__ "ComputeAllGridMetrics" |
Functions | |
| PetscErrorCode | MetricGetCellVertices (UserCtx *user, const Cmpnts ***X, PetscInt i, PetscInt j, PetscInt k, Cmpnts V[8]) |
| Implementation of MetricGetCellVertices(). | |
| static void | TrilinearBlend (const Cmpnts V[8], PetscReal xi, PetscReal eta, PetscReal zta, Cmpnts *Xp) |
Internal helper implementation: TrilinearBlend(). | |
| PetscErrorCode | MetricLogicalToPhysical (UserCtx *user, const Cmpnts ***X, PetscInt i, PetscInt j, PetscInt k, PetscReal xi, PetscReal eta, PetscReal zta, Cmpnts *Xp) |
| Implementation of MetricLogicalToPhysical(). | |
| PetscErrorCode | MetricJacobian (UserCtx *user, const Cmpnts ***X, PetscInt i, PetscInt j, PetscInt k, PetscReal xi, PetscReal eta, PetscReal zta, PetscReal J[3][3], PetscReal *detJ) |
| Implementation of MetricJacobian(). | |
| PetscErrorCode | MetricVelocityContravariant (const PetscReal J[3][3], PetscReal detJ, const PetscReal u[3], PetscReal uc[3]) |
| Implementation of MetricVelocityContravariant(). | |
| PetscErrorCode | InvertCovariantMetricTensor (double covariantTensor[3][3], double contravariantTensor[3][3]) |
Internal helper implementation: InvertCovariantMetricTensor(). | |
| PetscErrorCode | CalculateFaceNormalAndArea (Cmpnts csi, Cmpnts eta, Cmpnts zet, double ni[3], double nj[3], double nk[3], double *Ai, double *Aj, double *Ak) |
Internal helper implementation: CalculateFaceNormalAndArea(). | |
| PetscErrorCode | ComputeCellCharacteristicLengthScale (PetscReal ajc, Cmpnts csi, Cmpnts eta, Cmpnts zet, double *dx, double *dy, double *dz) |
Internal helper implementation: ComputeCellCharacteristicLengthScale(). | |
| PetscErrorCode | CheckAndFixGridOrientation (UserCtx *user) |
Internal helper implementation: CheckAndFixGridOrientation(). | |
| PetscErrorCode | ApplyPeriodicCorrectionsToCellCentersAndSpacing (UserCtx *user) |
Internal helper implementation: ApplyPeriodicCorrectionsToCellCentersAndSpacing(). | |
| PetscErrorCode | ApplyPeriodicCorrectionsToIFaceCenter (UserCtx *user) |
Internal helper implementation: ApplyPeriodicCorrectionsToIFaceCenter(). | |
| PetscErrorCode | ApplyPeriodicCorrectionsToJFaceCenter (UserCtx *user) |
Internal helper implementation: ApplyPeriodicCorrectionsToJFaceCenter(). | |
| PetscErrorCode | ApplyPeriodicCorrectionsToKFaceCenter (UserCtx *user) |
Internal helper implementation: ApplyPeriodicCorrectionsToKFaceCenter(). | |
| PetscErrorCode | ComputeFaceMetrics (UserCtx *user) |
Internal helper implementation: ComputeFaceMetrics(). | |
| PetscErrorCode | ComputeCellCenteredJacobianInverse (UserCtx *user) |
| Implementation of ComputeCellCenteredJacobianInverse(). | |
| PetscErrorCode | ComputeCellCentersAndSpacing (UserCtx *user) |
Internal helper implementation: ComputeCellCentersAndSpacing(). | |
| PetscErrorCode | ComputeIFaceMetrics (UserCtx *user) |
Internal helper implementation: ComputeIFaceMetrics(). | |
| PetscErrorCode | ComputeJFaceMetrics (UserCtx *user) |
Internal helper implementation: ComputeJFaceMetrics(). | |
| PetscErrorCode | ComputeKFaceMetrics (UserCtx *user) |
Internal helper implementation: ComputeKFaceMetrics(). | |
| static PetscInt | Gidx (PetscInt i, PetscInt j, PetscInt k, UserCtx *user) |
Internal helper implementation: Gidx(). | |
| PetscErrorCode | ComputeMetricsDivergence (UserCtx *user) |
Internal helper implementation: ComputeMetricsDivergence(). | |
| PetscErrorCode | ComputeMetricNorms (UserCtx *user) |
Internal helper implementation: ComputeMetricNorms(). | |
| PetscErrorCode | CalculateAllGridMetrics (SimCtx *simCtx) |
Internal helper implementation: CalculateAllGridMetrics(). | |
| #define __FUNCT__ "ApplyPeriodicCorrectionsToCellCentersAndSpacing" |
| PetscErrorCode MetricGetCellVertices | ( | UserCtx * | user, |
| const Cmpnts *** | X, | ||
| PetscInt | i, | ||
| PetscInt | j, | ||
| PetscInt | k, | ||
| Cmpnts | V[8] | ||
| ) |
Implementation of MetricGetCellVertices().
Public interface for MetricGetCellVertices().
Full API contract (arguments, ownership, side effects) is documented with the header declaration in include/Metric.h.
Definition at line 26 of file Metric.c.
|
inlinestatic |
Internal helper implementation: TrilinearBlend().
Local to this translation unit.
Definition at line 51 of file Metric.c.
| PetscErrorCode MetricLogicalToPhysical | ( | UserCtx * | user, |
| const Cmpnts *** | X, | ||
| PetscInt | i, | ||
| PetscInt | j, | ||
| PetscInt | k, | ||
| PetscReal | xi, | ||
| PetscReal | eta, | ||
| PetscReal | zta, | ||
| Cmpnts * | Xp | ||
| ) |
Implementation of MetricLogicalToPhysical().
Public interface for MetricLogicalToPhysical().
Full API contract (arguments, ownership, side effects) is documented with the header declaration in include/Metric.h.
Definition at line 77 of file Metric.c.
| PetscErrorCode MetricJacobian | ( | UserCtx * | user, |
| const Cmpnts *** | X, | ||
| PetscInt | i, | ||
| PetscInt | j, | ||
| PetscInt | k, | ||
| PetscReal | xi, | ||
| PetscReal | eta, | ||
| PetscReal | zta, | ||
| PetscReal | J[3][3], | ||
| PetscReal * | detJ | ||
| ) |
Implementation of MetricJacobian().
Public interface for MetricJacobian().
Full API contract (arguments, ownership, side effects) is documented with the header declaration in include/Metric.h.
Definition at line 106 of file Metric.c.
| PetscErrorCode MetricVelocityContravariant | ( | const PetscReal | J[3][3], |
| PetscReal | detJ, | ||
| const PetscReal | u[3], | ||
| PetscReal | uc[3] | ||
| ) |
Implementation of MetricVelocityContravariant().
Public interface for MetricVelocityContravariant().
Full API contract (arguments, ownership, side effects) is documented with the header declaration in include/Metric.h.
Definition at line 166 of file Metric.c.
| PetscErrorCode InvertCovariantMetricTensor | ( | double | covariantTensor[3][3], |
| double | contravariantTensor[3][3] | ||
| ) |
Internal helper implementation: InvertCovariantMetricTensor().
Inverts the 3x3 covariant metric tensor to obtain the contravariant metric tensor.
Local to this translation unit.
Definition at line 203 of file Metric.c.
| PetscErrorCode CalculateFaceNormalAndArea | ( | Cmpnts | csi, |
| Cmpnts | eta, | ||
| Cmpnts | zet, | ||
| double | ni[3], | ||
| double | nj[3], | ||
| double | nk[3], | ||
| double * | Ai, | ||
| double * | Aj, | ||
| double * | Ak | ||
| ) |
Internal helper implementation: CalculateFaceNormalAndArea().
Computes the unit normal vectors and areas of the three faces of a computational cell.
Local to this translation unit.
Definition at line 237 of file Metric.c.
| PetscErrorCode ComputeCellCharacteristicLengthScale | ( | PetscReal | ajc, |
| Cmpnts | csi, | ||
| Cmpnts | eta, | ||
| Cmpnts | zet, | ||
| double * | dx, | ||
| double * | dy, | ||
| double * | dz | ||
| ) |
Internal helper implementation: ComputeCellCharacteristicLengthScale().
Computes characteristic length scales (dx, dy, dz) for a curvilinear cell.
Local to this translation unit.
Definition at line 283 of file Metric.c.
| PetscErrorCode CheckAndFixGridOrientation | ( | UserCtx * | user | ) |
Internal helper implementation: CheckAndFixGridOrientation().
Ensure a right-handed metric basis (Csi, Eta, Zet) and a positive Jacobian (Aj) over the whole domain.
Local to this translation unit.
Definition at line 314 of file Metric.c.
| PetscErrorCode ApplyPeriodicCorrectionsToCellCentersAndSpacing | ( | UserCtx * | user | ) |
Internal helper implementation: ApplyPeriodicCorrectionsToCellCentersAndSpacing().
Applies periodic boundary corrections to cell centers (Cent) and grid spacing (GridSpace).
Local to this translation unit.
Definition at line 392 of file Metric.c.
| PetscErrorCode ApplyPeriodicCorrectionsToIFaceCenter | ( | UserCtx * | user | ) |
Internal helper implementation: ApplyPeriodicCorrectionsToIFaceCenter().
Applies periodic boundary corrections to i-face centers (Centx).
Local to this translation unit.
Definition at line 591 of file Metric.c.
| PetscErrorCode ApplyPeriodicCorrectionsToJFaceCenter | ( | UserCtx * | user | ) |
Internal helper implementation: ApplyPeriodicCorrectionsToJFaceCenter().
Applies periodic boundary corrections to j-face centers (Centy).
Local to this translation unit.
Definition at line 671 of file Metric.c.
| PetscErrorCode ApplyPeriodicCorrectionsToKFaceCenter | ( | UserCtx * | user | ) |
Internal helper implementation: ApplyPeriodicCorrectionsToKFaceCenter().
Applies periodic boundary corrections to k-face centers (Centz).
Local to this translation unit.
Definition at line 751 of file Metric.c.
| PetscErrorCode ComputeFaceMetrics | ( | UserCtx * | user | ) |
Internal helper implementation: ComputeFaceMetrics().
Computes the primary face metric components (Csi, Eta, Zet), including boundary extrapolation, and stores them in the corresponding global Vec members of the UserCtx structure (user->Csi, user->Eta, user->Zet).
Local to this translation unit.
Definition at line 830 of file Metric.c.
| PetscErrorCode ComputeCellCenteredJacobianInverse | ( | UserCtx * | user | ) |
Implementation of ComputeCellCenteredJacobianInverse().
Calculates the cell-centered inverse Jacobian determinant (1/J) for INTERIOR cells and stores it in user->Aj.
Full API contract (arguments, ownership, side effects) is documented with the header declaration in include/Metric.h.
Definition at line 1042 of file Metric.c.
| PetscErrorCode ComputeCellCentersAndSpacing | ( | UserCtx * | user | ) |
Internal helper implementation: ComputeCellCentersAndSpacing().
Computes the physical location of cell centers and the spacing between them.
Local to this translation unit.
Definition at line 1186 of file Metric.c.
| PetscErrorCode ComputeIFaceMetrics | ( | UserCtx * | user | ) |
Internal helper implementation: ComputeIFaceMetrics().
Computes metrics centered on constant-i faces (i-faces).
Local to this translation unit.
Definition at line 1289 of file Metric.c.
| PetscErrorCode ComputeJFaceMetrics | ( | UserCtx * | user | ) |
Internal helper implementation: ComputeJFaceMetrics().
Computes metrics centered on constant-j faces (j-faces).
Local to this translation unit.
Definition at line 1511 of file Metric.c.
| PetscErrorCode ComputeKFaceMetrics | ( | UserCtx * | user | ) |
Internal helper implementation: ComputeKFaceMetrics().
Computes metrics centered on constant-k faces (k-faces).
Local to this translation unit.
Definition at line 1719 of file Metric.c.
|
static |
Internal helper implementation: Gidx().
Local to this translation unit.
Definition at line 1922 of file Metric.c.
| PetscErrorCode ComputeMetricsDivergence | ( | UserCtx * | user | ) |
Internal helper implementation: ComputeMetricsDivergence().
Performs a diagnostic check on the divergence of the face area metric vectors.
Local to this translation unit.
Definition at line 1944 of file Metric.c.
| PetscErrorCode ComputeMetricNorms | ( | UserCtx * | user | ) |
Internal helper implementation: ComputeMetricNorms().
Computes the max-min values of the grid metrics.
Local to this translation unit.
Definition at line 2036 of file Metric.c.
| PetscErrorCode CalculateAllGridMetrics | ( | SimCtx * | simCtx | ) |
Internal helper implementation: CalculateAllGridMetrics().
Orchestrates the calculation of all grid metrics.
Local to this translation unit.
Definition at line 2168 of file Metric.c.