diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 07f43a5..863b277 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -202,6 +202,7 @@ To create a custom workflow, extend `DDMD_manager`: ```python from ddmd import DDMD_manager + class MyWorkflow(DDMD_manager): def __init__(self, asyncflow, **kwargs): super().__init__(asyncflow) @@ -212,20 +213,15 @@ class MyWorkflow(DDMD_manager): pass # Implement required abstract methods - def stop_simulation(self, prediction): - ... + def stop_simulation(self, prediction): ... - async def init_sim_queue(self): - ... + async def init_sim_queue(self): ... - async def check_train_data(self): - ... + async def check_train_data(self): ... - async def train_model(self): - ... + async def train_model(self): ... - async def clean_sim_data(self, sim_ind): - ... + async def clean_sim_data(self, sim_ind): ... ``` ## Questions? diff --git a/README.md b/README.md index 55087c7..1ef373c 100644 --- a/README.md +++ b/README.md @@ -114,7 +114,7 @@ class DDMdWrapperWorkflow(BaseWorkflow): asyncflow=self.asyncflow, config=replica_config_path, name=replica_id.replace("_", ""), - on_ready=lambda: self._signal_done(), # ← CM hook + on_ready=lambda: self._signal_done(), # ← CM hook policies=self.policies, engine_dragon=self.engine_dragon, ) diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml new file mode 100644 index 0000000..a890571 --- /dev/null +++ b/recipe/recipe.yaml @@ -0,0 +1,61 @@ +# conda-forge staged-recipes candidate (v1 format). +# TODO before submission: DDSim needs a first PyPI release — fill in the +# real version + sha256 of that sdist. Submission also waits for +# rhapsody-py and radical.asyncflow to be published on conda-forge +# (staged-recipes #34581). +schema_version: 1 + +context: + name: ddsim + version: "0.2.0" + +package: + name: ${{ name|lower }} + version: ${{ version }} + +source: + url: https://pypi.org/packages/source/d/ddsim/ddsim-${{ version }}.tar.gz + sha256: TODO-fill-after-first-pypi-release + +build: + number: 0 + noarch: python + script: python -m pip install . -vv --no-deps --no-build-isolation + +requirements: + host: + - python ${{ python_min }}.* + - setuptools >=61.0 + - wheel + - pip + run: + - python >=${{ python_min }} + - pyyaml + - rhapsody-py + - radical.asyncflow >=0.3.0 + +tests: + - python: + imports: + - ddsim + pip_check: true + python_version: + - ${{ python_min }}.* + - "*" + +about: + homepage: https://github.com/radical-collaboration/DeepDriveSim + summary: AI-driven adaptive molecular dynamics simulation framework + description: | + DeepDriveSim (DDSim) couples AI-driven steering with ensemble + molecular dynamics workflows, built on RHAPSODY and + RADICAL-AsyncFlow. The optional Dragon backend is installed + separately (`pip install dragonhpc`). + license: MIT + license_file: LICENSE + documentation: https://radical-collaboration.github.io/DeepDriveSim/ + repository: https://github.com/radical-collaboration/DeepDriveSim + +extra: + recipe-maintainers: + - andre-merzky