/[escript]/trunk/escript/src/AbstractContinuousDomain.h
ViewVC logotype

Diff of /trunk/escript/src/AbstractContinuousDomain.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/esys2/escript/src/Data/AbstractContinuousDomain.h revision 149 by jgs, Thu Sep 1 03:31:39 2005 UTC trunk/escript/src/AbstractContinuousDomain.h revision 2881 by jfenwick, Thu Jan 28 02:03:15 2010 UTC
# Line 1  Line 1 
1  //$Id$  
2  /*  /*******************************************************
3   ******************************************************************************  *
4   *                                                                            *  * Copyright (c) 2003-2010 by University of Queensland
5   *       COPYRIGHT  ACcESS 2004 -  All Rights Reserved                        *  * Earth Systems Science Computational Center (ESSCC)
6   *                                                                            *  * http://www.uq.edu.au/esscc
7   * This software is the property of ACcESS. No part of this code              *  *
8   * may be copied in any form or by any means without the expressed written    *  * Primary Business: Queensland, Australia
9   * consent of ACcESS.  Copying, use or modification of this software          *  * Licensed under the Open Software License version 3.0
10   * by any unauthorised person is illegal unless that person has a software    *  * http://www.opensource.org/licenses/osl-3.0.php
11   * license agreement with ACcESS.                                             *  *
12   *                                                                            *  *******************************************************/
13   ******************************************************************************  
 */  
14    
15  #if !defined escript_AbstractContinuousDomain_20040528_H  #if !defined escript_AbstractContinuousDomain_20040528_H
16  #define escript_AbstractContinuousDomain_20040528_H  #define escript_AbstractContinuousDomain_20040528_H
17    
18  #include "escript/Data/AbstractDomain.h"  #include "system_dep.h"
19  #include "escript/Data/AbstractSystemMatrix.h"  #include "AbstractDomain.h"
 #include "escript/Data/Data.h"  
   
 #include <boost/python/tuple.hpp>  
 #include <boost/python/object.hpp>  
