/[escript]/branches/diaplayground/dudley/src/CPPAdapter/dudleycpp.cpp
ViewVC logotype

Diff of /branches/diaplayground/dudley/src/CPPAdapter/dudleycpp.cpp

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

trunk/dudley/src/CPPAdapter/dudleycpp.cpp revision 4154 by jfenwick, Tue Jan 22 09:30:23 2013 UTC branches/diaplayground/dudley/src/CPPAdapter/dudleycpp.cpp revision 4940 by caltinay, Thu May 15 01:40:06 2014 UTC
# Line 1  Line 1 
1    
2  /*****************************************************************************  /*****************************************************************************
3  *  *
4  * Copyright (c) 2003-2013 by University of Queensland  * Copyright (c) 2003-2014 by University of Queensland
5  * http://www.uq.edu.au  * http://www.uq.edu.au
6  *  *
7  * Primary Business: Queensland, Australia  * Primary Business: Queensland, Australia
# Line 9  Line 9 
9  * http://www.opensource.org/licenses/osl-3.0.php  * http://www.opensource.org/licenses/osl-3.0.php
10  *  *
11  * Development until 2012 by Earth Systems Science Computational Center (ESSCC)  * Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12  * Development since 2012 by School of Earth Sciences  * Development 2012-2013 by School of Earth Sciences
13    * Development from 2014 by Centre for Geoscience Computing (GeoComp)
14  *  *
15  *****************************************************************************/  *****************************************************************************/
16    
# Line 17  Line 18 
18  #ifdef ESYS_MPI  #ifdef ESYS_MPI
19  #include "esysUtils/Esys_MPI.h"  #include "esysUtils/Esys_MPI.h"
20  #endif  #endif
 extern "C" {  
21  #include "../Dudley.h"  #include "../Dudley.h"
 }  
