cloudlab-cmu / cloudcompchem Goto Github PK
View Code? Open in Web Editor NEWCloud Comp Chem
Cloud Comp Chem
Follow the example of SinglePointEnergyResponse.
Add controller code and extend CLI for hessian calculations.
Validate the input to ensure correctness, reject the request properly if an invalid state is detected.
Handle any runtime errors in a graceful way*
Develop geometry opt input JSON payload (look at energy payload for reference)
Build out scaffolding for handling Hessian calculation response. For the request payload, you may re-use the same structure as the EnergyRequest
. The response payload must include a value for a hessian
which should be a square matrix.
Ask about using shared resources to route requests from CMU students to HPC systems
Goal is to start using pydantic models for automated type checking, validation, and (un)marshaling of json strings into structs. FastAPI supports this out of the box, while Flask doesn't, so we're going to switch now before the code gets too complicated.
We would like to enable async runtime for the webserver of cloudcompchem. This does not need to run locally; the requirement is that users may want to run a lot of a couple long running calculations that they don't want to wait around for.
Build the calculator for a geometry optimization in pyscf
Create the tests
Add initial scaffolding for interact with a deployed service, thus making it very simple for users to run calculations using cloud resources.
add orbital energies in addition to new changes to app structure
Need to define request (e.g. VibrationalEnergyRequest
) and response (e.g. VibrationalEnergyResponse
) structures that allow users to calculate vibrational frequencies and eigenvectors/modes. Request packet needs to contain enough information to run a vibrational calculation for a given molecule. The response packet needs to contain, at minimum, the vibrational energies and mode vectors.
Write the code required to serve vibrational calculation requests. Include all relevant tests to ensure proper handling of all edge cases
As soon as cloudcompchem.emeraldcloudlab.com
is deployed, change the url
key in the Client
object to point to it.
Create endpoint for calculating the density matrix for a given molecule using the molecular orbital coefficients in a SCF calculation.
Quick validation function that checks the combination of charge and spin multiplicity for all DFT inputs.
See this for a minimal example of how to implement the logic.
Switch the energy
endpoint from using dataclasses to pydantic base models
Write any server and controller code that handles incoming and outgoing JSON requests/responses. Include all relevant tests in the test_server.py
file (or feel free to split into another file if necessary).
Think of a fancy branding name for our project!
Something like:
cloudcompchem.emeraldcloudlab.com
compchem.emeraldcloudlab.com
science.emeraldcloudlab.com
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.