Comments (5)
I came across a package which implements dynamic structure factor: https://dynasor.materialsmodeling.org/index.html
And the related paper: https://onlinelibrary.wiley.com/doi/10.1002/adts.202000240
from amep.
Thanks for the paper and the package. They do the dynamic structure factor really well.
Unfortunately they use their own trajectory format for all their calculations so I would have to look into that.
But I think we have two possibilities:
- We could just add
dynasor
as a dependency toamep
and write wrappers around our their stuff. - We could re-implement their algorithms and optimize them for our trajectories.
In the spirit of open software my preferred way to do this would be proposal 1.
As they are also a pure python library we would stay as platform independent as we are at the moment.
We would gain dependencies on:
ASE
and MDAnalysis
are used for trajectory reading and might also help us with more compatibility to other simulation data formats.
pandas
is used by them for data output. We already threw it out so it is really irrelevant.
On the other hand using their stuff and optimizing their upstream code for our use would improve both our and their code base.
from amep.
So now I need your opinions on what to do.
from amep.
I also think it's a better idea to implement proposal 1 after reading the advantages.
from amep.
So we talked it over. Since MDAnalysis
is a full alternative data analysis framework we do not want it as a dependency.
Also we have half of the stuff dynasor
implements already implemented in amep
. So my plan now is to implement the stuff they did in dynasor in a similar way (and maybe try some optimizations).
If I manage to make some sensible optimizations I will also send them upstream to dynasor
in the spirit of open software.
from amep.
Related Issues (20)
- BUG: evaluate.VelDist number of bins default causes error
- BUG: evaluate.Psi6dist number of bins default causes error
- FRQ: simplify how to set the plot style in plot.style()
- FRQ: extend functionality of frame.data() to accept lists
- DOC: examples for load.traj
- FRQ: Support for gsd files. Format of hoomd-blue HOT 2
- BUG: 'exclude' option does not work for 'order.nearest_neighbors' and 'order.k_nearest_neighbors' when 'other_coords' is specified
- DOC: Incorrect description of 'coords' and 'other_coords' in 'order.nearest_neighbors' and 'order.k_nearest_neighbors'
- FRQ: lattice function HOT 1
- BUG: h5amep format improvements - no zero-padding in h5amep file
- FRQ: update/append trajectory
- FRQ: allow user to supply part of a trajectory as trajectory
- FRQ: Test Suite based on the example dataset
- BUG: trajectory add/get_particle_info() not compatible with strings HOT 4
- FRQ: gsd/gromacs reader - basic features HOT 1
- FRQ: h5amep format update for constant data
- DOC: Trajectories not referencing to BaseFrame/BaseField
- FRQ: generalize utils.mesh_to_coords to 3D
- DOC: Documentation for fit functions should include mathematical expression
- BUG: LammpsReader angmom not imported
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from amep.