ESYS13
Revision_
|
#include "Transport.h"
Go to the source code of this file.
Classes | |
struct | Paso_ReactiveSolver |
Defines | |
#define | PASO_RT_EXP_LIM_MIN sqrt(EPSILON) /* exp(h)-1 ~ h + h**2/2 for abs(h) < PASO_RT_EXP_LIM_MIN */ |
#define | PASO_RT_EXP_LIM_MAX log(1./sqrt(EPSILON)) /* it is assumed that exp(h) with h>PASO_RT_EXP_LIM_MAX is not reliable */ |
Typedefs | |
typedef struct Paso_ReactiveSolver | Paso_ReactiveSolver |
Functions | |
PASO_DLL_API err_t | Paso_ReactiveSolver_solve (Paso_ReactiveSolver *support, Paso_TransportProblem *fctp, double *u, double *u_old, const double *source, Paso_Options *options, Paso_Performance *pp) |
PASO_DLL_API Paso_ReactiveSolver * | Paso_ReactiveSolver_alloc (Paso_TransportProblem *fctp) |
PASO_DLL_API void | Paso_ReactiveSolver_free (Paso_ReactiveSolver *in) |
PASO_DLL_API double | Paso_ReactiveSolver_getSafeTimeStepSize (Paso_TransportProblem *fctp) |
PASO_DLL_API void | Paso_ReactiveSolver_initialize (const double dt, Paso_ReactiveSolver *rsolver, Paso_Options *options) |
#define PASO_RT_EXP_LIM_MAX log(1./sqrt(EPSILON)) /* it is assumed that exp(h) with h>PASO_RT_EXP_LIM_MAX is not reliable */ |
Referenced by Paso_ReactiveSolver_getSafeTimeStepSize(), and Paso_ReactiveSolver_solve().
#define PASO_RT_EXP_LIM_MIN sqrt(EPSILON) /* exp(h)-1 ~ h + h**2/2 for abs(h) < PASO_RT_EXP_LIM_MIN */ |
Referenced by Paso_ReactiveSolver_solve().
typedef struct Paso_ReactiveSolver Paso_ReactiveSolver |
References Esys_checkPtr(), and MEMALLOC.
Referenced by Paso_TransportProblem_solve().
PASO_DLL_API void Paso_ReactiveSolver_free | ( | Paso_ReactiveSolver * | in | ) |
References MEMFREE.
Referenced by Paso_TransportProblem_solve().
PASO_DLL_API double Paso_ReactiveSolver_getSafeTimeStepSize | ( | Paso_TransportProblem * | fctp | ) |
References Esys_MPIInfo::comm, Esys_noError(), LARGE_POSITIVE_FLOAT, Paso_TransportProblem::lumped_mass_matrix, MIN, MPI_DOUBLE, Paso_TransportProblem::mpi_info, PASO_RT_EXP_LIM_MAX, Paso_SystemMatrix_getTotalNumRows(), Paso_TransportProblem::reactive_matrix, and Paso_TransportProblem::transport_matrix.
Referenced by Paso_TransportProblem_getSafeTimeStepSize().
PASO_DLL_API void Paso_ReactiveSolver_initialize | ( | const double | dt, |
Paso_ReactiveSolver * | rsolver, | ||
Paso_Options * | options | ||
) |
References Paso_ReactiveSolver::dt.
Referenced by Paso_TransportProblem_solve().
PASO_DLL_API err_t Paso_ReactiveSolver_solve | ( | Paso_ReactiveSolver * | support, |
Paso_TransportProblem * | fctp, | ||
double * | u, | ||
double * | u_old, | ||
const double * | source, | ||
Paso_Options * | options, | ||
Paso_Performance * | pp | ||
) |
References Esys_MPIInfo::comm, Paso_ReactiveSolver::dt, Paso_TransportProblem::lumped_mass_matrix, Paso_TransportProblem::mpi_info, MPI_INT, PASO_RT_EXP_LIM_MAX, PASO_RT_EXP_LIM_MIN, Paso_SystemMatrix_getTotalNumRows(), Paso_TransportProblem::reactive_matrix, SOLVER_DIVERGENCE, SOLVER_NO_ERROR, and Paso_TransportProblem::transport_matrix.
Referenced by Paso_TransportProblem_solve().