20    
21  #include <string>  #include <string>
22  #include <vector>  #include <vector>
# Line 30  namespace escript { Line 25  namespace escript {
25    
26  //  //
27  // Forward declaration  // Forward declaration
28  class FunctionSpace;  class Data;
29    
30  /**  /**
31     \brief     \brief
# Line 59  class AbstractContinuousDomain : public Line 54  class AbstractContinuousDomain : public
54       Throws:       Throws:
55       Describe any exceptions thrown       Describe any exceptions thrown
56    */    */
57      ESCRIPT_DLL_API
58    AbstractContinuousDomain();    AbstractContinuousDomain();
59    
60    /**    /**
# Line 74  class AbstractContinuousDomain : public Line 70  class AbstractContinuousDomain : public
70       Throws:       Throws:
71       Describe any exceptions thrown       Describe any exceptions thrown
72    */    */
73      ESCRIPT_DLL_API
74    virtual ~AbstractContinuousDomain();    virtual ~AbstractContinuousDomain();
75    
76    /**    /**
# Line 81  class AbstractContinuousDomain : public Line 78  class AbstractContinuousDomain : public
78       Returns true if the given integer is a valid function space type       Returns true if the given integer is a valid function space type
79       for this domain.       for this domain.
80    */    */
81      ESCRIPT_DLL_API
82    virtual bool isValidFunctionSpaceType(int functionSpaceType) const;    virtual bool isValidFunctionSpaceType(int functionSpaceType) const;
83    
84    /**    /**
85       \brief       \brief
86       Return a description for this domain       Return a description for this domain
87    */    */
88      ESCRIPT_DLL_API
89    virtual std::string getDescription() const;    virtual std::string getDescription() const;
90    
91    /**    /**
92       \brief       \brief
93       Return a continuous FunctionSpace code       Return a continuous FunctionSpace code
94    */    */
95      ESCRIPT_DLL_API
96    virtual int getContinuousFunctionCode() const;    virtual int getContinuousFunctionCode() const;
97    
98    /**    /**
99       \brief       \brief
100       Return a functon FunctionSpace code       Return a continuous on reduced order FunctionSpace code
101      */
102      ESCRIPT_DLL_API
103      virtual int getReducedContinuousFunctionCode() const;
104    
105      /**
106         \brief
107         Return a function FunctionSpace code
108    */    */
109      ESCRIPT_DLL_API
110    virtual int getFunctionCode() const;    virtual int getFunctionCode() const;
111    
112    /**    /**
113       \brief       \brief
114         Return a function FunctionSpace code with reduced integration order
115      */
116      ESCRIPT_DLL_API
117      virtual int getReducedFunctionCode() const;
118    
119      /**
120         \brief
121       Return a function on boundary FunctionSpace code       Return a function on boundary FunctionSpace code
122    */    */
123      ESCRIPT_DLL_API
124    virtual int getFunctionOnBoundaryCode() const;    virtual int getFunctionOnBoundaryCode() const;
125    
126    /**    /**
127       \brief       \brief
128         Return a code for a function on boundary FunctionSpace with reduced integration order
129      */
130      ESCRIPT_DLL_API
131      virtual int getReducedFunctionOnBoundaryCode() const;
132    
133    
134      /**
135         \brief
136       Return a FunctionOnContactZero code       Return a FunctionOnContactZero code
137    */    */
138      ESCRIPT_DLL_API
139    virtual int getFunctionOnContactZeroCode() const;    virtual int getFunctionOnContactZeroCode() const;
140    
141    /**    /**
142       \brief       \brief
143         Return a FunctionOnContactZero for reduced integration order code
144      */
145      ESCRIPT_DLL_API
146      virtual int getReducedFunctionOnContactZeroCode() const;
147    
148      /**
149         \brief
150       Return a FunctionOnContactOne code       Return a FunctionOnContactOne code
151    */    */
152      ESCRIPT_DLL_API
153    virtual int getFunctionOnContactOneCode() const;    virtual int getFunctionOnContactOneCode() const;
154    
155    /**    /**
156       \brief       \brief
157         Return a FunctionOnContactOne for reduced integration order code
158      */
159      ESCRIPT_DLL_API
160      virtual int getReducedFunctionOnContactOneCode() const;
161    
162      /**
163         \brief
164       Return a Solution code       Return a Solution code
165    */    */
166      ESCRIPT_DLL_API
167    virtual int getSolutionCode() const;    virtual int getSolutionCode() const;
168    
169    /**    /**
170       \brief       \brief
171       Return a ReducedSolution code       Return a ReducedSolution code
172    */    */
173      ESCRIPT_DLL_API
174    virtual int getReducedSolutionCode() const;    virtual int getReducedSolutionCode() const;
175    
176    /**    /**
177       \brief       \brief
178       Return a DiracDeltaFunction code       Return a DiracDeltaFunction code
179    */    */
180      ESCRIPT_DLL_API
181    virtual int getDiracDeltaFunctionCode() const;    virtual int getDiracDeltaFunctionCode() const;
182    
183    /**    /**
184       \brief       \brief
185       return the identifier of the matrix type to be used for the global       return the identifier of the matrix type to be used for the global
186       stiffness matrix when a particular solver, preconditioner       stiffness matrix when a particular solver package
187         and symmetric matrix is used.
188      */
189      ESCRIPT_DLL_API
190      virtual int getSystemMatrixTypeId(const int solver, const int preconditioner, const int package, const bool symmetry) const;
191    
192      /**
193         \brief
194         return the identifier of the matrix type to be used for the global
195         stiffness matrix when a particular solver package
196       and symmetric matrix is used.       and symmetric matrix is used.
197    */    */
198    virtual int getSystemMatrixTypeId(const int solver, const bool symmetry) const;    ESCRIPT_DLL_API
199      virtual int getTransportTypeId(const int solver, const int preconditioner, const int package, const bool symmetry) const;
200    
201    /**    /**
202       \brief       \brief
# Line 151  class AbstractContinuousDomain : public Line 204  class AbstractContinuousDomain : public
204       arg has to be defined on this.       arg has to be defined on this.
205       has to be implemented by the Domain Adapter.       has to be implemented by the Domain Adapter.
206    */    */
207      ESCRIPT_DLL_API
208    virtual void setToIntegrals(std::vector<double>& integrals,const escript::Data& arg) const;    virtual void setToIntegrals(std::vector<double>& integrals,const escript::Data& arg) const;
209    
210    /**    /**
211       \brief       \brief
212       Return the domain as const AbstractContinuousDomain&       Return the domain as const AbstractContinuousDomain&
213    */    */
214    static const  AbstractContinuousDomain& asAbstractContinuousDomain(const AbstractDomain& domain);  //   ESCRIPT_DLL_API
215    //   static const  AbstractContinuousDomain& asAbstractContinuousDomain(const AbstractDomain& domain);
216    
217   protected:   protected:
218    

Legend:
Removed from v.149  
changed lines
  Added in v.2881

  ViewVC Help
Powered by ViewVC 1.1.26