TODO List of improvements and fixes in YADE
This is the list of all possible tasks and ideas to be done in Yade. Tasks can be solved during some students works, contents etc. Task can be moved into a separated issue.
Original meeting notes:
- Polyhedra needs some fixes and attention #242
- Answers service on launchpad is being backed up. It should be automated.
- Reduce compilation time. It should be checked, whether the preprocessed .i-files can be reduced
- Run include-what-you-use script
- Use native C++
Real
type on python side. So basically remove dependency on pythonmpmath
. Remove classPyClassCustom
and improve on !685 (closed) instead of !678 (merged). - Replace
shared_ptr
on C++ side withconst variable&
in function calls (changes signature of almost every function). Useshared_ptr
only in containers. On C++/python boundary useshared_from_this()
function which was added in !651 (merged). - Faster type casting #199, use
Indexable
class to providedynamic_cast
functionality with speed ofstatic_cast
, with the casting map created somewhere inbuildDynlibDatabase
. Use example code from #199 to start. - add support for more architectures, e.g. mips64el, use qemu docker or chroot for testing. See for example !588 (merged). Use compiler flags such as
-Wcast-align
to help in solving crashes. - Use
boost::units
for all physical quantities in the code, use C++ literals to write in C++ assignments like:d=11_mm;
,t=5_s;
,p=15_Pa;
. Enjoy unit dimensional checking by the compiler during compilation or allow to disable it if someone doesn't want it, then e.g.p=15_Pa;
just returns theReal
type instead ofPascal
. - Add PEFRL time integrator, see short discussion in !555 (merged).
-
Use pybind in place of boost::python (to boost compilation),see comment below - Improve save files compatibility between versions, also load & save python variables from the script.
- For more items see wishlist
Edited by bchareyre