FreeFem  3.5.x
femDisk.hpp
1 // Emacs will be in -*- Mode: c++ -*-
2 //
3 // ********** DO NOT REMOVE THIS BANNER **********
4 //
5 // SUMMARY: Language for a Finite Element Method
6 // RELEASE: 2.0
7 // USAGE : You may copy freely these files and use it for
8 // teaching or research. These or part of these may
9 // not be sold or used for a commercial purpose with-
10 // out our consent : fax (33)1 44 27 44 11
11 //
12 // AUTHORS: C. Prud'homme
13 // ORG :
14 // E-MAIL : prudhomm@users.sourceforge.net
15 //
16 // ORIG-DATE: June-94
17 // LAST-MOD: 27-Oct-01 at 12:18:24 by Christophe Prud'homme
18 //
19 // DESCRIPTION:
20 
21 /*
22  This program is free software; you can redistribute it and/or modify
23  it under the terms of the GNU General Public License as published by
24  the Free Software Foundation; either version 2 of the License, or
25  (at your option) any later version.
26 
27  This program is distributed in the hope that it will be useful,
28  but WITHOUT ANY WARRANTY; without even the implied warranty of
29  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30  GNU General Public License for more details.
31 
32  You should have received a copy of the GNU General Public License
33  along with this program; if not, write to the Free Software
34  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
35 
36 */
37 
38 // DESCRIP-END.
39 //
40 
41 #ifndef __Disk_h
42 #if defined(__GNUG__)
43 #pragma interface
44 #endif /* __GNUG__ */
45 #define __Disk_h
46 
47 #if defined(HAVE_CONFIG_H)
48 #include <config.h>
49 #endif /* HAVE_CONFIG_H */
50 
51 #include <femMisc.hpp>
52 #include <femMesh.hpp>
53 
54 namespace fem
55 {
62  class fcts
63  {
64  public:
65  float *c1, *b1, *nuyx1,*nuxx1,*nuxy1,*nuyy1, *a21, *a11, *g1, *f1, *p1, *sol1, *fplot;
66  ccomplex *c1c, *b1c, *nuyx1c,*nuxx1c,*nuxy1c,*nuyy1c, *a21c, *a11c, *g1c, *f1c, *p1c, *sol1c;
67  Acmat c2, b2, nuyx2,nuxx2,nuxy2,nuyy2, a12, a22;
68  Acvect g2, p2, f2, sol2;
69 
70  fcts()
71  :
72  c1(NULL),
73  b1(NULL),
74  nuyx1(NULL),
75  nuxx1(NULL),
76  nuxy1(NULL),
77  nuyy1(NULL),
78  a21(NULL),
79  a11(NULL),
80  g1(NULL),
81  f1(NULL),
82  p1(NULL),
83  sol1(NULL),
84  fplot(NULL),
85  c2(),
86  b2(),
87  nuyx2(),
88  nuxx2(),
89  nuxy2(),
90  nuyy2(),
91  a12(),
92  a22(),
93  g2(),
94  p2(),
95  f2(),
96  sol2()
97  {}
98  };
100 
105  char* readprog (char *path);
106 
108 
115  int loadtriangulation(femMesh *, char *);
116 
117  int savetriangulation(femMesh *, char *);
118  int saveparam(fcts *param, femMesh* t, char *path, int N=1);
119  int savefct(creal *, int, char *);
120  int saveconst(creal, char *);
121  int loadsol(int, fcts *);
122  int loadfct(creal *, int, char *);
123  int readpoints(char *, float*, int);
124 }
125 #endif /* __Disk_h */
fem::fcts
provide a pool for all the PDE data
Definition: femDisk.hpp:62
fem::Acvect
Definition: femMisc.hpp:342
fem::Complex
Definition: femMisc.hpp:86
fem::Acmat
Definition: femMisc.hpp:357
fem::femMesh
Mesh class.
Definition: femMesh.hpp:52

This is the FreeFEM reference manual
Provided by The KFEM project