Skip to content
Snippets Groups Projects
Select Git revision
  • 7f8d900ce60840b4420d3c2a57d98ed6ecc66530
  • master default protected
  • relaying
  • overlaps_tags_and_distributed_export
  • patches-4.14
  • steplayer
  • bl
  • pluginMeshQuality
  • fixBugsAmaury
  • hierarchical-basis
  • alphashapes
  • new_export_boris
  • oras_vs_osm
  • reassign_partitions
  • distributed_fwi
  • rename-classes
  • fix/fortran-api-example-t4
  • robust_partitions
  • reducing_files
  • fix_overlaps
  • 3115-issue-fix
  • gmsh_4_14_0
  • gmsh_4_13_1
  • gmsh_4_13_0
  • gmsh_4_12_2
  • gmsh_4_12_1
  • gmsh_4_12_0
  • gmsh_4_11_1
  • gmsh_4_11_0
  • gmsh_4_10_5
  • gmsh_4_10_4
  • gmsh_4_10_3
  • gmsh_4_10_2
  • gmsh_4_10_1
  • gmsh_4_10_0
  • gmsh_4_9_5
  • gmsh_4_9_4
  • gmsh_4_9_3
  • gmsh_4_9_2
  • gmsh_4_9_1
  • gmsh_4_9_0
41 results

discreteRegion.h

Blame
  • BasisFactory.h 1.63 KiB
    // Gmsh - Copyright (C) 1997-2019 C. Geuzaine, J.-F. Remacle
    //
    // See the LICENSE.txt file for license information. Please report all
    // issues on https://gitlab.onelab.info/gmsh/gmsh/issues.
    
    #ifndef BASISFACTORY_H
    #define BASISFACTORY_H
    
    #include <map>
    class nodalBasis;
    class GradientBasis;
    class bezierBasis;
    class CondNumBasis;
    class JacobianBasis;
    class FuncSpaceData;
    
    class BasisFactory {
    private:
      static std::map<int, nodalBasis *> fs;
      static std::map<int, CondNumBasis *> cs;
      static std::map<FuncSpaceData, JacobianBasis *> js;
      static std::map<FuncSpaceData, bezierBasis *> bs;
      static std::map<FuncSpaceData, GradientBasis *> gs;
    
    public:
      // Caution: the returned pointer can be NULL
    
      // Nodal
      static const nodalBasis *getNodalBasis(int tag);
    
      // Jacobian
      // Warning: bases returned by BasisFactory::getJacobianBasis(int tag) are the
      // only safe bases for using Bezier on the jacobian determinant!
      static const JacobianBasis *getJacobianBasis(int tag, FuncSpaceData);
      static const JacobianBasis *getJacobianBasis(int tag, int order);
      static const JacobianBasis *getJacobianBasis(int tag);
    
      // Condition number
      static const CondNumBasis *getCondNumBasis(int tag, int cnOrder = -1);
    
      // Gradients
      static const GradientBasis *getGradientBasis(int tag, FuncSpaceData);
      static const GradientBasis *getGradientBasis(int tag, int order);
      static const GradientBasis *getGradientBasis(int tag);
    
      // Bezier
      static const bezierBasis *getBezierBasis(FuncSpaceData);
      static const bezierBasis *getBezierBasis(int parentType, int order);
      static const bezierBasis *getBezierBasis(int tag);
    
      static void clearAll();
    };
    
    #endif