diff --git a/src/harmonicmaps.cc b/src/harmonicmaps.cc index decf7257b01400c7fa0152bd05ec8c86d1315680..c53ef0be50ae6d6c577511f3897a08d54f26d7ca 100644 --- a/src/harmonicmaps.cc +++ b/src/harmonicmaps.cc @@ -106,23 +106,27 @@ int main (int argc, char *argv[]) try const bool instrumented = parameterSet.get<bool>("instrumented"); std::string resultPath = parameterSet.get("resultPath", ""); - // read problem settings - std::string path = parameterSet.get<std::string>("path"); - std::string gridFile = parameterSet.get<std::string>("gridFile"); - // /////////////////////////////////////// // Create the grid // /////////////////////////////////////// typedef std::conditional<dim==1,OneDGrid,UGGrid<dim> >::type GridType; shared_ptr<GridType> gridPtr; - if (parameterSet.get<std::string>("gridType")=="structured") { - array<unsigned int,dim> elements; - elements.fill(3); - gridPtr = StructuredGridFactory<GridType>::createSimplexGrid(FieldVector<double,dim>(0), - FieldVector<double,dim>(1), - elements); + FieldVector<double,dim> lower(0), upper(1); + + if (parameterSet.get<bool>("structuredGrid")) { + + lower = parameterSet.get<FieldVector<double,dim> >("lower"); + upper = parameterSet.get<FieldVector<double,dim> >("upper"); + + array<unsigned int,dim> elements = parameterSet.get<array<unsigned int,dim> >("elements"); + gridPtr = StructuredGridFactory<GridType>::createCubeGrid(lower, upper, elements); + } else { + + std::string path = parameterSet.get<std::string>("path"); + std::string gridFile = parameterSet.get<std::string>("gridFile"); + gridPtr = shared_ptr<GridType>(AmiraMeshReader<GridType>::read(path + gridFile)); } diff --git a/src/harmonicmaps.parset b/src/harmonicmaps.parset index 358c0ed0e4cf2d8e6ef925d509c3f7ef2f4ecb46..52ffe12d0c79e5ca060ef5498a8f717d5fce88da 100644 --- a/src/harmonicmaps.parset +++ b/src/harmonicmaps.parset @@ -39,11 +39,16 @@ instrumented = 0 ############################ # 2d problem -#gridType = unstructured +#structuredGrid = false #path = /home/sander/data/richards/twosquares/ #gridFile = twosquares0.grid # 3d problem -gridType = unstructured -path = /home/sander/data/contact/tetracubes/ -gridFile = tetracube0.grid +#structuredGrid = false +#path = /home/sander/data/contact/tetracubes/ +#gridFile = tetracube0.grid + +structuredGrid = true +lower = -10 -10 +upper = 10 10 +elements = 100 100