1 #ifndef _PFASST_VECTOR_HPP_
2 #define _PFASST_VECTOR_HPP_
26 template<
typename scalar,
typename time = time_precision>
28 :
public vector<scalar>,
68 virtual void zero()
override;
84 bool zero =
true)
override;
95 virtual time
norm0()
const override;
99 MPI_Request recv_request = MPI_REQUEST_NULL;
101 MPI_Request send_request = MPI_REQUEST_NULL;
115 virtual void recv(
ICommunicator* comm,
int tag,
bool blocking)
override;
116 virtual void send(
ICommunicator* comm,
int tag,
bool blocking)
override;
129 template<
typename scalar,
typename time = time_precision>
138 virtual shared_ptr<Encapsulation<time>> create(
const EncapType)
override;
142 template<
typename scalar,
typename time = time_precision>
145 template<
typename scalar,
typename time = time_precision>
static void zero(vector< precision > &data)
const VectorEncapsulation< scalar, time > & as_vector(shared_ptr< const Encapsulation< time >> x)
Abstract interface of factory for creating Encapsulation objects.
Data/solution encapsulation.
Abstract interface for communicators.
Eigen::Matrix< scalar, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > Matrix
static precision norm0(const vector< precision > &data)