Go to the documentation of this file.
21 #include "libmesh/parameter_pointer.h"
22 #include "libmesh/parameter_vector.h"
28 : _is_shallow_copy(false)
40 const std::size_t Np = this->
_params.size();
44 for (std::size_t i=0; i != Np; ++i)
65 const std::size_t Np = this->
_params.size();
66 libmesh_assert_equal_to (target.
_params.size(), Np);
68 for (std::size_t i=0; i != Np; ++i)
69 *target[i] = *(*
this)[i];
78 const std::size_t old_size = this->
_params.size();
83 for (std::size_t i=s; i < old_size; ++i)
88 for (std::size_t i=old_size; i < s; ++i)
101 for (std::size_t i=0; i != s; ++i)
110 const std::size_t Np = this->
_params.size();
111 for (std::size_t i=0; i != Np; ++i)
120 const std::size_t Np = this->
_params.size();
121 libmesh_assert_equal_to (a.
_params.size(), Np);
122 for (std::size_t i=0; i != Np; ++i)
123 *(*
this)[i] += *a[i];
ParameterVector & operator+=(const ParameterVector &a)
Addition operator.
ParameterVector()
Default constructor: "no parameters".
The libMesh namespace provides an interface to certain functionality in the library.
std::vector< Number > _my_data
Parameters which I own; e.g.
void value_copy(ParameterVector &target) const
Value copy method: the target, which should already have as many parameters as I do,...
void deep_resize(std::size_t s)
Sets the number of parameters to be used.
std::vector< ParameterAccessor< Number > * > _params
Pointers to parameters which may exist elsewhere.
void resize(std::size_t s)
Sets the number of parameters to be used.
Data structure for specifying which Parameters should be independent variables in a parameter sensiti...
void shallow_copy(ParameterVector &target) const
Shallow copy constructor: the target will now point to all the parameter values I'm pointing to.
void clear()
Resets to "no parameters".
void deep_copy(ParameterVector &target) const
Deep copy constructor: the target will now own new copies of all the parameter values I'm pointing to...
bool _is_shallow_copy
Am I a shallow copy? If so then I shouldn't be deleting my ParameterAccessors.
ParameterVector & operator*=(const Number a)
Multiplication operator; acts individually on each parameter.
Accessor object allowing reading and modification of the independent variables in a parameter sensiti...