proteus
1.8.1
C/C++/Fortran libraries
|
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <strings.h>
#include <assert.h>
#include "timeIntegration.h"
Go to the source code of this file.
Functions | |
void | psiTCtteDT (int nPoints, double tau, double dtn, double dtnm1, double *yn, double *ypn, double *ypnm1, double *dtnp1) |
double | msign (double a) |
double | minmod2 (double a, double b) |
double | musclmod (double dU, double dU1, double dU2) |
double | minmod3 (double dU, double dU1, double dU2) |
double | mminmod2 (double dU, double dU1, double M, int *tag) |
int | invertLocal3d (double A[3][3], double AI[3][3]) |
void | computeLocalGradient1d (double *x0, double *x1, double *dN0, double *dN1, double u0, double u1, double *dU) |
void | computeLocalGradient2d (double *x0, double *x1, double *x2, double *dN0, double *dN1, double *dN2, double u0, double u1, double u2, double *dU) |
void | computeLocalGradient3d (double *x0, double *x1, double *x2, double *x3, double *dN0, double *dN1, double *dN2, double *dN3, double u0, double u1, double u2, double u3, double *dU) |
void | applyDGlimitingP1Lagrange1d (int limiterFlag, int nElements_global, int nNodes_element, int nElementBoundaries_element, int nDOF_element, int *elementNodesArray, int *elementNeighborsArray, double *nodeArray, double *elementBarycentersArray, int *l2g, int *tag, double *Uin, double *Uout) |
void | applyDGlimitingP1Lagrange1d_withVacuumTol (int enforcePositivity, double vacuumTol, int nElements_global, int nNodes_element, int nElementBoundaries_element, int nDOF_element, int *elementNodesArray, int *elementNeighborsArray, double *nodeArray, double *elementBarycentersArray, int *l2g, int *tag, double *Uin, double *Uout) |
void | computeElementNeighborShapeGradients (int nElements_global, int nElementBoundaries_element, int nSpace, const int *elementBoundariesArray, const int *elementNeighborsArray, double *elementBarycentersArray, double *elementBoundaryBarycentersArray, double *elementNeighborShapeGradients) |
void | computeCockburnDGlimiterArrays2d (int nElements_global, int nElementBoundaries_element, int nSpace, const int *elementBoundariesArray, const int *elementNeighborsArray, const double *elementBarycentersArray, const double *elementBoundaryBarycentersArray, const double *elementNeighborShapeGradients, double *alphas, int *alphaNeighbors) |
void | applyCockburnDGlimiterP1Lagrange2d (double nu, double Mh2, int nElements_global, int nElementBoundaries_element, int nSpace, int nDOF_element, int *elementNeighborsArray, int *l2g, int *tag, double *alphas, int *alphaNeighbors, double *Uin, double *Uout) |
void | computeElementAveragesP1Lagrange (int nElements_global, int nDOF_element, const int *l2g, const double *Uin, double *elementAverages) |
void | shortSortDescending (double *A, int *order, int len) |
void | applyDurlofskyDGlimiterP1Lagrange2d (int killExtrema, int allowMinWithUndershoot, int nElements_global, int nElementBoundaries_element, int nNodes_element, int nSpace, int nDOF_element, const int *elementNeighborsArray, const int *elementBoundariesArray, const int *elementNodesArray, const double *nodeArray, const double *elementBarycentersArray, const double *elementBoundaryBarycentersArray, const double *elementNeighborShapeGradients, const int *l2g, const double *grad_v0, double *elementAverages, int *tag, double *Uin, double *Uout) |
void | applyDurlofskyDGlimiterP1Lagrange3d (int killExtrema, int allowMinWithUndershoot, int nElements_global, int nElementBoundaries_element, int nNodes_element, int nSpace, int nDOF_element, const int *elementNeighborsArray, const int *elementBoundariesArray, const int *elementNodesArray, const double *nodeArray, const double *elementBarycentersArray, const double *elementBoundaryBarycentersArray, const double *elementNeighborShapeGradients, const int *l2g, const double *grad_v0, double *elementAverages, int *tag, double *Uin, double *Uout) |
void | applyDurlofskyDGlimiterP1Lagrange2d_withVacuumTol (int killExtrema, int allowMinWithUndershoot, int enforcePositivity, double vacuumTol, int nElements_global, int nElementBoundaries_element, int nNodes_element, int nSpace, int nDOF_element, const int *elementNeighborsArray, const int *elementBoundariesArray, const int *elementNodesArray, const double *nodeArray, const double *elementBarycentersArray, const double *elementBoundaryBarycentersArray, const double *elementNeighborShapeGradients, const int *l2g, const double *grad_v0, double *elementAverages, int *tag, double *Uin, double *Uout) |
void applyCockburnDGlimiterP1Lagrange2d | ( | double | nu, |
double | Mh2, | ||
int | nElements_global, | ||
int | nElementBoundaries_element, | ||
int | nSpace, | ||
int | nDOF_element, | ||
int * | elementNeighborsArray, | ||
int * | l2g, | ||
int * | tag, | ||
double * | alphas, | ||
int * | alphaNeighbors, | ||
double * | Uin, | ||
double * | Uout | ||
) |
Definition at line 736 of file timeIntegration.c.
void applyDGlimitingP1Lagrange1d | ( | int | limiterFlag, |
int | nElements_global, | ||
int | nNodes_element, | ||
int | nElementBoundaries_element, | ||
int | nDOF_element, | ||
int * | elementNodesArray, | ||
int * | elementNeighborsArray, | ||
double * | nodeArray, | ||
double * | elementBarycentersArray, | ||
int * | l2g, | ||
int * | tag, | ||
double * | Uin, | ||
double * | Uout | ||
) |
Definition at line 214 of file timeIntegration.c.
void applyDGlimitingP1Lagrange1d_withVacuumTol | ( | int | enforcePositivity, |
double | vacuumTol, | ||
int | nElements_global, | ||
int | nNodes_element, | ||
int | nElementBoundaries_element, | ||
int | nDOF_element, | ||
int * | elementNodesArray, | ||
int * | elementNeighborsArray, | ||
double * | nodeArray, | ||
double * | elementBarycentersArray, | ||
int * | l2g, | ||
int * | tag, | ||
double * | Uin, | ||
double * | Uout | ||
) |
Definition at line 310 of file timeIntegration.c.
void applyDurlofskyDGlimiterP1Lagrange2d | ( | int | killExtrema, |
int | allowMinWithUndershoot, | ||
int | nElements_global, | ||
int | nElementBoundaries_element, | ||
int | nNodes_element, | ||
int | nSpace, | ||
int | nDOF_element, | ||
const int * | elementNeighborsArray, | ||
const int * | elementBoundariesArray, | ||
const int * | elementNodesArray, | ||
const double * | nodeArray, | ||
const double * | elementBarycentersArray, | ||
const double * | elementBoundaryBarycentersArray, | ||
const double * | elementNeighborShapeGradients, | ||
const int * | l2g, | ||
const double * | grad_v0, | ||
double * | elementAverages, | ||
int * | tag, | ||
double * | Uin, | ||
double * | Uout | ||
) |
Definition at line 879 of file timeIntegration.c.
void applyDurlofskyDGlimiterP1Lagrange2d_withVacuumTol | ( | int | killExtrema, |
int | allowMinWithUndershoot, | ||
int | enforcePositivity, | ||
double | vacuumTol, | ||
int | nElements_global, | ||
int | nElementBoundaries_element, | ||
int | nNodes_element, | ||
int | nSpace, | ||
int | nDOF_element, | ||
const int * | elementNeighborsArray, | ||
const int * | elementBoundariesArray, | ||
const int * | elementNodesArray, | ||
const double * | nodeArray, | ||
const double * | elementBarycentersArray, | ||
const double * | elementBoundaryBarycentersArray, | ||
const double * | elementNeighborShapeGradients, | ||
const int * | l2g, | ||
const double * | grad_v0, | ||
double * | elementAverages, | ||
int * | tag, | ||
double * | Uin, | ||
double * | Uout | ||
) |
Definition at line 1397 of file timeIntegration.c.
void applyDurlofskyDGlimiterP1Lagrange3d | ( | int | killExtrema, |
int | allowMinWithUndershoot, | ||
int | nElements_global, | ||
int | nElementBoundaries_element, | ||
int | nNodes_element, | ||
int | nSpace, | ||
int | nDOF_element, | ||
const int * | elementNeighborsArray, | ||
const int * | elementBoundariesArray, | ||
const int * | elementNodesArray, | ||
const double * | nodeArray, | ||
const double * | elementBarycentersArray, | ||
const double * | elementBoundaryBarycentersArray, | ||
const double * | elementNeighborShapeGradients, | ||
const int * | l2g, | ||
const double * | grad_v0, | ||
double * | elementAverages, | ||
int * | tag, | ||
double * | Uin, | ||
double * | Uout | ||
) |
Definition at line 1107 of file timeIntegration.c.
void computeCockburnDGlimiterArrays2d | ( | int | nElements_global, |
int | nElementBoundaries_element, | ||
int | nSpace, | ||
const int * | elementBoundariesArray, | ||
const int * | elementNeighborsArray, | ||
const double * | elementBarycentersArray, | ||
const double * | elementBoundaryBarycentersArray, | ||
const double * | elementNeighborShapeGradients, | ||
double * | alphas, | ||
int * | alphaNeighbors | ||
) |
Definition at line 649 of file timeIntegration.c.
void computeElementAveragesP1Lagrange | ( | int | nElements_global, |
int | nDOF_element, | ||
const int * | l2g, | ||
const double * | Uin, | ||
double * | elementAverages | ||
) |
Definition at line 839 of file timeIntegration.c.
void computeElementNeighborShapeGradients | ( | int | nElements_global, |
int | nElementBoundaries_element, | ||
int | nSpace, | ||
const int * | elementBoundariesArray, | ||
const int * | elementNeighborsArray, | ||
double * | elementBarycentersArray, | ||
double * | elementBoundaryBarycentersArray, | ||
double * | elementNeighborShapeGradients | ||
) |
Definition at line 409 of file timeIntegration.c.
void computeLocalGradient1d | ( | double * | x0, |
double * | x1, | ||
double * | dN0, | ||
double * | dN1, | ||
double | u0, | ||
double | u1, | ||
double * | dU | ||
) |
Definition at line 118 of file timeIntegration.c.
void computeLocalGradient2d | ( | double * | x0, |
double * | x1, | ||
double * | x2, | ||
double * | dN0, | ||
double * | dN1, | ||
double * | dN2, | ||
double | u0, | ||
double | u1, | ||
double | u2, | ||
double * | dU | ||
) |
Definition at line 128 of file timeIntegration.c.
void computeLocalGradient3d | ( | double * | x0, |
double * | x1, | ||
double * | x2, | ||
double * | x3, | ||
double * | dN0, | ||
double * | dN1, | ||
double * | dN2, | ||
double * | dN3, | ||
double | u0, | ||
double | u1, | ||
double | u2, | ||
double | u3, | ||
double * | dU | ||
) |
Definition at line 164 of file timeIntegration.c.
int invertLocal3d | ( | double | A[3][3], |
double | AI[3][3] | ||
) |
Definition at line 80 of file timeIntegration.c.
double minmod2 | ( | double | a, |
double | b | ||
) |
Definition at line 53 of file timeIntegration.c.
double minmod3 | ( | double | dU, |
double | dU1, | ||
double | dU2 | ||
) |
Definition at line 64 of file timeIntegration.c.
double mminmod2 | ( | double | dU, |
double | dU1, | ||
double | M, | ||
int * | tag | ||
) |
Definition at line 69 of file timeIntegration.c.
double msign | ( | double | a | ) |
Definition at line 49 of file timeIntegration.c.
double musclmod | ( | double | dU, |
double | dU1, | ||
double | dU2 | ||
) |
Definition at line 59 of file timeIntegration.c.
void psiTCtteDT | ( | int | nPoints, |
double | tau, | ||
double | dtn, | ||
double | dtnm1, | ||
double * | yn, | ||
double * | ypn, | ||
double * | ypnm1, | ||
double * | dtnp1 | ||
) |
Definition at line 12 of file timeIntegration.c.
void shortSortDescending | ( | double * | A, |
int * | order, | ||
int | len | ||
) |
Definition at line 862 of file timeIntegration.c.