Diffpack Documentation


Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

MatVecContribFD.h

Go to the documentation of this file.
00001 
00005 class MatVecContribFD
00006 
00007 {
00008 public:
00009   int node_no;            
00010   int curr_node_dof;      
00011   int ndofs;              
00012 
00013   Handle(DegFreeFD) dof;  
00014 
00015   Handle(VecSimpleH(VecSimple(NUMT))) alg_coeffs;  
00016   Handle(VecSimpleH(VecSimple(int)))  alg_pattern;
00017 
00018 
00019 private:
00020   void modify (int i, NUMT v); 
00021 
00022 public:
00023   MatVecContribFD ();
00024   void attach (DegFreeFD& dof);
00025   void detach () { dof.detach(); }
00026 
00027   MatVecContribFD (DegFreeFD& dof);
00028  ~MatVecContribFD ();
00029 
00030   
00031   bool refill (int node_idx, int curr_dof, Stencil& stencil); 
00032   bool refill (int glob_eqn);
00033                                            
00034   void fill   (const MatVecContribFD& contrib);  
00035                                                  
00036 
00037   void scaleContrib (StencilUnion& stencil);     
00038 
00039   void insertAlgebraicDofs (int idx_base);       
00040   void insertAlgebraicEqn  ();                   
00041 
00042   DegFreeFD& getDegFreeFD ()    { return dof(); }
00043 
00044   Mat(NUMT)      A;            
00045   Vec(NUMT)      b;            
00046   VecSimple(int) loc2glob_row; 
00047   VecSimple(int) loc2glob_col; 
00048   Vec(NUMT)      b_mod;        
00049 
00050   void enforceEssBC ();
00051 
00052   bool ok () const;
00053   void print (Os os, int help = 1) const;
00054 
00055   
00056 
00057   COPY_CONSTRUCTOR(MatVecContribFD);
00058   ASSIGNMENT_OPERATOR(MatVecContribFD);
00059 };
00060 
00061 

Copyright © 2003 inuTech GmbH. All rights reserved.