Exemplo n.º 1
0
    def __init__(
        self,
        nn_strategy: Union[str, NearNeighbors] = None,
        atom_converter: Converter = None,
        bond_converter: Converter = None,
        **kwargs,
    ):
        """

        Args:
            nn_strategy (str or NearNeighbors): NearNeighbor strategy
            atom_converter (Converter): atom converter
            bond_converter (Converter): bond converter
            **kwargs:
        """

        if isinstance(nn_strategy, str):
            strategy = local_env.get(nn_strategy)
            parameters = signature(strategy).parameters
            param_dict = {i: j.default for i, j in parameters.items()}
            for i, j in kwargs.items():
                if i in param_dict:
                    setattr(self, i, j)
                    param_dict.update({i: j})
            self.nn_strategy = strategy(**param_dict)
        elif isinstance(nn_strategy, NearNeighbors):
            self.nn_strategy = nn_strategy
        elif nn_strategy is None:
            self.nn_strategy = None
        else:
            raise RuntimeError("Strategy not valid")

        self.atom_converter = atom_converter or self._get_dummy_converter()
        self.bond_converter = bond_converter or self._get_dummy_converter()
Exemplo n.º 2
0
    def __init__(self,
                 nn_strategy,
                 atom_converter=None,
                 bond_converter=None,
                 **kwargs):

        if isinstance(nn_strategy, str):
            strategy = local_env.get(nn_strategy)
            parameters = signature(strategy).parameters
            param_dict = {i: j.default for i, j in parameters.items()}
            for i, j in kwargs.items():
                if i in param_dict:
                    setattr(self, i, j)
                    param_dict.update({i: j})
            self.nn_strategy = strategy(**param_dict)
        elif isinstance(nn_strategy, NearNeighbors):
            self.nn_strategy = nn_strategy
        else:
            raise RuntimeError("Strategy not valid")

        self.atom_converter = atom_converter
        self.bond_converter = bond_converter
        if self.atom_converter is None:
            self.atom_converter = self._get_dummy_converter()
        if self.bond_converter is None:
            self.bond_converter = self._get_dummy_converter()
Exemplo n.º 3
0
 def test_get(self):
     voronoi = get("VoronoiNN")
     self.assertTrue(voronoi.__name__ == "VoronoiNN")
Exemplo n.º 4
0
 def test_get(self):
     voronoi = get('VoronoiNN')
     self.assertTrue(voronoi.__name__ == 'VoronoiNN')