LORENE
ope_elementary.C
1 /*
2  * Copyright (c) 2003 Philippe Grandclement
3  *
4  * This file is part of LORENE.
5  *
6  * LORENE is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2
8  * as published by the Free Software Foundation.
9  *
10  * LORENE is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with LORENE; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  *
19  */
20 
21 
22 
23 /*
24  * $Id: ope_elementary.C,v 1.3 2016/12/05 16:18:11 j_novak Exp $
25  * $Log: ope_elementary.C,v $
26  * Revision 1.3 2016/12/05 16:18:11 j_novak
27  * Suppression of some global variables (file names, loch, ...) to prevent redefinitions
28  *
29  * Revision 1.2 2014/10/13 08:53:32 j_novak
30  * Lorene classes and functions now belong to the namespace Lorene.
31  *
32  * Revision 1.1 2003/12/11 14:48:50 p_grandclement
33  * Addition of ALL (and that is a lot !) the files needed for the general elliptic solver ... UNDER DEVELOPEMENT...
34  *
35  *
36  * $Header: /cvsroot/Lorene/C++/Source/Ope_elementary/ope_elementary.C,v 1.3 2016/12/05 16:18:11 j_novak Exp $
37  *
38  */
39 
40 #include "proto.h"
41 #include "ope_elementary.h"
42 
43 // Standard constructor :
44 namespace Lorene {
45 Ope_elementary::Ope_elementary (int nbr, int base, double alf, double bet) :
46  nr (nbr), base_r (base), alpha(alf), beta(bet),
47  ope_mat(0x0), ope_cl (0x0), non_dege(0x0) {}
48 
49 // Constructor by copy:
51  nr (so.nr), base_r(so.base_r), alpha(so.alpha), beta(so.beta),
52  ope_mat(0x0), ope_cl (0x0), non_dege(0x0) {
53 
54  if (so.ope_mat != 0x0)
55  ope_mat = new Matrice (*so.ope_mat) ;
56 
57  if (so.ope_cl != 0x0)
58  ope_cl = new Matrice (*so.ope_cl) ;
59 
60  if (so.non_dege != 0x0)
61  non_dege = new Matrice (*so.non_dege) ;
62 }
63 
64 // Destructor :
66  if (ope_mat != 0x0)
67  delete ope_mat ;
68 
69  if (ope_cl != 0x0)
70  delete ope_cl ;
71 
72  if (non_dege != 0x0)
73  delete non_dege ;
74 }
75 
76 }
Matrice * ope_cl
Pointer on the banded-matrix of the operator.
Lorene prototypes.
Definition: app_hor.h:67
Matrice * ope_mat
Pointer on the matrix representation of the operator.
Ope_elementary(int nbr, int baser, double alf, double eta)
Standard constructor, protected because the class is an abstract one.
Matrix handling.
Definition: matrice.h:152
Basic class for elementary elliptic operators.
virtual ~Ope_elementary()
Destructor.
Matrice * non_dege
Pointer on the non-degenerated matrix of the operator.