branch - parameter-dependent sequence of field (rheolef-7.2)
The branch class stores a field sequence together with its associated parameter
value. A branch variable represents a pair (t,uh(t)) for a specific value of
the parameter t. Applications concern time-dependent problems and continuation
methods. This class is convenient for file inputs/outputs and for building
animations. It extends to multi-field sequences, such as (t,uh(t),ph(t)), up
to an arbitrarily number of fields. See also the
branch(1) unix command
for running animations.
This documentation has been generated from file main/lib/branch.h
The branch class is simply an alias to the
branch_basic class
typedef branch_basic<Float> branch;
The
branch_basic class provides an interface to a n-uplet of fields
together with a parameter value:
template <class T, class M = rheo_default_memory_model>
class branch_basic : public std::vector<std::pair<std::string,field_basic<T,M> > > {
public :
// typedefs:
typedef std::vector<std::pair<std::string,field_basic<T,M> > > base;
typedef typename base::size_type size_type;
// allocators:
branch_basic();
~branch_basic();
branch_basic (const branch_basic<T,M>&);
branch_basic<T,M>& operator= (const branch_basic<T,M>&);
template <typename... Args>
branch_basic(const std::string& parameter, Args... names);
// accessors:
const T& parameter () const;
const std::string& parameter_name () const;
size_type n_value () const;
size_type n_field () const;
// modifiers:
void set_parameter_name (const std::string& name);
void set_parameter (const T& value);
void set_range (const std::pair<T,T>& u_range);
};
template <class T, class M> idiststream& operator>> (idiststream&, branch_basic<T,M>&);
template <class T, class M> odiststream& operator<< (odiststream&, const branch_basic<T,M>&);
Pierre Saramito <
[email protected]>
Copyright (C) 2000-2018 Pierre Saramito <
[email protected]> GPLv3+:
GNU GPL version 3 or later <
http://gnu.org/licenses/gpl.html>. This is
free software: you are free to change and redistribute it. There is NO
WARRANTY, to the extent permitted by law.