void Process::assemble(const double t, GlobalVector const& x, GlobalMatrix& M, GlobalMatrix& K, GlobalVector& b) { MathLib::LinAlg::setLocalAccessibleVector(x); assembleConcreteProcess(t, x, M, K, b); const auto pcs_id = (_coupled_solutions) != nullptr ? _coupled_solutions->process_id : 0; // the last argument is for the jacobian, nullptr is for a unused jacobian _boundary_conditions[pcs_id].applyNaturalBC(t, x, K, b, nullptr); // the last argument is for the jacobian, nullptr is for a unused jacobian _source_term_collections[pcs_id].integrate(t, x, b, nullptr); }
void Process::assemble(const double t, GlobalVector const& x, GlobalMatrix& M, GlobalMatrix& K, GlobalVector& b) { assembleConcreteProcess(t, x, M, K, b); _boundary_conditions.applyNaturalBC(t, x, K, b); }