Skip to content
Snippets Groups Projects
Select Git revision
  • 2346bf4ae3bca6691f771299e150b27607928d1b
  • master default protected
  • ujwal_21_08_2024
  • dev_mm_pf
  • cyrielle
  • vinayak
  • dev_mm_torchSCRU
  • debug_mm_pf
  • newStructureNonLocal
  • Mohamed_stochasticDMN
  • dev_mm_bench
  • stochdmn
  • revert-351ff7aa
  • ujwal_29April2024
  • dev_mm_ann
  • mohamed_vevp
  • ujwal_debug
  • ujwal_2ndApril2024
  • ujwal_October_2023
  • gabriel
  • SFEM
  • v4.0
  • v3.2.3_multiplePhase
  • v3.5
  • v3.3.2
  • v3.4
  • v3.3
  • ver3.2
  • verJulienWork
  • ver3.1
  • ver2
  • ver1.1.2
  • ver1.1.1
  • ver1.1
34 results

failureCriterion.cpp

Blame
  • linearSystem.h 1.06 KiB
    // Gmsh - Copyright (C) 1997-2010 C. Geuzaine, J.-F. Remacle
    //
    // See the LICENSE.txt file for license information. Please report all
    // bugs and problems to <gmsh@geuz.org>.
    
    #ifndef _LINEAR_SYSTEM_H_
    #define _LINEAR_SYSTEM_H_
    
    // A class that encapsulates a linear system solver interface :
    // building a sparse matrix, solving a linear system
    class binding;
    
    template <class scalar>
    class linearSystem {
     public :
      linearSystem (){}
      virtual ~linearSystem (){}
      virtual bool isAllocated() const = 0;
      virtual void allocate(int nbRows) = 0;
      virtual void clear() = 0;
      virtual void addToMatrix(int _row, int _col, const scalar &val) = 0;
      virtual void getFromMatrix(int _row, int _col, scalar &val) const = 0;
      virtual void addToRightHandSide(int _row, const scalar &val) = 0;
      virtual void getFromRightHandSide(int _row, scalar &val) const = 0;
      virtual void getFromSolution(int _row, scalar &val) const = 0;
      virtual void zeroMatrix() = 0;
      virtual void zeroRightHandSide() = 0;
      virtual int systemSolve() = 0;
      static void registerBindings (binding*);
    };
    
    #endif