00001 /***************************************************************************
00002 cvr3dfunc.h - description
00003 -------------------
00004 begin : Thu Apr 20 2000
00005 copyright : (C) 2000 by Michael Peeters
00006 email : Michael.Peeters@vub.ac.be
00007 ***************************************************************************/
00008
00009 /***************************************************************************
00010 * *
00011 * This program is free software; you can redistribute it and/or modify *
00012 * it under the terms of the GNU General Public License as published by *
00013 * the Free Software Foundation; either version 2 of the License, or *
00014 * (at your option) any later version. *
00015 * *
00016 ***************************************************************************/
00017
00018 #ifndef CVR3DFUNC_H
00019 #define CVR3DFUNC_H
00020
00021 #include "numerictypes.h"
00022 #include "numvector.h"
00023 #include "vectorfunction.h"
00024
00025 namespace MODEL
00026 {
00027
00028
00033 class CVR3DFunc : public VectorFunction<3>
00034 {
00035 public:
00036 typedef VectorFunction<3> base;
00037
00038 CVR3DFunc(const vect& r=vect(0.) ) : cr(r) {}
00039 virtual ~CVR3DFunc() {};
00040
00042 CVR3DFunc(const CVR3DFunc& c) : base(c) {copy(c);}
00043
00045 const CVR3DFunc& operator=(const CVR3DFunc& c)
00046 { if(this!=&c) {
00047 base::operator=(c); copy(c);} return *this;}
00048
00050 virtual CVR3DFunc* clone () const
00051 { return new CVR3DFunc(*this); }
00052
00053 private:
00054 void copy(const CVR3DFunc& c) {cr=c.cr;}
00055
00056 virtual const vect& function(vect& fu, const vect& u)
00057 {
00058 fu=cr;
00059 return fu;
00060 }
00061
00062 private:
00063 vect cr;
00064 };
00065
00066 } // end namespace
00067 #endif
00068
00069 /*********************************************************************
00070 $Id: cvr3dfunc.h,v 1.1 2001/05/22 10:54:55 mpeeters Exp $
00071 **********************************************************************
00072
00073 $Log: cvr3dfunc.h,v $
00074 Revision 1.1 2001/05/22 10:54:55 mpeeters
00075 Moved sources and headers for libModel to model/ subdirectory, in an attempt to rationalize the source tree. This should make things "netter".
00076
00077 Revision 1.2 2000/09/15 10:26:31 mpeeters
00078 Cleaned out header and added CVS tails to files, removed superfuous
00079 @author comments, inserted dates
00080
00081 *********************************************************************/
More Info? Michael Peeters. Also, check our research website: www.alna.vub.ac.be
Last update: June 2002.