Skip to content

Commit

Permalink
Linter
Browse files Browse the repository at this point in the history
  • Loading branch information
ceriottm committed Nov 19, 2023
1 parent 1a18788 commit 07eefc3
Show file tree
Hide file tree
Showing 4 changed files with 96 additions and 20 deletions.
60 changes: 51 additions & 9 deletions ipi/engine/forces.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ class ForceBead:

def __init__(self):
"""Initialises ForceBead."""

# ufvx is a list [ u, f, vir, extra ] which stores the results of the force calculation
self._ufvx = depend_value(name="ufvx", func=self.get_all)
self._threadlock = threading.Lock()
Expand All @@ -99,7 +99,7 @@ def bind(self, atoms, cell, ff, output_maker):
self.atoms = atoms
self.cell = cell
self.ff = ff

# ufvx depends on the atomic positions and on the cell
self._ufvx.add_dependency(dd(self.atoms).q)
self._ufvx.add_dependency(dd(self.cell).h)
Expand Down Expand Up @@ -256,7 +256,11 @@ def get_extra(self):

return self.ufvx[3]

inject_depend_properties(ForceBead, ["ufvx", "pot", "vir", "f", "extra", "fx", "fy", "fz"])

inject_depend_properties(
ForceBead, ["ufvx", "pot", "vir", "f", "extra", "fx", "fy", "fz"]
)


class ForceComponent:
"""Computes one component (e.g. bonded interactions) of the force.
Expand Down Expand Up @@ -511,7 +515,11 @@ def get_vir(self):
vir += v
return vir

inject_depend_properties(ForceComponent, ["weight", "f", "pots", "pot", "virs", "vir", "extras"])

inject_depend_properties(
ForceComponent, ["weight", "f", "pots", "pot", "virs", "vir", "extras"]
)


class ScaledForceComponent:
def __init__(self, baseforce, scaling=1):
Expand Down Expand Up @@ -588,7 +596,12 @@ def get_vir(self):
def queue(self):
pass # this should be taken care of when the force/potential/etc is accessed

inject_depend_properties(ScaledForceComponent, ["weight", "scaling", "f", "pots", "pot", "virs", "vir", "extras"])

inject_depend_properties(
ScaledForceComponent,
["weight", "scaling", "f", "pots", "pot", "virs", "vir", "extras"],
)


class Forces:

Expand Down Expand Up @@ -781,8 +794,7 @@ def make_rpc(rpc, beads):
)

self._potsc = depend_value(
name="potsc", dependencies=[self._potssc],
func=(lambda: self.potssc.sum())
name="potsc", dependencies=[self._potssc], func=(lambda: self.potssc.sum())
)

# The coefficients of the physical and the |f|^2 terms
Expand Down Expand Up @@ -943,7 +955,9 @@ def transfer_forces(self, refforce):
# therefore get copied
dd(mself.beads).q.set(mreff.beads.q, manual=False)
for b in range(mself.nbeads):
mself._forces[b]._ufvx.set(deepcopy(mreff._forces[b]._ufvx._value), manual=False)
mself._forces[b]._ufvx.set(
deepcopy(mreff._forces[b]._ufvx._value), manual=False
)
mself._forces[b]._ufvx.taint(taintme=False)

def transfer_forces_manual(
Expand Down Expand Up @@ -1487,4 +1501,32 @@ def get_coeffsc_part_2(self):
rc[1::2] = (1.0 - self.alpha) / self.omegan2 / 9.0
return np.asmatrix(rc).T

inject_depend_properties(Forces, [ "f", "pots", "virs", "extras", "pot", "vir", "alpha", "nmtslevels", "omegan2", "potssc", "potsc", "coeffsc_part_1", "coeffsc_part_2", "fvir_4th_order", "f_4th_order", "fsc_part_1", "fsc_part_2", "fsc", "vir_4th_order", "virssc_part_1", "virssc_part_2", "virssc", "potsc"])

inject_depend_properties(
Forces,
[
"f",
"pots",
"virs",
"extras",
"pot",
"vir",
"alpha",
"nmtslevels",
"omegan2",
"potssc",
"potsc",
"coeffsc_part_1",
"coeffsc_part_2",
"fvir_4th_order",
"f_4th_order",
"fsc_part_1",
"fsc_part_2",
"fsc",
"vir_4th_order",
"virssc_part_1",
"virssc_part_2",
"virssc",
"potsc",
],
)
34 changes: 33 additions & 1 deletion ipi/engine/normalmodes.py
Original file line number Diff line number Diff line change
Expand Up @@ -901,4 +901,36 @@ def get_kstress(self):

return kmd

inject_depend_properties(NormalModes, ["nmts", "dt", "mode", "transform_method", "propagator", "nm_freqs", "qnm", "pnm", "fnm", "omegan", "omegan2", "omegak", "omegak2", "o_omegak", "nm_factor", "o_nm_factor", "dynm3", "dynomegak", "prop_pq", "o_prop_pq", "kins", "kin", "kstress", "vspring", "vspring_and_fspring_B", "fspring", "fspringnm"])

inject_depend_properties(
NormalModes,
[
"nmts",
"dt",
"mode",
"transform_method",
"propagator",
"nm_freqs",
"qnm",
"pnm",
"fnm",
"omegan",
"omegan2",
"omegak",
"omegak2",
"o_omegak",
"nm_factor",
"o_nm_factor",
"dynm3",
"dynomegak",
"prop_pq",
"o_prop_pq",
"kins",
"kin",
"kstress",
"vspring",
"vspring_and_fspring_B",
"fspring",
"fspringnm",
],
)
5 changes: 3 additions & 2 deletions ipi/engine/simulation.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ def __init__(
self.prng = prng
self.mode = mode
self.threading = threads
self.safe_stride = safe_stride
self.safe_stride = safe_stride

self.syslist = syslist
for s in syslist:
Expand Down Expand Up @@ -405,4 +405,5 @@ def run(self):

self.rollback = False

inject_depend_properties(Simulation, ["step"])

inject_depend_properties(Simulation, ["step"])
17 changes: 9 additions & 8 deletions ipi/utils/depend.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
"dcopy",
"dstrip",
"depraise",
"inject_depend_properties"
"inject_depend_properties",
]


Expand Down Expand Up @@ -921,10 +921,10 @@ def __setattr__(self, name, value):
member objects."""

return object.__setattr__(object.__getattribute__(self, "dobj"), name, value)


def inject_depend_property(cls, attr_name):
private_name = f'_{attr_name}'
private_name = f"_{attr_name}"

def getter(self):
return getattr(self, private_name).__get__(self, self.__class__)
Expand All @@ -934,9 +934,10 @@ def setter(self, value):

setattr(cls, attr_name, property(getter, setter))


def inject_depend_properties(cls, attr_names):
if not isinstance(attr_names, list):
attr_names = [attr_names]
for attr_name in attr_names:
inject_depend_property(cls, attr_name)
if not isinstance(attr_names, list):
attr_names = [attr_names]

for attr_name in attr_names:
inject_depend_property(cls, attr_name)

0 comments on commit 07eefc3

Please sign in to comment.