Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
CartesianMeshUniqueIdRenumbering.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2023 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/* CartesianMeshUniqueIdRenumbering.h (C) 2000-2023 */
9/* */
10/* Renumérotation des uniqueId() pour les maillages cartésiens. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CARTESIANMESH_INTERNAL_CARTESIANMESHUNIQUEIDRENUMBERING_H
13#define ARCANE_CARTESIANMESH_INTERNAL_CARTESIANMESHUNIQUEIDRENUMBERING_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/TraceAccessor.h"
18
21
22#include "arcane/cartesianmesh/CartesianPatch.h"
23
24/*---------------------------------------------------------------------------*/
25/*---------------------------------------------------------------------------*/
26
27namespace Arcane
28{
29class ICartesianMeshGenerationInfo;
30
31/*---------------------------------------------------------------------------*/
32/*---------------------------------------------------------------------------*/
41: public TraceAccessor
42{
43 class NewUniqueIdList;
44
45 public:
46
50
51 public:
52
53 void renumber();
54
55 private:
56
57 ICartesianMesh* m_cartesian_mesh = nullptr;
58 ICartesianMeshGenerationInfo* m_generation_info = nullptr;
59 CartesianPatch m_parent_patch;
60 bool m_is_verbose = false;
61 Int32 m_patch_method = 1;
62
63 private:
64
65 void _applyChildrenCell2D(Cell cell, NewUniqueIdList& new_uids,
66 Int64 coord_i, Int64 coord_j,
67 Int64 nb_cell_x, Int64 nb_cell_y, Int32 level, Int64 base_adder);
68 void _applyChildrenCell3D(Cell cell, NewUniqueIdList& new_uids,
69 Int64 coord_i, Int64 coord_j, Int64 coord_k,
71 Int32 current_level, Int64 cell_adder, Int64 node_adder, Int64 face_adder);
72 void _applyChildrenCell3DV2(Cell cell, NewUniqueIdList& new_uids,
73 Int64 coord_i, Int64 coord_j, Int64 coord_k,
75 Int32 current_level, Int64 cell_adder, Int64 node_adder, Int64 face_adder);
76 void _applyFamilyRenumbering(IItemFamily* family, VariableItemInt64& items_new_uid);
77 void _markItemsToKeepCurrentNumbering(ICartesianMeshPatch* patch);
78};
79
80/*---------------------------------------------------------------------------*/
81/*---------------------------------------------------------------------------*/
82
83} // End namespace Arcane
84
85/*---------------------------------------------------------------------------*/
86/*---------------------------------------------------------------------------*/
87
88#endif
Déclarations de types sur les entités.
Renumérotation des uniqueId() pour les maillages cartésiens.
Patch AMR d'un maillage cartésien.
Maille d'un maillage.
Definition Item.h:1178
Informations sur la génération des maillages cartésiens.
Interface d'un patch AMR d'un maillage cartésien.
Interface d'un maillage cartésien.
Interface d'une famille d'entités.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-