linalg.h

Go to the documentation of this file.
00001 /*
00002  * Linear Algebra Tools
00003  */
00004 /* -----------------------------------------------------------------------------------------
00005   $Id: linalg.h 573 2006-11-20 00:25:28Z svacek $
00006   $Author: svacek $
00007    ----------------------------------------------------------------------------------------- */
00008 #ifndef _LINALG_SVH
00009 #define _LINALG_SVH
00010 /* -------------------------------------------------------------------------- */
00011 /*@{*/
00012 /** \defgroup LINEAR_ALGEBRA Linear Algebra Tools */
00013 /** \addtogroup LINEAR_ALGEBRA */
00014 /* -------------------------------------------------------------------------- */
00015 #include "vector.h"
00016 #include "matrix.h"
00017 /* -------------------------------------------------------------------------- */
00018 #include "sparse.h"
00019 /* --------------------------------------------------------------------------- */
00020 /** Fluid motion 2d description (u,v,p) includes derivatives */
00021 typedef struct 
00022 {
00023     vector u,ux,uy,uxx,uyy,uxy; /**< x-component and derivatives */
00024     vector v,vx,vy,vxx,vyy,vxy; /**< y-component and derivatives */
00025     vector p,px,py;             /**< pressure component and derivatives */
00026 } motion;
00027 /* --------------------------------------------------------------------------- */
00028 /** Basefunction storage - includes derivatives */
00029 typedef struct 
00030 {
00031     vector N,Nx,Ny,Nxx,Nyy,Nxy; /**< function with its derivatives */
00032 } basefunction;
00033 /* --------------------------------------------------------------------------- */
00034 /** Deallocation of BFN */
00035 void DestructBaseFn(basefunction *H);  
00036 /** Allocation of BFN */
00037 void ConstructBaseFn(basefunction *H);
00038 void LinkBaseFn(basefunction *H,const basefunction U);
00039 /** Deallocation of MOTION */ 
00040 void DestructMotion(motion *U);       
00041 /** Allocation of MOTION */
00042 void ConstructMotion(motion *U);       
00043 /** Link to MOTION */
00044 void LinkMotion(motion *U,const motion V);
00045 long SetMotion(motion *U,double *p);
00046 long SetBaseFn(basefunction *H,double *p);
00047 /* --------------------------------------------------------------------------- */
00048 /*@}*/
00049 #endif
00050 /* ------------------------------------------------------------------------------- */
00051 
00052 
00053 
00054 
00055 

Generated on Sun May 27 11:59:43 2007 for FEMFLUID by  doxygen 1.4.6