Arcane  v3.16.0.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
core/matvec/Vector.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2022 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* Vector.h (C) 2000-2007 */
9/* */
10/* Vecteur d'algèbre linéraire. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_MATVEC_VECTOR_H
13#define ARCANE_MATVEC_VECTOR_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/ArcanePrecomp.h"
18
19#include "arcane/utils/Array.h"
20#include "arcane/utils/Numeric.h"
21
22/*---------------------------------------------------------------------------*/
23/*---------------------------------------------------------------------------*/
24
25ARCANE_BEGIN_NAMESPACE
26namespace MatVec
27{
28
29/*---------------------------------------------------------------------------*/
30/*---------------------------------------------------------------------------*/
31
32class VectorImpl;
33
34/*---------------------------------------------------------------------------*/
35/*---------------------------------------------------------------------------*/
39class ARCANE_CORE_EXPORT Vector
40{
41 public:
49 explicit Vector(Integer size);
55 Vector(Integer size,Real init_value);
63 Vector(const Vector& rhs);
65 const Vector& operator=(const Vector& rhs);
67 ~Vector();
68 public:
70 Integer size() const;
84 void dump(std::ostream& o) const;
92 void copy(const Vector& rhs);
99 void resize(Integer new_size);
106 void resize(Integer new_size,Real init_value);
107
108 Real normInf();
109
111 static Vector readHypre(const String& file_name);
112 private:
115};
116
117/*---------------------------------------------------------------------------*/
118/*---------------------------------------------------------------------------*/
119}
120ARCANE_END_NAMESPACE
121
122/*---------------------------------------------------------------------------*/
123/*---------------------------------------------------------------------------*/
124
125#endif
void dump(std::ostream &o) const
Imprime les valeurs du vecteur.
Definition Vector.cc:176
void resize(Integer new_size, Real init_value)
Change le nombre d'éléments du vecteur.
static Vector readHypre(const String &file_name)
Initialise un vecteur en utilisant un fichier au format Hypre.
Definition Vector.cc:210
const Vector & operator=(const Vector &rhs)
Change la référence du vecteur.
Definition Vector.cc:118
Integer size() const
Nombre d'éléments du vecteur.
Definition Vector.cc:140
Vector(Integer size, Real init_value)
Créé pour stocker size éléments.
void resize(Integer new_size)
Change le nombre d'éléments du vecteur.
VectorImpl * m_impl
Représentation interne du groupe.
RealArrayView values()
Valeurs du vecteur.
Definition Vector.cc:149
Vector(RealUniqueArray v)
Créé un vecteur avec les éléments de v.
Vector clone()
Clone ce vecteur.
Vector()
Créé un vecteur vide.
void copy(const Vector &rhs)
Copie les éléments de rhs dans ce vecteur.
Definition Vector.cc:167
Chaîne de caractères unicode.
Int32 Integer
Type représentant un entier.
UniqueArray< Real > RealUniqueArray
Tableau dynamique à une dimension de réels.
Definition UtilsTypes.h:436
double Real
Type représentant un réel.
ArrayView< Real > RealArrayView
Equivalent C d'un tableau à une dimension de réels.
Definition UtilsTypes.h:546
ConstArrayView< Real > RealConstArrayView
Equivalent C d'un tableau à une dimension de réels.
Definition UtilsTypes.h:575