MD_Vector_composite#

#include <MD_Vector_composite.h>

Metadata for a distributed composite vector.

How to cite this class in this doc#

:ref:`MD\_Vector\_composite <class-md-vector-composite>`
[MD\_Vector\_composite](#class-md-vector-composite)

Detailed description#

This class describes a vector that contains one or more sub - vectors (see P1bubble arrays), each sub - vector has the same shape as the base vector, plus one dimension if shapes_[i]> 0 See also class DoubleTab_Parts and class ConstDoubleTab_Parts MD_Vector_composite can be nested (for example when using the U_P solver, where velocity and pressure are gathered in a single vector, and pressure itself has different support entities). The overall parallel information is aggregated in the member global_md_ which contains the overall equivalent of all the parts.

Inherits from#

List of Public Methods#

List of Public Static Methods#

List of Protected Methods#

List of Private Methods#

Complete Member Function Documentation#

add_part
void MD_Vector_composite::add_part(const MD_Vector &part, int shape=0, Nom name="")

Append the “part” descriptor to the composite vector.

By default, shape = 0 says that for each item in “part”, one item will be appended to the composite descriptor. If shape = n, each items in “part” will be duplicated n times in the composite descriptor. The difference between 0 and 1 is when we create parts with DoubleTab_parts (see class DoubleTab_parts) Exemples: 1) P1Bubble pressure fields have one, two or three parts with shape = 1. (see Domaine_VEF::discretiser_suite() ) 2) One can create a composite field containing

