skyline.hxx
来自「不错的国外的有限元程序代码,附带详细的manual,可以节省很多的底层工作.」· HXX 代码 · 共 52 行
HXX
52 行
// *********************
// *** CLASS SKYLINE ***
// *********************
#ifndef skyline_hxx
#include <stdio.h>
class Domain ; class FloatMatrix ; class FloatArray ; class IntArray ;
class Skyline
/*
This abstract class is the superclass of the classes that implement square
matrices in a compact storage form (symmetric or unsymmetric skyline). A
skyline is usually an attribute of a SkylineSystem.
DESCRIPTION :
The attribute 'size' is number of rows (=columns) of the skyline. 'isFac-
torized' is True if the skyline is already in factorized form (U(T).D.U
or L.D.U), else it is False.
TASKS :
- assembling to itself a matrix, typically and elemental stiffness matrix
(method 'assemble') ;
- when associated with an array b, solving the system Ax=b (methods 'fac-
torized','forwardReductionWith',etc) ;
- when associated with a domain, shaping its own profile (method 'carve-
Yourself') ;
- resetting to zero all of its coefficients (method 'reinitialized').
*/
{
protected :
int size ;
int isFactorized ;
public :
Skyline () { } // dummy constructor
virtual ~Skyline () { } // destructor
virtual void assemble (FloatMatrix*,IntArray*) { }
virtual FloatArray* backSubstitutionWith (FloatArray*) {return NULL;}
virtual void carveYourselfFor (Domain*) { }
virtual Skyline* diagonalScalingWith (FloatArray*) {return NULL;}
virtual Skyline* factorized () {return NULL;}
virtual Skyline* forwardReductionWith (FloatArray*) {return NULL;}
int giveNumberOfColumns () {return size;}
virtual Skyline* reinitialized () {return NULL;}
} ;
#define skyline_hxx
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?