Skip to content

local (especially Jupyter Notebook) dev / debug? #45

Description

@m-k-S

Hi, I'm very interested in using Psiflow to set up MD experiments but I'm trying to get it running on my local machine before plugging it into e.g. the HPC cluster I have access to. However, I have a lot of issues doing this. For example, when I try to run the H2 static/dynamic example, I get:

RuntimeError                              Traceback (most recent call last)
Cell In[8], [line 63](vscode-notebook-cell:?execution_count=8&line=63)
     [54](vscode-notebook-cell:?execution_count=8&line=54)     return frequencies[-1] * second / (100 * _c)
     [58](vscode-notebook-cell:?execution_count=8&line=58) geometry = Geometry.from_data(
     [59](vscode-notebook-cell:?execution_count=8&line=59)     numbers=np.ones(2),
     [60](vscode-notebook-cell:?execution_count=8&line=60)     positions=np.array([[0, 0, 0], [0.8, 0, 0]]),
     [61](vscode-notebook-cell:?execution_count=8&line=61)     cell=None,
     [62](vscode-notebook-cell:?execution_count=8&line=62) )
---> [63](vscode-notebook-cell:?execution_count=8&line=63) mace = MACEHamiltonian.mace_mp0()
     [65](vscode-notebook-cell:?execution_count=8&line=65) dynamic = frequency_dynamic(geometry, mace)
     [66](vscode-notebook-cell:?execution_count=8&line=66) static = frequency_static(geometry, mace)

File ~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:416, in MACEHamiltonian.mace_mp0(cls, size)
    [411](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:411) urls = dict(
    [412](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:412)     small="https://github.com/ACEsuit/mace-mp/releases/download/mace_mp_0/2023-12-10-mace-128-L0_energy_epoch-249.model",  # 2023-12-10-mace-128-L0_energy_epoch-249.model
    [413](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:413)     large="https://github.com/ACEsuit/mace-mp/releases/download/mace_mp_0/2023-12-03-mace-128-L1_epoch-199.model",
    [414](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:414) )
    [415](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:415) assert size in urls
--> [416](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:416) parsl_file = psiflow.context().new_file("mace_mp_", ".pth")
    [417](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:417) urllib.request.urlretrieve(
    [418](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:418)     urls[size],
    [419](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:419)     parsl_file.filepath,
    [420](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:420) )
    [421](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/hamiltonians.py:421) return cls(parsl_file, {})
...
    [598](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/execution.py:598)     if cls._context is None:
--> [599](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/execution.py:599)         raise RuntimeError("No ExecutionContext is currently loaded")
    [600](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/execution.py:600)     return cls._context

RuntimeError: No ExecutionContext is currently loaded

And when I try to run the basic geometry example, I get:

AssertionError                            Traceback (most recent call last)
Cell In[7], [line 7](vscode-notebook-cell:?execution_count=7&line=7)
      [3](vscode-notebook-cell:?execution_count=7&line=3) from psiflow.geometry import Geometry
      [6](vscode-notebook-cell:?execution_count=7&line=6) # a simple H2 molecule in vacuum
----> [7](vscode-notebook-cell:?execution_count=7&line=7) geometry = Geometry.from_string(
      [8](vscode-notebook-cell:?execution_count=7&line=8) '''
      [9](vscode-notebook-cell:?execution_count=7&line=9)     2
     [10](vscode-notebook-cell:?execution_count=7&line=10)     H 0.0 0.0 0.0
     [11](vscode-notebook-cell:?execution_count=7&line=11)     H 0.0 0.0 0.8
     [12](vscode-notebook-cell:?execution_count=7&line=12) ''')
     [14](vscode-notebook-cell:?execution_count=7&line=14) # the same H2 molecule using ase Atoms
     [15](vscode-notebook-cell:?execution_count=7&line=15) atoms = ase.Atoms(
     [16](vscode-notebook-cell:?execution_count=7&line=16)             numbers=[1, 1, 1],
     [17](vscode-notebook-cell:?execution_count=7&line=17)             positions=[[0, 0, 0], [0, 0, 0.8]],
     [18](vscode-notebook-cell:?execution_count=7&line=18)             pbc=False,
     [19](vscode-notebook-cell:?execution_count=7&line=19)             )

File ~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/geometry.py:184, in Geometry.from_string(cls, s, natoms)
    [180](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/geometry.py:180) else:
    [181](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/geometry.py:181)     lines = s.rstrip().split(
    [182](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/geometry.py:182)         "\n"
    [183](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/geometry.py:183)     )  # i-PI nonperiodic starts with empty -> rstrip!
--> [184](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/geometry.py:184) assert len(lines) == natoms + 1
    [185](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/geometry.py:185) comment = lines[0]
    [186](https://file+.vscode-resource.vscode-cdn.net/Users/muon/Documents/materials/curie/~/miniforge3/envs/md/lib/python3.10/site-packages/psiflow/geometry.py:186) comment_dict = key_val_str_to_dict_regex(comment)

AssertionError:

Are Psiflow scripts not intended to be developed locally? Is there any guide on how to get it working in a Jupyter notebook? I am running Python 3.10.15, a fresh Conda virtual env and installed Psiflow via pip.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions