[Dune] Change heapsize, StructuredGridFactory, UGGrid
Carsten Gräser
graeser at math.fu-berlin.de
Tue Jan 25 23:55:06 CET 2011
Hi,
there are two way to solve this problem:
* With dune 2.0 you can construct a UGGrid with appropiate heap
size and hand it to a non-standard constructor of the factory.
* If you use the trunk you can call the new static method
UGGrid::setDefaultHeapSize(...) to set the heap size for all
subsequently constructed UGGrids.
Best,
Carsten
Am 25.01.2011 23:09, schrieb schauer at mechbau.uni-stuttgart.de:
> Hi Oliver,
>
> as far as I understand it, I do not directly call the UGGrid-constructor
> myself, but the factory does so - but I don't know how to make the
> factory do this with the wished heapsize initialization.
Th
>
> Thanks
>
> Volker
>
>
>> Hi Volker!
>> Please see the FAQ for some information on this issue.
>> best,
>> Oliver
>>
>> Am 25.01.2011 17:30, schrieb schauer:
>>> Dear Dune,
>>>
>>> I created a structured UGGrid with
>>>
>>> typedef Dune::UGGrid<dim> Grid;
>>> Dune::FieldVector<double,dim> lowerLeft(-side_length);
>>> Dune::FieldVector<double,dim> upperRight(side_length);
>>> Dune::array<unsigned int,dim> elements;
>>> std::fill(elements.begin(), elements.end(), 5);
>>> Dune::StructuredGridFactory<Grid> factory;
>>> Dune::shared_ptr<Grid> grid;
>>> grid =factory.createSimplexGrid(lowerLeft,upperRight,elements);
>>>
>>>
>>> when I globally refine 4 times
>>>
>>> grid->globalRefine(level)
>>>
>>> and run the program I receive the error message:
>>>
>>> ERROR in low/heaps.c/GetFreelistMemory: not enough memory for 152 bytes.
>>> ERROR in low/heaps.c/GetFreelistMemory: not enough memory for 152 bytes.
>>> dune_ksdft: heaps.c:646: void* UG::GetFreelistMemory(UG::HEAP*,
>>> UG::INT): Assertion `0' failed.
>>>
>>>
>>> What can I do about it ?
>>>
>>> Thanks
>>>
>>> Volker
More information about the Dune
mailing list