WARPXM v1.10.0
Loading...
Searching...
No Matches
circuit_ic.h
Go to the documentation of this file.
1#pragma once
2
3// WARPXM includes
5
6namespace wxm
7{
8namespace apps
9{
10namespace functions
11{
12namespace unique_variable
13{
22{
23public:
29
34 ~CircuitIC() override;
35
40 void setup(const WxCryptSet& wxc) override;
41
47 const std::vector<int>& getOutputVariableIndexes(int flag) const override
48 {
49 return _circuit_idcs;
50 }
51
59 void evaluate_function(const real* q,
60 const real* aux,
61 const solverVariables_t* pSV,
62 real* result) const override;
63
64protected:
65 std::vector<int> _circuit_idcs;
66 // The circuit is solving for q = [Q, Qdot] or q = [I, Idot]
67 std::vector<real> _q;
68
69private:
70 CircuitIC& operator=(const CircuitIC& var);
71 CircuitIC(const CircuitIC& var);
72};
73} // namespace unique_variable
74} // namespace functions
75} // namespace apps
76} // namespace wxm
Base Class for physics applications.
Definition: wmapplication.h:93
WxCryptSet extends WxCrypt by providing, in addition to name-value pairs, an set of named WxCryptSets...
Definition: wxcryptset.h:35
Class to set initial condition of a circuit with 2 variables: [Q0, Qdot0] for a charge solve,...
Definition: circuit_ic.h:22
void evaluate_function(const real *q, const real *aux, const solverVariables_t *pSV, real *result) const override
Redefinition of the function evaluator.
void setup(const WxCryptSet &wxc) override
Setup.
const std::vector< int > & getOutputVariableIndexes(int flag) const override
Grab output variable indices.
Definition: circuit_ic.h:47
std::vector< real > _q
Definition: circuit_ic.h:67
std::vector< int > _circuit_idcs
Definition: circuit_ic.h:65
list apps
Definition: shock_tube.py:33
Base namespace for everything not included in the global namespace.
Definition: field_source.h:8
Definition: wmapplication.h:38
#define real
Definition: wmoclunstructuredreconstruction.h:11