Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
AlephOrdering.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/* AlephOrdering.h (C) 2000-2024 */
9/* */
10/*---------------------------------------------------------------------------*/
11#ifndef ARCANE_ALEPH_ALEPHORDERING_H
12#define ARCANE_ALEPH_ALEPHORDERING_H
13/*---------------------------------------------------------------------------*/
14/*---------------------------------------------------------------------------*/
15
16#include "arcane/utils/CheckedConvert.h"
17
18/*---------------------------------------------------------------------------*/
19/*---------------------------------------------------------------------------*/
20
21namespace Arcane
22{
23
24/*---------------------------------------------------------------------------*/
25/*---------------------------------------------------------------------------*/
30: public TraceAccessor
31{
32 public:
33
34 explicit AlephOrdering(AlephKernel*);
35 AlephOrdering(AlephKernel*, Integer, Integer, bool = false);
37
38 public:
39
40 Integer swap(Integer i)
41 {
42 if (m_do_swap)
43 return CheckedConvert::toInteger(m_swap.at(i));
44 return i;
45 }
46
47 private:
48
49 void initCellOrder();
50 void initTwiceCellOrder();
51 void initFaceOrder();
52 void initCellFaceOrder();
53 void initCellNodeOrder();
54 void initTwiceCellNodeOrder();
55
56 private:
57
58 bool m_do_swap = false;
59 AlephKernel* m_kernel = nullptr;
60 UniqueArray<Int64> m_swap;
61};
62
63/*---------------------------------------------------------------------------*/
64/*---------------------------------------------------------------------------*/
65
66} // namespace Arcane
67
68/*---------------------------------------------------------------------------*/
69/*---------------------------------------------------------------------------*/
70
71#endif
Gestionnaire de reordering.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
ConstReferenceType at(Int64 i) const
Elément d'indice i. Vérifie toujours les débordements.
Integer toInteger(Real r)
Converti un Int64 en un Integer.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-