30 const ext::shared_ptr<FdmMesher>& mesher)
33 for (
const auto& iter : *mesher->layout()) {
34 const Size i = iter.index();
38 const Real zetam1 = hm*(hm+hp);
39 const Real zeta0 = hm*hp;
40 const Real zetap1 = hp*(hm+hp);
48 == mesher->layout()->dim()[direction]-1) {
55 diag_[i] = (hp-hm)/zeta0;
FirstDerivativeOp(Size direction, const ext::shared_ptr< FdmMesher > &mesher)
std::unique_ptr< Real[]> diag_
std::unique_ptr< Real[]> lower_
std::unique_ptr< Real[]> upper_
memory layout of a fdm linear operator
first derivative linear operator
std::size_t Size
size of a container