numerical-collection-cpp
0.10.0
A collection of algorithms in numerical analysis implemented in C++
Loading...
Searching...
No Matches
evaluation_type.h
Go to the documentation of this file.
1
/*
2
* Copyright 2021 MusicScience37 (Kenta Kabashima)
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
20
#pragma once
21
22
namespace
num_collect::ode
{
23
27
struct
evaluation_type
{
29
bool
diff_coeff
{
false
};
30
32
bool
jacobian
{
false
};
33
35
bool
time_derivative
{
false
};
36
38
bool
mass
{
false
};
39
47
[[nodiscard]]
constexpr
auto
allows
(
evaluation_type
request)
const
->
bool
{
48
return
(this->
diff_coeff
|| !request.diff_coeff) &&
49
(this->
jacobian
|| !request.jacobian) &&
50
(this->
time_derivative
|| !request.time_derivative) &&
51
(this->
mass
|| !request.mass);
52
}
53
};
54
55
}
// namespace num_collect::ode
num_collect::ode
Namespace of solvers of ordinary differential equations (ODE).
Definition
avf2_formula.h:37
num_collect::ode::evaluation_type
Struct to specify types of evaluations.
Definition
evaluation_type.h:27
num_collect::ode::evaluation_type::diff_coeff
bool diff_coeff
Differential coefficient.
Definition
evaluation_type.h:29
num_collect::ode::evaluation_type::time_derivative
bool time_derivative
Partial derivative with respect to time.
Definition
evaluation_type.h:35
num_collect::ode::evaluation_type::allows
constexpr auto allows(evaluation_type request) const -> bool
Check whether this evaluations allows the requested evaluations.
Definition
evaluation_type.h:47
num_collect::ode::evaluation_type::jacobian
bool jacobian
Jacobian.
Definition
evaluation_type.h:32
num_collect::ode::evaluation_type::mass
bool mass
Mass matrix.
Definition
evaluation_type.h:38
include
num_collect
ode
evaluation_type.h
Generated on Sat Jan 18 2025 03:47:32 for numerical-collection-cpp by
1.12.0