Hi Guillaume: This looks good -- thanks for the package! I have a basic question regarding the force computation: I had a quick look at the code and it appears to me that the current code uses an O(N^2) algorithm (direct sum) for this. Is my understanding correct? Software like LAMMPS use very efficient algorithms for short and long range potentials and this might possibly account for the fact that the benchmark is 80x slower.
I had developed a serial MD code using neighbor lists last year and I'm currently in the process of parallelizing it to study the suitability of Julia for developing (reasonably) parallel research codes. Is parallelization something you're looking into? I would be very interested in hearing about this. Thanks! Cheers, Amuthan On Tuesday, January 27, 2015 at 2:46:59 PM UTC-8, Luthaf wrote: > > Hi julians ! > > I am very happy to announce the release of Jumos, a Julia package for > molecular simulations. > > You can find the code here: https://github.com/Luthaf/Jumos.jl, and the > documentation is hosted by readthedocs : > http://jumos.readthedocs.org/en/latest/. > > This package aims at being as extensible as possible. Every algorithm is a > type that can be subtyped and changed at runtime, during the simulation. > This makes it easy to write new algorithms, experiment with them, and > combine algorithms in all the fancy ways you can imagine. > > Presently, only molecular dynamic is implemented, but I am planning to > add energy minimisation, and trajectory replay from files (maybe > monte-carlo simulations if I find some time). A handful of tools are > already implemented : > - Velocity-Verlet and Verlet integrator; > - Lennard-Jones and Harmonic potential; > - User-defined potentials; > - RDF and density profile analysis; > - Berendsen thermostat; > - Velocity-rescale thermostat; > - Temperature and energy computations. > > And a lot more are planned: https://github.com/Luthaf/Jumos.jl/issues. > If you want to help, contributions are very welcome ! Just pick up an > issue or create a new one as a feature request. > The first benchmark (against LAMMPS) gives me a speed 80 times slower > than LAMMPS. This is already great for a dynamic language, but there is > still room for improvement ! > > Any feedback on the implementation is also very welcome. > > Regards > Guillaume > > PS: What does the ANN in the title mean ? It seems to be everywhere, but I > don't have any clue about its meaning > >
