[Dune] Geometry.volume() paradigm for CurvilinearGeometry

Aleksejs Fomins aleksejs.fomins at lspr.ch
Mon Feb 23 12:09:15 CET 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dear Dune,

I don't remember if I asked this question before, but it bothers me.

In CurvilinearGeometry, all entities are non-linear, and therefore,
finding their volume requires an iterative procedure. Naturally, such
computation will have finite precision. That is, the method
geometry.volume() has to be provided with a constant specifying the
relative integration error. Currently this is done internally.

The problem is that the integration time depends strongly on the
expected error, and, therefore, the user should have access to this
parameter, to specify precision satisfactory for their needs.

Proposed solutions:
1) geometry.volume() becomes geometry.volume(tolerance)

2) geometry.volume() returns linear volume as in other grids. Geometry
class gains an extra method geometry.curvVolume(tolerance).

3) extra command line constant (like config.h)

What are your suggestions?

Thanks,
Aleksejs
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQIcBAEBAgAGBQJU6wpaAAoJEDkNM7UOEwMZP78QAMpRrmJsSrmI1l8kIfl7ZjVs
IIIIxOCaR14xW5FWy331E4OEjyokYcPL2LKNn554zCEMy+Z2MPNVVBPlgaXjbWRv
ilhW7Wb38MCItmATQTrZMkFUwvUhIS4Tmz++V2XrU6jGcPlzkC/DTZ2D80WDfiJJ
um7og0ePxFx9AyvQvW6zzfh+tx2sbdegG0ojVskMUgxGJMDM7L90RBGQdU7soY0z
uHAenbWHN0L7e835bQ4OGqwPdD7+25UjOUlhXjS+81AdqRpFlx+fJeFrMzBs66vF
CV1jx6BeX/QwX4d4lugADQHPQPZ+dHbnP37AJq9pn4t0zM2QcERxg/9OCdCRHPHh
/rrYnE4ZBlSn/n4EcZOByWFi988mCQdIGje1DRau0Ft1jOnELBHRSQaXyMKd/MUa
GFNm1M1D3A+ucamEG/YTgYTk+9ZXnf3M9n2pxMeZn+4SzzJfPnKKj5ndD9Xcb7OC
bGnHgnXY8Ej0WRWV4PMxjbBui9lj+Crk96umzW3U1GQZVbwHeLS/ZFRPL8f18xy6
k85TN4OWMOed28XcUM8IHITCpbc4tJfdNk22K+Yha7ksXX7uT5hJxugTbQpSVYnL
VWM1Wl6aC/yFKi5EkITKD5+dvgKHwvZww2waUE25fN7IsnG1V3zwjmWoE9oH3prz
N50bAV/FZZ/Aj0NlVkhi
=J77H
-----END PGP SIGNATURE-----




More information about the Dune mailing list