ESYS13
Revision_
|
00001 00002 /******************************************************* 00003 * 00004 * Copyright (c) 2003-2012 by University of Queensland 00005 * Earth Systems Science Computational Center (ESSCC) 00006 * http://www.uq.edu.au/esscc 00007 * 00008 * Primary Business: Queensland, Australia 00009 * Licensed under the Open Software License version 3.0 00010 * http://www.opensource.org/licenses/osl-3.0.php 00011 * 00012 *******************************************************/ 00013 00014 00015 #if !defined dudley_MeshAdapterFactory_20040526_H 00016 #define dudley_MeshAdapterFactory_20040526_H 00017 #include "system_dep.h" 00018 00019 #include "MeshAdapter.h" 00020 00021 #include "escript/AbstractContinuousDomain.h" 00022 00023 #include <boost/python/list.hpp> 00024 00025 #include <sstream> 00026 00027 namespace dudley { 00041 DUDLEY_DLL_API 00042 /* escript::AbstractContinuousDomain* loadMesh(const std::string& fileName);*/ 00043 escript::Domain_ptr loadMesh(const std::string& fileName); 00054 DUDLEY_DLL_API 00055 // escript::AbstractContinuousDomain* readMesh(const std::string& fileName, 00056 escript::Domain_ptr readMesh(const std::string& fileName, 00057 int integrationOrder=-1, 00058 int reducedIntegrationOrder=-1, 00059 int optimize=0); 00072 DUDLEY_DLL_API 00073 // escript::AbstractContinuousDomain* readGmsh(const std::string& fileName, 00074 escript::Domain_ptr readGmsh(const std::string& fileName, 00075 int numDim, 00076 int integrationOrder=-1, 00077 int reducedIntegrationOrder=-1, 00078 int optimize=0, 00079 int useMacroElements=0); 00098 DUDLEY_DLL_API 00099 escript::Domain_ptr brick(double n0=1,double n1=1,double n2=1,int order=1, 00100 double l0=1.0,double l1=1.0,double l2=1.0, 00101 int periodic0=0,int periodic1=0, 00102 int periodic2=0, 00103 int integrationOrder=-1, 00104 int reducedIntegrationOrder=-1, 00105 int useElementsOnFace=0, 00106 int useFullElementOrder=0, 00107 int optimize=0); 00108 00128 DUDLEY_DLL_API 00129 escript::Domain_ptr rectangle(double n0=1,double n1=1,int order=1, 00130 double l0=1.0, double l1=1.0, 00131 int periodic0=false,int periodic1=false, 00132 int integrationOrder=-1, 00133 int reducedIntegrationOrder=-1, 00134 int useElementsOnFace=0, 00135 int useFullElementOrder=0, 00136 int optimize=0); 00137 00138 // /** 00139 // \brief 00140 // Merges a list of meshes into one list. 00141 // \param meshList Input - The list of meshes. 00142 // */ 00143 // DUDLEY_DLL_API 00144 // // escript::AbstractContinuousDomain* meshMerge(const boost::python::list& meshList); 00145 // escript::Domain_ptr meshMerge(const boost::python::list& meshList); 00146 00147 00148 } // end of namespace 00149 #endif