22    
23  #include <pasowrap/SystemMatrixAdapter.h>  #include <pasowrap/SystemMatrixAdapter.h>
24  #include <pasowrap/TransportProblemAdapter.h>  #include <pasowrap/TransportProblemAdapter.h>
# Line 56  BOOST_PYTHON_MODULE(dudleycpp) Line 55  BOOST_PYTHON_MODULE(dudleycpp)
55    // NOTE: The return_value_policy is necessary for functions that    // NOTE: The return_value_policy is necessary for functions that
56    // return pointers.    // return pointers.
57    //    //
58    register_exception_translator<dudley::DudleyAdapterException>(&(esysUtils::esysExceptionTranslator));    register_exception_translator<dudley::DudleyAdapterException>(&(esysUtils::RuntimeErrorTranslator));
59    
60    def("LoadMesh",dudley::loadMesh,    def("LoadMesh",dudley::loadMesh,
61        (arg("fileName")="file.nc"),":rtype: `Domain`"        (arg("fileName")="file.nc"),":rtype: `Domain`"
# Line 90  BOOST_PYTHON_MODULE(dudleycpp) Line 89  BOOST_PYTHON_MODULE(dudleycpp)
89  ":param useMacroElements: Enable the usage of macro elements instead of second order elements.\n:type useMacroElements: ``bool``"  ":param useMacroElements: Enable the usage of macro elements instead of second order elements.\n:type useMacroElements: ``bool``"
90  );  );
91    
92    def ("Brick",dudley::brick,    def ("__Brick_driver",dudley::brick_driver,
93          arg("args"),
94    /*      
95        (arg("n0")=1,arg("n1")=1,arg("n2")=1,        (arg("n0")=1,arg("n1")=1,arg("n2")=1,
96        arg("order")=1,        arg("order")=1,
97        arg("l0")=1.0,arg("l1")=1.0,arg("l2")=1.0,        arg("l0")=1.0,arg("l1")=1.0,arg("l2")=1.0,
# Line 99  BOOST_PYTHON_MODULE(dudleycpp) Line 100  BOOST_PYTHON_MODULE(dudleycpp)
100        arg("useElementsOnFace")=false,        arg("useElementsOnFace")=false,
101        arg("useFullElementOrder")=false,        arg("useFullElementOrder")=false,
102        arg("optimize")=false)        arg("optimize")=false)
103  ,"Creates a tetrahedral mesh by subdividing n0 x n1 x n2 rectangular elements over the brick [0,l0] x [0,l1] x [0,l2]."  */      
104    "Creates a tetrahedral mesh by subdividing n0 x n1 x n2 rectangular elements over the brick [0,l0] x [0,l1] x [0,l2]."
105  "We accept floating point values for n0, n1 only to ease transition of scripts to python3 when the time comes."  "We accept floating point values for n0, n1 only to ease transition of scripts to python3 when the time comes."
106  "\n\n:param n0:\n:type n0:\n:param n1:\n:type n1:\n:param n2:\n:type n2:\n"  "\n\n:param n0:\n:type n0:\n:param n1:\n:type n1:\n:param n2:\n:type n2:\n"
107  ":param order: =1, =-1 or =2 gives the order of shape function. If -1 macro elements of order 1 are used.\n"  ":param order: =1, =-1 or =2 gives the order of shape function. If -1 macro elements of order 1 are used.\n"
# Line 114  BOOST_PYTHON_MODULE(dudleycpp) Line 116  BOOST_PYTHON_MODULE(dudleycpp)
116  ":param optimize: Enable optimisation of node labels\n:type optimize: ``bool``"  ":param optimize: Enable optimisation of node labels\n:type optimize: ``bool``"
117  );  );
118    
119    def ("Rectangle",dudley::rectangle,    def ("__Rectangle_driver",dudley::rectangle_driver,
120          arg("args"),
121    /*      
122        (arg("n0")=1,arg("n1")=1,arg("order")=1,        (arg("n0")=1,arg("n1")=1,arg("order")=1,
123        arg("l0")=1.0,arg("l1")=1.0,        arg("l0")=1.0,arg("l1")=1.0,
124        arg("periodic0")=false,arg("periodic1")=false,        arg("periodic0")=false,arg("periodic1")=false,
# Line 122  BOOST_PYTHON_MODULE(dudleycpp) Line 126  BOOST_PYTHON_MODULE(dudleycpp)
126        arg("useElementsOnFace")=false,        arg("useElementsOnFace")=false,
127        arg("useFullElementOrder")=false,        arg("useFullElementOrder")=false,
128        arg("optimize")=false)        arg("optimize")=false)
129  ,"Creates a triangular mesh by subdividing n0 x n1 rectangular elements over the brick [0,l0] x [0,l1]."  */      
130    "Creates a triangular mesh by subdividing n0 x n1 rectangular elements over the brick [0,l0] x [0,l1]."
131  "We accept floating point values for n0, n1 only to ease transition of scripts to python3 when the time comes."  "We accept floating point values for n0, n1 only to ease transition of scripts to python3 when the time comes."
132  "\n\n:param n0:\n:type n0:\n:param n1:\n:type n1:\n"  "\n\n:param n0:\n:type n0:\n:param n1:\n:type n1:\n"
133  ":param order: =1, =-1 or =2 gives the order of shape function. If -1 macro elements of order 1 are used.\n"  ":param order: =1, =-1 or =2 gives the order of shape function. If -1 macro elements of order 1 are used.\n"
# Line 221  args("theta", "blocksize", "functionspac Line 226  args("theta", "blocksize", "functionspac
226  )  )
227        .def("getSystemMatrixTypeId",&dudley::MeshAdapter::getSystemMatrixTypeId,        .def("getSystemMatrixTypeId",&dudley::MeshAdapter::getSystemMatrixTypeId,
228  args("solver", "preconditioner", "package", "symmetry"),  args("solver", "preconditioner", "package", "symmetry"),
229  ":return: the identifier of the matrix type to be used for the global stiffness matrix when a particular solver, package, perconditioner, and symmetric matrix is used.\n"  ":return: the identifier of the matrix type to be used for the global stiffness matrix when a particular solver, package, preconditioner, and symmetric matrix is used.\n"
230  ":rtype: ``int``\n"  ":rtype: ``int``\n"
231  ":param solver:\n:type solver: ``int``\n"  ":param solver:\n:type solver: ``int``\n"
232  ":param preconditioner:\n:type preconditioner: ``int``\n"  ":param preconditioner:\n:type preconditioner: ``int``\n"
# Line 230  args("solver", "preconditioner", "packag Line 235  args("solver", "preconditioner", "packag
235  )  )
236        .def("getTransportTypeId",&dudley::MeshAdapter::getTransportTypeId,        .def("getTransportTypeId",&dudley::MeshAdapter::getTransportTypeId,
237  args("solver", "preconditioner", "package", "symmetry"),  args("solver", "preconditioner", "package", "symmetry"),
238  ":return: the identifier of the transport problem type to be used when a particular solver, perconditioner, package and symmetric matrix is used.\n"  ":return: the identifier of the transport problem type to be used when a particular solver, preconditioner, package and symmetric matrix is used.\n"
239  ":rtype: ``int``\n"  ":rtype: ``int``\n"
240  ":param solver:\n:type solver: ``int``\n"  ":param solver:\n:type solver: ``int``\n"
241  ":param preconditioner:\n:type preconditioner: ``int``\n"  ":param preconditioner:\n:type preconditioner: ``int``\n"

Legend:
Removed from v.4154  
changed lines
  Added in v.4940

  ViewVC Help
Powered by ViewVC 1.1.26