BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
cl_ODE.hpp
Go to the documentation of this file.
1/*
2 * BELFEM -- The Berkeley Lab Finite Element Framework
3 * Copyright (c) 2026, The Regents of the University of California,
4 * through Lawrence Berkeley National Laboratory (subject to receipt of any required
5 * approvals from the U.S. Dept. of Energy). All rights reserved.
6 *
7 * Developers: Christian Messe, Gregory Giard
8 *
9 * See the top-level LICENSE file for the complete license and disclaimer.
10 */
11
12#ifndef BELFEM_CL_ODE_HPP
13#define BELFEM_CL_ODE_HPP
14
15#include "typedefs.hpp"
16#include "cl_Vector.hpp"
17#include "en_ODE_Status.hpp"
18namespace belfem
19{
20 namespace ode
21 {
22//------------------------------------------------------------------------------
23
27 class ODE
28 {
29 const uint mDimension;
30
31//------------------------------------------------------------------------------
32 public:
33//------------------------------------------------------------------------------
34
35 ODE( const uint aDimension ) :
36 mDimension( aDimension )
37 {};
38
39//------------------------------------------------------------------------------
40
41 virtual ~ODE() = default;
42
43//------------------------------------------------------------------------------
44
45 virtual void
47 const real & aT,
48 const Vector< real > & aY,
49 Vector< real > & adYdT ) = 0;
50
51//------------------------------------------------------------------------------
52
56 inline uint
57 dimension() const
58 {
59 return mDimension;
60 }
61
62
63//------------------------------------------------------------------------------
64
65 virtual real
67 const real & aT,
68 const Vector< real > & aY )
69 {
70 return 0.0 ;
71 }
72
73 };
74 }
75}
76#endif //BELFEM_CL_ODE_HPP
virtual real check_events(const real &aT, const Vector< real > &aY)
Definition cl_ODE.hpp:66
uint dimension() const
return the number of dimensions of this vector
Definition cl_ODE.hpp:57
ODE(const uint aDimension)
Definition cl_ODE.hpp:35
virtual void compute(const real &aT, const Vector< real > &aY, Vector< real > &adYdT)=0
virtual ~ODE()=default
Definition cl_BDF.cpp:21
USER GUIDES:
Definition cl_Capacitor.cpp:16
unsigned int uint
Definition typedefs.hpp:30
double real
Definition typedefs.hpp:36