SERiF 0.0.1a
3+1D Stellar Structure and Evolution
Loading...
Searching...
No Matches
PyCoefficient.h
Go to the documentation of this file.
1
9#pragma once
10#include "mfem.hpp"
11
16namespace serif::pybind {
50 class PyCoefficient final : public mfem::Coefficient {
51 public:
52 using mfem::Coefficient::Coefficient;
53
67 mfem::real_t Eval(mfem::ElementTransformation &T, const mfem::IntegrationPoint &ip) override;
68
81 void SetTime(mfem::real_t t) override;
82 };
83
121 class PyVectorCoefficient final : public mfem::VectorCoefficient {
122 public:
123 using mfem::VectorCoefficient::VectorCoefficient;
124
139 void Eval(mfem::Vector &V, mfem::ElementTransformation &T, const mfem::IntegrationPoint &ip) override;
140
153 void SetTime(mfem::real_t t) override;
154 };
155}
Trampoline class for mfem::Coefficient.
void SetTime(mfem::real_t t) override
Set the current time for time-dependent coefficients.
mfem::real_t Eval(mfem::ElementTransformation &T, const mfem::IntegrationPoint &ip) override
Evaluate the coefficient at a given IntegrationPoint in an ElementTransformation.
Trampoline class for mfem::VectorCoefficient.
void Eval(mfem::Vector &V, mfem::ElementTransformation &T, const mfem::IntegrationPoint &ip) override
Evaluate the vector coefficient at a given IntegrationPoint in an ElementTransformation.
void SetTime(mfem::real_t t) override
Set the current time for time-dependent vector coefficients.
Contains pybind11 helper classes and trampoline classes for interfacing C++ with Python.