-
Notifications
You must be signed in to change notification settings - Fork 30
Main features
Stefano Zaghi edited this page Sep 15, 2015
·
4 revisions
FOODiE has many features, here the main ones are listed.
- Pure Fortran implementation;
- KISS and user-friendly:
- simple API, presently based on the Rouson's Abstract Data Type Pattern [1];
- easy building and porting on heterogeneous architectures;
- comprehensive:
- explicit Euler scheme, 1st order accurate;
- explicit Runge-Kutta schemes:
- TVD or SSP schemes, see [2]:
- 1 stage, namely the forward explicit Euler scheme, 1st order accurate;
- 2 stages, 2nd order accurate;
- 3 stages, 3rd order accurate;
- 4 stages;
- 5 stages, 4th order accurate;
- TVD or SSP schemes, see [2]:
- implicit Runge-Kutta schemes;
- low-storage explicit schemes, see [2,3,3];
- Leapfrog, 2nd order accurate:
- Robert-Asselin filter, for stability and leapfrog, 1st order accurate;
- Robert-Asselin-Williams filter, for stability and leapfrog, 3rd order accurate;
- Adams-Bashforth variants of 2nd and 3rd order accurate;
- efficient:
- high scalability on parallel architectures:
- support for shared memory multi/many cores architecture;
- support for distributed memory cluster;
- support for GPGPU/accelerators device;
- high scalability on parallel architectures:
- Tests-Driven Developed (TDD):
- well documented:
- clear documentation of schemes implementations;
- complete API reference;
- comprehensive wiki:
- collaborative developed;
- FOSS licensed;