From 3e9dca30173a5ec7c746b47b17a65358ce316172 Mon Sep 17 00:00:00 2001 From: Axel Kohlmeyer Date: Mon, 26 Sep 2022 21:01:22 -0400 Subject: [PATCH] Implement alternate and recommended way to set properties of abstract base class See: https://github.com/lammps/lammps/security/code-scanning/476 --- python/lammps/mliap/mliap_unified_abc.py | 13 +++++++------ python/lammps/mliap/mliap_unified_lj.py | 7 ++----- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/python/lammps/mliap/mliap_unified_abc.py b/python/lammps/mliap/mliap_unified_abc.py index 3243df85c4..aca640a836 100644 --- a/python/lammps/mliap/mliap_unified_abc.py +++ b/python/lammps/mliap/mliap_unified_abc.py @@ -4,12 +4,13 @@ import pickle class MLIAPUnified(ABC): """Abstract base class for MLIAPUnified.""" - def __init__(self): - self.interface = None - self.element_types = None - self.ndescriptors = None - self.nparams = None - self.rcutfac = None + def __init__(self, interface = None, element_types = None, + ndescriptors = None, nparams = None, rcutfac = None): + self.interface = interface + self.element_types = element_types + self.ndescriptors = ndescriptors + self.nparams = nparams + self.rcutfac = rcutfac @abstractmethod def compute_gradients(self, data): diff --git a/python/lammps/mliap/mliap_unified_lj.py b/python/lammps/mliap/mliap_unified_lj.py index 37e7170d4a..077b00d7b9 100644 --- a/python/lammps/mliap/mliap_unified_lj.py +++ b/python/lammps/mliap/mliap_unified_lj.py @@ -6,16 +6,13 @@ class MLIAPUnifiedLJ(MLIAPUnified): """Test implementation for MLIAPUnified.""" def __init__(self, element_types, epsilon=1.0, sigma=1.0, rcutfac=1.25): - super().__init__() - self.element_types = element_types - self.ndescriptors = 1 - self.nparams = 3 + # ARGS: interface, element_types, ndescriptors, nparams, rcutfac + super().__init__(None, element_types, 1, 3, rcutfac) # Mimicking the LJ pair-style: # pair_style lj/cut 2.5 # pair_coeff * * 1 1 self.epsilon = epsilon self.sigma = sigma - self.rcutfac = rcutfac def compute_gradients(self, data): """Test compute_gradients."""