Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • feature/local-dt-fsi
  • save_clemence
  • feature/advection
  • develop
  • feature/reconstruction
  • feature/kinetic-schemes
  • feature/composite-scheme-sources
  • feature/composite-scheme-other-fluxes
  • origin/stage/bouguettaia
  • feature/variational-hydro
  • feature/gmsh-reader
  • feature/serraille
  • feature/composite-scheme
  • hyperplastic
  • feature/polynomials
  • feature/gks
  • feature/implicit-solver-o2
  • feature/coupling_module
  • feature/implicit-solver
  • feature/merge-local-dt-fsi
  • master
  • feature/escobar-smoother
  • feature/hypoelasticity-clean
  • feature/hypoelasticity
  • feature/Navier-Stokes
  • feature/Nodal_diffusion
  • feature/explicit-gp-cfl
  • Nodal_diffusion
  • feature/discontinuous-galerkin
  • test/voronoi1d
  • navier-stokes
  • Kidder
  • v0
  • v0.0.1
  • v0.0.2
  • v0.0.3
  • v0.0.4
  • v0.1.0
  • v0.2.0
  • v0.3.0
  • v0.4.0
  • v0.4.1
  • v0.5.0
43 results

Target

Select target project
No results found
Select Git revision
  • feature/local-dt-fsi
  • save_clemence
  • feature/advection
  • develop
  • feature/reconstruction
  • feature/kinetic-schemes
  • feature/composite-scheme-sources
  • feature/composite-scheme-other-fluxes
  • origin/stage/bouguettaia
  • feature/variational-hydro
  • feature/gmsh-reader
  • feature/serraille
  • feature/composite-scheme
  • hyperplastic
  • feature/polynomials
  • feature/gks
  • feature/implicit-solver-o2
  • feature/coupling_module
  • feature/implicit-solver
  • feature/merge-local-dt-fsi
  • master
  • feature/escobar-smoother
  • feature/hypoelasticity-clean
  • feature/hypoelasticity
  • feature/Navier-Stokes
  • feature/Nodal_diffusion
  • feature/explicit-gp-cfl
  • Nodal_diffusion
  • feature/discontinuous-galerkin
  • test/voronoi1d
  • navier-stokes
  • Kidder
  • v0
  • v0.0.1
  • v0.0.2
  • v0.0.3
  • v0.0.4
  • v0.1.0
  • v0.2.0
  • v0.3.0
  • v0.4.0
  • v0.4.1
  • v0.5.0
43 results
Show changes

Commits on Source 4

7 files
+ 978
133
Compare changes
  • Side-by-side
  • Inline

Files

Original line number Diff line number Diff line
@@ -51,6 +51,7 @@
#include <scheme/NeumannBoundaryConditionDescriptor.hpp>
#include <scheme/OutflowBoundaryConditionDescriptor.hpp>
#include <scheme/SymmetryBoundaryConditionDescriptor.hpp>
#include <scheme/PeriodicBoundaryConditionDescriptor.hpp>
#include <scheme/VariableBCDescriptor.hpp>
#include <scheme/WallBoundaryConditionDescriptor.hpp>
#include <utils/Socket.hpp>
@@ -400,6 +401,15 @@ SchemeModule::SchemeModule()

                                          ));

  this->_addBuiltinFunction("periodic", std::function(

                                          [](std::shared_ptr<const IBoundaryDescriptor> boundary)
                                            -> std::shared_ptr<const IBoundaryConditionDescriptor> {
                                            return std::make_shared<PeriodicBoundaryConditionDescriptor>(boundary);
                                          }

                                          ));

  this->_addBuiltinFunction("external_fsi_velocity",
                            std::function(

@@ -563,10 +573,11 @@ SchemeModule::SchemeModule()

                              [](const std::shared_ptr<const DiscreteFunctionVariant>& f_j_v,
                                 const std::shared_ptr<const MeshVariant> primal_mesh_v,
                                 const std::shared_ptr<const MeshVariant> dual_mesh_v) -> std::shared_ptr<const DiscreteFunctionVariant> {
                                 const std::shared_ptr<const MeshVariant> dual_mesh_v,
                                 const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>& bc_descriptor_list) -> std::shared_ptr<const DiscreteFunctionVariant> {
                                return DDFVSolverHandler{primal_mesh_v}
                                  .solver()
                                  .init_dual_sca(f_j_v, primal_mesh_v, dual_mesh_v);
                                  .init_dual_sca(f_j_v, primal_mesh_v, dual_mesh_v, bc_descriptor_list);
                              }

                              ));            
