proteus 1.9.0
C/C++/Fortran libraries
Loading...
Searching...
No Matches
NCLS.cpp
Go to the documentation of this file.
1#include "pybind11/pybind11.h"
2#include "pybind11/stl_bind.h"
3
4#define FORCE_IMPORT_ARRAY
5#include "NCLS.h"
6
7#if defined(__GNUC__) && !defined(__clang__)
8 namespace workaround
9 {
10 inline void define_allocators()
11 {
12 std::allocator<int> a0;
13 std::allocator<double> a1;
14 }
15 }
16#endif
17
18namespace py = pybind11;
20
22{
23 xt::import_numpy();
24
25 py::class_<NCLS_base>(m, "cNCLS_base")
26 .def(py::init(&proteus::newNCLS))
27 .def("calculateResidual" , &NCLS_base::calculateResidual )
28 .def("calculateJacobian" , &NCLS_base::calculateJacobian )
29 .def("calculateWaterline" , &NCLS_base::calculateWaterline )
30 .def("calculateRedistancingResidual" , &NCLS_base::calculateRedistancingResidual )
31 .def("calculateRhsSmoothing" , &NCLS_base::calculateRhsSmoothing )
32 .def("calculateResidual_entropy_viscosity" , &NCLS_base::calculateResidual_entropy_viscosity )
33 .def("calculateMassMatrix" , &NCLS_base::calculateMassMatrix )
34 .def("calculateSmoothingMatrix" , &NCLS_base::calculateSmoothingMatrix );
35}
PYBIND11_MODULE(cADR, m)
Definition ADR.cpp:21
virtual void calculateMassMatrix(arguments_dict &args)=0
virtual void calculateResidual(arguments_dict &args)=0
virtual double calculateRedistancingResidual(arguments_dict &args)=0
virtual void calculateWaterline(arguments_dict &args)=0
virtual void calculateResidual_entropy_viscosity(arguments_dict &args)=0
virtual double calculateRhsSmoothing(arguments_dict &args)=0
virtual void calculateJacobian(arguments_dict &args)=0
virtual void calculateSmoothingMatrix(arguments_dict &args)=0
NCLS_base * newNCLS(int nSpaceIn, int nQuadraturePoints_elementIn, int nDOF_mesh_trial_elementIn, int nDOF_trial_elementIn, int nDOF_test_elementIn, int nQuadraturePoints_elementBoundaryIn, int CompKernelFlag)
Definition NCLS.h:2698