escript
Revision_
|
#include <Transport.h>
paso::TransportProblem::TransportProblem | ( | SystemMatrixPattern_ptr | pattern, |
int | block_size | ||
) |
Connector_ptr paso::TransportProblem::borrowConnector | ( | ) | const [inline] |
References transport_matrix.
double* paso::TransportProblem::borrowLumpedMassMatrix | ( | ) | const [inline] |
References lumped_mass_matrix.
index_t* paso::TransportProblem::borrowMainDiagonalPointer | ( | ) | const [inline] |
References mass_matrix.
SystemMatrix_ptr paso::TransportProblem::borrowMassMatrix | ( | ) | const [inline] |
References mass_matrix.
SystemMatrix_ptr paso::TransportProblem::borrowTransportMatrix | ( | ) | const [inline] |
References transport_matrix.
dim_t paso::TransportProblem::getBlockSize | ( | ) | const [inline] |
References transport_matrix.
Referenced by solve().
double paso::TransportProblem::getSafeTimeStepSize | ( | ) |
References Esys_MPIInfo::comm, constraint_mask, dt_max_R, dt_max_T, Esys_noError(), Esys_setError(), lumped_mass_matrix, main_diagonal_mass_matrix, mass_matrix, MAX, MIN, mpi_info, MPI_INT, reactive_matrix, transport_matrix, valid_matrices, and VALUE_ERROR.
Referenced by solve().
dim_t paso::TransportProblem::getTotalNumRows | ( | ) | const [inline] |
References transport_matrix.
static index_t paso::TransportProblem::getTypeId | ( | index_t | solver, |
index_t | preconditioner, | ||
index_t | package, | ||
bool | symmetry, | ||
Esys_MPIInfo * | mpi_info | ||
) | [inline, static] |
References MATRIX_FORMAT_BLK1, and MATRIX_FORMAT_DEFAULT.
Referenced by paso::TransportProblemAdapter::getTransportTypeId().
void paso::TransportProblem::insertConstraint | ( | const double * | r, |
double * | source | ||
) |
References constraint_mask, and transport_matrix.
void paso::TransportProblem::reset | ( | ) |
References constraint_mask, iteration_matrix, mass_matrix, paso::solve_free(), transport_matrix, valid_matrices, and paso::util::zeroes().
void paso::TransportProblem::setUpConstraint | ( | const double * | q | ) |
References constraint_mask, Esys_setError(), transport_matrix, valid_matrices, and VALUE_ERROR.
void paso::TransportProblem::solve | ( | double * | u, |
double | dt, | ||
double * | u0, | ||
double * | q, | ||
Options * | options | ||
) |
References paso::util::copy(), dt_max_R, dt_max_T, EPSILON, Esys_noError(), Esys_setError(), getBlockSize(), getSafeTimeStepSize(), paso::FCT_Solver::initialize(), paso::ReactiveSolver::initialize(), LARGE_POSITIVE_FLOAT, MEMORY_ERROR, MIN, paso::Options::num_iter, paso::Options::ode_solver, PASO_BACKWARD_EULER, PASO_CRANK_NICOLSON, PASO_LINEAR_CRANK_NICOLSON, paso::ReactiveSolver::solve(), SOLVER_BREAKDOWN, SOLVER_DIVERGENCE, SOLVER_INPUT_ERROR, SOLVER_MAXITER_REACHED, SOLVER_MEMORY_ERROR, SOLVER_NEGATIVE_NORM_ERROR, SOLVER_NO_ERROR, SYSTEM_ERROR, paso::Options::time_step_backtracking_used, transport_matrix, paso::FCT_Solver::update(), VALUE_ERROR, and paso::Options::verbose.
Referenced by getSafeTimeStepSize(), insertConstraint(), reset(), setUpConstraint(), TransportProblem(), and ~TransportProblem().
safe time step size for reactive part
Referenced by getSafeTimeStepSize(), and solve().
safe time step size for transport part
Referenced by getSafeTimeStepSize(), and solve().
Referenced by reset().
'relevant' lumped mass matrix is assumed to be positive. Values with corresponding constraint_mask > 0 value are set to -1 to indicate the value infinity
Referenced by borrowLumpedMassMatrix(), getSafeTimeStepSize(), TransportProblem(), and ~TransportProblem().
Referenced by TransportProblem(), and ~TransportProblem().
Referenced by getSafeTimeStepSize(), TransportProblem(), and ~TransportProblem().
Referenced by borrowMainDiagonalPointer(), borrowMassMatrix(), getSafeTimeStepSize(), reset(), and TransportProblem().
Referenced by getSafeTimeStepSize(), TransportProblem(), and ~TransportProblem().
Referenced by getSafeTimeStepSize(), TransportProblem(), and ~TransportProblem().
Referenced by getSafeTimeStepSize(), reset(), and setUpConstraint().