@@ -576,10 +587,24 @@ SchemeModule::SchemeModule()

                              [](const std::shared_ptr<const DiscreteFunctionVariant>& f_j_v,
                                 const std::shared_ptr<const MeshVariant> primal_mesh_v,
                                 const std::shared_ptr<const MeshVariant> dual_mesh_v,
                                 const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>& bc_descriptor_list) -> std::shared_ptr<const DiscreteFunctionVariant> {
                                return DDFVSolverHandler{primal_mesh_v}
                                  .solver()
                                  .init_dual_vec(f_j_v, primal_mesh_v, dual_mesh_v, bc_descriptor_list);
                              }

                              ));       
                              
  this->_addBuiltinFunction("calcul_masse_BC_p",
                            std::function(

                              [](const std::shared_ptr<const DiscreteFunctionVariant>& rho_r_v,
                                 const std::shared_ptr<const MeshVariant>& primal_mesh_v,
                                 const std::shared_ptr<const MeshVariant> dual_mesh_v) -> std::shared_ptr<const DiscreteFunctionVariant> {
                                return DDFVSolverHandler{primal_mesh_v}
                                  .solver()
                                  .init_dual_vec(f_j_v, primal_mesh_v, dual_mesh_v);
                                  .calcul_masse_BC_p(rho_r_v, primal_mesh_v, dual_mesh_v);
                              }

                              ));
Original line number Diff line number Diff line
@@ -53,10 +53,17 @@ class DDFVSolverHandler
    virtual std::shared_ptr<const DiscreteFunctionVariant>
    init_dual_sca(const std::shared_ptr<const DiscreteFunctionVariant>& f_j_v,
                  const std::shared_ptr<const MeshVariant>& primal_mesh_v,
                  const std::shared_ptr<const MeshVariant>& dual_mesh_v) const =0;
                  const std::shared_ptr<const MeshVariant>& dual_mesh_v,
                  const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>& bc_descriptor_list) const =0;
    
    virtual std::shared_ptr<const DiscreteFunctionVariant>
    init_dual_vec(const std::shared_ptr<const DiscreteFunctionVariant>& f_j_v,
                  const std::shared_ptr<const MeshVariant>& primal_mesh_v,
                  const std::shared_ptr<const MeshVariant>& dual_mesh_v,
                  const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>& bc_descriptor_list) const =0;

    virtual std::shared_ptr<const DiscreteFunctionVariant>
    calcul_masse_BC_p(const std::shared_ptr<const DiscreteFunctionVariant>& rho_r_v,
                  const std::shared_ptr<const MeshVariant>& primal_mesh_v,
                  const std::shared_ptr<const MeshVariant>& dual_mesh_v) const =0;

Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ class IBoundaryConditionDescriptor
    inflow_list,
    neumann,
    outflow,
    periodic,
    symmetry,
    wall
  };
Original line number Diff line number Diff line
#ifndef PERIODIC_BOUNDARY_CONDITION_DESCRIPTOR_HPP
#define PERIODIC_BOUNDARY_CONDITION_DESCRIPTOR_HPP

#include <mesh/IBoundaryDescriptor.hpp>
#include <scheme/BoundaryConditionDescriptorBase.hpp>

#include <memory>

class PeriodicBoundaryConditionDescriptor : public BoundaryConditionDescriptorBase
{
 private:
  std::ostream&
  _write(std::ostream& os) const final
  {
    os << "periodic(" << *m_boundary_descriptor << ")";
    return os;
  }

 public:
  Type
  type() const final
  {
    return Type::periodic;
  }

  PeriodicBoundaryConditionDescriptor(const std::shared_ptr<const IBoundaryDescriptor>& boundary_descriptor)
    : BoundaryConditionDescriptorBase{boundary_descriptor}
  {
    ;
  }

  PeriodicBoundaryConditionDescriptor(const PeriodicBoundaryConditionDescriptor&) = delete;
  PeriodicBoundaryConditionDescriptor(PeriodicBoundaryConditionDescriptor&&)      = delete;

  ~PeriodicBoundaryConditionDescriptor() = default;
};

#endif   // PERIODIC_BOUNDARY_CONDITION_DESCRIPTOR_HPP
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@
#include <scheme/NeumannBoundaryConditionDescriptor.hpp>
#include <scheme/OutflowBoundaryConditionDescriptor.hpp>
#include <scheme/SymmetryBoundaryConditionDescriptor.hpp>
#include <Scheme/PeriodicBoundaryConditionDescriptor.hpp>
#include <scheme/WallBoundaryConditionDescriptor.hpp>
#include <utils/Exceptions.hpp>
#include <utils/checkpointing/IBoundaryConditionDescriptorHFType.hpp>
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@
#include <scheme/NeumannBoundaryConditionDescriptor.hpp>
#include <scheme/OutflowBoundaryConditionDescriptor.hpp>
#include <scheme/SymmetryBoundaryConditionDescriptor.hpp>
#include <Scheme/PeriodicBoundaryConditionDescriptor.hpp>
#include <scheme/WallBoundaryConditionDescriptor.hpp>
#include <utils/Exceptions.hpp>
#include <utils/checkpointing/IBoundaryConditionDescriptorHFType.hpp>