ferchault / iago Goto Github PK
View Code? Open in Web Editor NEWImplicit Archiver for Generated Observables
License: MIT License
Implicit Archiver for Generated Observables
License: MIT License
The documentation-Get Started need updated:
import iago
lg = iago.get_location_group()
lg.get_bucket_list()
db = lg.fetch_database('ubqTUTORIAL')
If do not have get_bucket_list() before fetch_database:
import iago
lg = iago.get_location_group()
\#lg.get_bucket_list()
db = lg.fetch_database('ubqTUTORIAL')
The error messages are the following:
AttributeError Traceback (most recent call last)
in ()
2 lg = iago.get_location_group()
3 #lg.get_bucket_list()
----> 4 db = lg.fetch_database('ubqTUTORIAL')
/scratch/xjiang/anaconda2/lib/python2.7/site-packages/iago/LocationProvider.pyc in fetch_database(self, bucket)
121
122 def fetch_database(self, bucket):
--> 123 row = self._get_bucket_from_name_or_id(bucket)
124 format = None
125 ephemeral = False
/scratch/xjiang/anaconda2/lib/python2.7/site-packages/iago/LocationProvider.pyc in _get_bucket_from_name_or_id(self, bucket)
108
109 def _get_bucket_from_name_or_id(self, bucket):
--> 110 if bucket in self._buckets.id.values:
111 rows = self._buckets[self._buckets.id == bucket]
112 elif bucket in self._buckets.name.values:
AttributeError: 'NoneType' object has no attribute 'id'
On the way towards windows support, alternatives for MDAnalysis have to be provided, e.g. mdtraj. For this, we need infrastructure...
Steps:
When analysing a bucket, we can have several runs prepared with different codes. iago has to tell them apart.
Steps:
Class method iago.Analyser.dynamic_distance()
may not properly support non-rectangular unit cells. Fix code and add test case.
Steps:
When using a JSON database, iago fails to recognise the desired output format which ultimately makes any analyser script to fail.
CP2K may be used with more than PSF topology files (e.g. one PSF per different kind of molecules). The code is not ready for that.
Now: modify the CP2K input to print a unique full-system PSF using:
https://manual.cp2k.org/cp2k-4_1-branch/CP2K_INPUT/FORCE_EVAL/SUBSYS/TOPOLOGY/DUMP_PSF.html
Create integration tests for file access using the unit test framework.
Expose energy-like data to the user.
For analysing atomistic trajectories, the gromacs code has well-tested and fast C++ implementations. We should leverage this by converting our trajectory data to their format (there are open-source libraries for that) and then feed it to their toolchain. Finally, the output (plain-text) has to be parsed back for storage in the database.
Steps:
Within the UCL network, we can connect with ssh the UCL machines without using the socrates gateway.
It could be useful to connect the UCL machines from outside.
When investigating trajectories, it is often helpful to get a quick visualisation of parts of the system.
We should create a jupyter notebook widget that can show the 3D coordinates of atoms in space either as 3d rotatable frame or as projection on an arbitrary rotatable 2d plane. We should be able to update the geometry and show the video when the user seeks through the molecular dynamics data.
It is crucial that this visualisation is fast and interactive. We should support major browsers, but may focus on OpenGL if required.
Currently, we can understand CP2K log and input files. We should add the following codes: namd2, AMBER, gromacs.
Since the data structure in the database is already prepared this consists of the following steps:
Optionally, suggest additional data special to the codes to be included in the database.
CP2K may print the coordinates in XYZ format which does not contain information on the box size.
With ensembles NVE/NVT: this information are present in the input file.
With ensembles NPT: in another file.
Now: use DCD format only.
When accessing remote data, we need a possibility for sequential and random access for both binary and text files. For small files, transferring the whole file should be faster than seeking.
Common protocols are SFTP (paramiko) and HTTP (requests). Using rclone for further protocol support should be fine.
Steps:
Introduce a new flag to plane fitting: raise_error. If True, undetermined planes due to missing atoms or collinearity raise an error. Default False.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.