References
Referenced By
How to cite in this doc:
:ref:`void MD_Vector_composite::add_part(const MD_Vector &part, int shape=0, Nom name="") <public-void-md-vector-composite-add-part-const-md-vector-ref-part-int-shape-equal-0-nom-name-equal-"">`
[void MD_Vector_composite::add_part(const MD_Vector &part, int shape=0, Nom name="")](#public-void-md-vector-composite-add-part-const-md-vector-ref-part-int-shape-equal-0-nom-name-equal-"")
duplique
int MD_Vector_composite::duplique() const override

Reimplements:

How to cite in this doc:
:ref:`int MD_Vector_composite::duplique() const override <public-int-md-vector-composite-duplique-const-override>`
[int MD_Vector_composite::duplique() const override](#public-int-md-vector-composite-duplique-const-override)
get_desc_part
const MD_Vector & MD_Vector_composite::get_desc_part(int i) const
References
Referenced By
How to cite in this doc:
:ref:`const MD_Vector & MD_Vector_composite::get_desc_part(int i) const <public-const-md-vector-ref-md-vector-composite-get-desc-part-int-i-const>`
[const MD_Vector & MD_Vector_composite::get_desc_part(int i) const](#public-const-md-vector-ref-md-vector-composite-get-desc-part-int-i-const)
get_info
const Type_info * MD_Vector_composite::get_info() const override

Donne des informations sur le type de l’ Objet_U .

Reimplements:

How to cite in this doc:
:ref:`const Type_info * MD_Vector_composite::get_info() const override <public-const-type-info-ptr-md-vector-composite-get-info-const-override>`
[const Type_info * MD_Vector_composite::get_info() const override](#public-const-type-info-ptr-md-vector-composite-get-info-const-override)
get_items_to_compute
const ArrOfInt & MD_Vector_composite::get_items_to_compute() const override

Reimplements:

References
How to cite in this doc:
:ref:`const ArrOfInt & MD_Vector_composite::get_items_to_compute() const override <public-const-arrofint-ref-md-vector-composite-get-items-to-compute-const-override>`
[const ArrOfInt & MD_Vector_composite::get_items_to_compute() const override](#public-const-arrofint-ref-md-vector-composite-get-items-to-compute-const-override)
get_items_to_sum
const ArrOfInt & MD_Vector_composite::get_items_to_sum() const override

Reimplements:

References
How to cite in this doc:
:ref:`const ArrOfInt & MD_Vector_composite::get_items_to_sum() const override <public-const-arrofint-ref-md-vector-composite-get-items-to-sum-const-override>`
[const ArrOfInt & MD_Vector_composite::get_items_to_sum() const override](#public-const-arrofint-ref-md-vector-composite-get-items-to-sum-const-override)
get_name
Nom MD_Vector_composite::get_name(int i) const
References
How to cite in this doc:
:ref:`Nom MD_Vector_composite::get_name(int i) const <public-nom-md-vector-composite-get-name-int-i-const>`
[Nom MD_Vector_composite::get_name(int i) const](#public-nom-md-vector-composite-get-name-int-i-const)
get_part_offset
int MD_Vector_composite::get_part_offset(int i) const
References
How to cite in this doc:
:ref:`int MD_Vector_composite::get_part_offset(int i) const <public-int-md-vector-composite-get-part-offset-int-i-const>`
[int MD_Vector_composite::get_part_offset(int i) const](#public-int-md-vector-composite-get-part-offset-int-i-const)
get_shape
int MD_Vector_composite::get_shape(int i) const
References
How to cite in this doc:
:ref:`int MD_Vector_composite::get_shape(int i) const <public-int-md-vector-composite-get-shape-int-i-const>`
[int MD_Vector_composite::get_shape(int i) const](#public-int-md-vector-composite-get-shape-int-i-const)
global_md
const MD_Vector_mono & MD_Vector_composite::global_md() const
References
How to cite in this doc:
:ref:`const MD_Vector_mono & MD_Vector_composite::global_md() const <public-const-md-vector-mono-ref-md-vector-composite-global-md-const>`
[const MD_Vector_mono & MD_Vector_composite::global_md() const](#public-const-md-vector-mono-ref-md-vector-composite-global-md-const)
initialize_comm
void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override <public-void-md-vector-composite-initialize-comm-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-doublevect-ref-v-const-override>`
[void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override](#public-void-md-vector-composite-initialize-comm-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-doublevect-ref-v-const-override)
initialize_comm
void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override <public-void-md-vector-composite-initialize-comm-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-floatvect-ref-v-const-override>`
[void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override](#public-void-md-vector-composite-initialize-comm-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-floatvect-ref-v-const-override)
initialize_comm
void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override <public-void-md-vector-composite-initialize-comm-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-intvect-ref-v-const-override>`
[void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override](#public-void-md-vector-composite-initialize-comm-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-intvect-ref-v-const-override)
initialize_comm
void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override <public-void-md-vector-composite-initialize-comm-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-tidvect-ref-v-const-override>`
[void MD_Vector_composite::initialize_comm(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override](#public-void-md-vector-composite-initialize-comm-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-tidvect-ref-v-const-override)
lire_motcle_non_standard
int MD_Vector_composite::lire_motcle_non_standard(const Motcle &mot, Entree &is) override

Lecture des parametres de type non simple d’un objet_U a partir d’un flot d’entree.

Reimplements:

References
How to cite in this doc:
:ref:`int MD_Vector_composite::lire_motcle_non_standard(const Motcle &mot, Entree &is) override <public-int-md-vector-composite-lire-motcle-non-standard-const-motcle-ref-mot-entree-ref-is-override>`
[int MD_Vector_composite::lire_motcle_non_standard(const Motcle &mot, Entree &is) override](#public-int-md-vector-composite-lire-motcle-non-standard-const-motcle-ref-mot-entree-ref-is-override)
MD_Vector_composite
MD_Vector_composite::MD_Vector_composite()
How to cite in this doc:
:ref:`MD_Vector_composite::MD_Vector_composite() <public-md-vector-composite-md-vector-composite>`
[MD_Vector_composite::MD_Vector_composite()](#public-md-vector-composite-md-vector-composite)
nb_parts
int MD_Vector_composite::nb_parts() const
References
How to cite in this doc:
:ref:`int MD_Vector_composite::nb_parts() const <public-int-md-vector-composite-nb-parts-const>`
[int MD_Vector_composite::nb_parts() const](#public-int-md-vector-composite-nb-parts-const)
prepare_send_data
void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override <public-void-md-vector-composite-prepare-send-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-doublevect-ref-v-const-override>`
[void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override](#public-void-md-vector-composite-prepare-send-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-doublevect-ref-v-const-override)
prepare_send_data
void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override <public-void-md-vector-composite-prepare-send-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-floatvect-ref-v-const-override>`
[void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override](#public-void-md-vector-composite-prepare-send-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-floatvect-ref-v-const-override)
prepare_send_data
void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override <public-void-md-vector-composite-prepare-send-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-intvect-ref-v-const-override>`
[void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override](#public-void-md-vector-composite-prepare-send-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-intvect-ref-v-const-override)
prepare_send_data
void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override <public-void-md-vector-composite-prepare-send-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-tidvect-ref-v-const-override>`
[void MD_Vector_composite::prepare_send_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override](#public-void-md-vector-composite-prepare-send-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-tidvect-ref-v-const-override)
process_recv_data
void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override <public-void-md-vector-composite-process-recv-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-doublevect-ref-v-const-override>`
[void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, DoubleVect &v) const override](#public-void-md-vector-composite-process-recv-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-doublevect-ref-v-const-override)
process_recv_data
void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override <public-void-md-vector-composite-process-recv-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-floatvect-ref-v-const-override>`
[void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, FloatVect &v) const override](#public-void-md-vector-composite-process-recv-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-floatvect-ref-v-const-override)
process_recv_data
void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override <public-void-md-vector-composite-process-recv-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-intvect-ref-v-const-override>`
[void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, IntVect &v) const override](#public-void-md-vector-composite-process-recv-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-intvect-ref-v-const-override)
process_recv_data
void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override <public-void-md-vector-composite-process-recv-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-tidvect-ref-v-const-override>`
[void MD_Vector_composite::process_recv_data(const Echange_EV_Options &opt, Schema_Comm_Vecteurs &c, TIDVect &v) const override](#public-void-md-vector-composite-process-recv-data-const-echange-ev-options-ref-opt-schema-comm-vecteurs-ref-c-tidvect-ref-v-const-override)
taille_memoire
unsigned MD_Vector_composite::taille_memoire() const override

Reimplements:

How to cite in this doc:
:ref:`unsigned MD_Vector_composite::taille_memoire() const override <public-unsigned-md-vector-composite-taille-memoire-const-override>`
[unsigned MD_Vector_composite::taille_memoire() const override](#public-unsigned-md-vector-composite-taille-memoire-const-override)
use_blocks
bool MD_Vector_composite::use_blocks() const override

Whether algorithms in TRUSTVect_tools should use the blocks stored in members MD_Vector_mono::blocs_items_to_*

Reimplements:

How to cite in this doc:
:ref:`bool MD_Vector_composite::use_blocks() const override <public-bool-md-vector-composite-use-blocks-const-override>`
[bool MD_Vector_composite::use_blocks() const override](#public-bool-md-vector-composite-use-blocks-const-override)
~MD_Vector_composite
MD_Vector_composite::~MD_Vector_composite()
How to cite in this doc:
:ref:`MD_Vector_composite::~MD_Vector_composite() <public-md-vector-composite-dtor-md-vector-composite>`
[MD_Vector_composite::~MD_Vector_composite()](#public-md-vector-composite-dtor-md-vector-composite)
cree_instance
Objet_U * MD_Vector_composite::cree_instance()
How to cite in this doc:
:ref:`Objet_U * MD_Vector_composite::cree_instance() <public-static-objet-u-ptr-md-vector-composite-cree-instance>`
[Objet_U * MD_Vector_composite::cree_instance()](#public-static-objet-u-ptr-md-vector-composite-cree-instance)
info
const Type_info * MD_Vector_composite::info()
How to cite in this doc:
:ref:`const Type_info * MD_Vector_composite::info() <public-static-const-type-info-ptr-md-vector-composite-info>`
[const Type_info * MD_Vector_composite::info()](#public-static-const-type-info-ptr-md-vector-composite-info)
self_cast
const MD_Vector_composite & MD_Vector_composite::self_cast(const Objet_U &)
How to cite in this doc:
:ref:`const MD_Vector_composite & MD_Vector_composite::self_cast(const Objet_U &) <public-static-const-md-vector-composite-ref-md-vector-composite-self-cast-const-objet-u-ref>`
[const MD_Vector_composite & MD_Vector_composite::self_cast(const Objet_U &)](#public-static-const-md-vector-composite-ref-md-vector-composite-self-cast-const-objet-u-ref)
self_cast
MD_Vector_composite & MD_Vector_composite::self_cast(Objet_U &)
How to cite in this doc:
:ref:`MD_Vector_composite & MD_Vector_composite::self_cast(Objet_U &) <public-static-md-vector-composite-ref-md-vector-composite-self-cast-objet-u-ref>`
[MD_Vector_composite & MD_Vector_composite::self_cast(Objet_U &)](#public-static-md-vector-composite-ref-md-vector-composite-self-cast-objet-u-ref)
fill_md_vect_renum
void MD_Vector_composite::fill_md_vect_renum(const IntVect &renum, MD_Vector &md_vect) const override

Reimplements:

References
How to cite in this doc:
:ref:`void MD_Vector_composite::fill_md_vect_renum(const IntVect &renum, MD_Vector &md_vect) const override <protected-void-md-vector-composite-fill-md-vect-renum-const-intvect-ref-renum-md-vector-ref-md-vect-const-override>`
[void MD_Vector_composite::fill_md_vect_renum(const IntVect &renum, MD_Vector &md_vect) const override](#protected-void-md-vector-composite-fill-md-vect-renum-const-intvect-ref-renum-md-vector-ref-md-vect-const-override)
get_seq_flags_impl
int MD_Vector_composite::get_seq_flags_impl(ArrOfBit &flags, int line_size) const override

Override, to avoid using the standard implementation of the method that scans the blocks ‘bloc_items_to_sum_’ in case of a sequential situation.

Reimplements:

References
How to cite in this doc:
:ref:`int MD_Vector_composite::get_seq_flags_impl(ArrOfBit &flags, int line_size) const override <protected-int-md-vector-composite-get-seq-flags-impl-arrofbit-ref-flags-int-line-size-const-override>`
[int MD_Vector_composite::get_seq_flags_impl(ArrOfBit &flags, int line_size) const override](#protected-int-md-vector-composite-get-seq-flags-impl-arrofbit-ref-flags-int-line-size-const-override)
printOn
Sortie & MD_Vector_composite::printOn(Sortie &x) const override

method used to dump/restore a descriptor in a file Each process writes a different descriptor.

See MD_Vector_tools::dump_vector_with_md()

Reimplements:

References
How to cite in this doc:
:ref:`Sortie & MD_Vector_composite::printOn(Sortie &x) const override <protected-sortie-ref-md-vector-composite-printon-sortie-ref-x-const-override>`
[Sortie & MD_Vector_composite::printOn(Sortie &x) const override](#protected-sortie-ref-md-vector-composite-printon-sortie-ref-x-const-override)
readOn
Entree & MD_Vector_composite::readOn(Entree &) override

method used to dump/restore a descriptor in a file Each process writes a different descriptor.

See MD_Vector_tools::restore_vector_with_md()

Reimplements:

References
How to cite in this doc:
:ref:`Entree & MD_Vector_composite::readOn(Entree &) override <protected-entree-ref-md-vector-composite-readon-entree-ref-override>`
[Entree & MD_Vector_composite::readOn(Entree &) override](#protected-entree-ref-md-vector-composite-readon-entree-ref-override)
instanciate_seq
void MD_Vector_composite::instanciate_seq()
How to cite in this doc:
:ref:`void MD_Vector_composite::instanciate_seq() <private-void-md-vector-composite-instanciate-seq>`
[void MD_Vector_composite::instanciate_seq()](#private-void-md-vector-composite-instanciate-seq)
instanciate_std
void MD_Vector_composite::instanciate_std()
How to cite in this doc:
:ref:`void MD_Vector_composite::instanciate_std() <private-void-md-vector-composite-instanciate-std>`
[void MD_Vector_composite::instanciate_std()](#private-void-md-vector-composite-instanciate-std)

Attributes Documentation#

info_obj (public)
const Type_info MD_Vector_composite::info_obj
data_ (protected)
TRUST_Vector<MD_Vector> MD_Vector_composite::data_
global_md_ (protected)
std::shared_ptr<MD_Vector_mono> MD_Vector_composite::global_md_
names_ (protected)
Noms MD_Vector_composite::names_
parts_offsets_ (protected)
ArrOfInt MD_Vector_composite::parts_offsets_
shapes_ (protected)
ArrOfInt MD_Vector_composite::shapes_
is_seq_ (private)
int MD_Vector_composite::is_seq_ = - 1

1: global_md_ is a ‘ MD_Vector_seq ‘, 0: global_md_ is ‘ MD_Vector_std ‘, - 1: not initialized.