def __init__(self, parameters: ParametersQC, transformation: typing.Union[(str, typing.Callable)]=None, active_orbitals: list=None, *args, **kwargs):
    self.parameters = parameters
    if ('molecule' in kwargs):
        self.molecule = kwargs['molecule']
    else:
        self.molecule = self.make_molecule(*args, **kwargs)
    assert (parameters.basis_set.lower() == self.molecule.basis.lower())
    assert (parameters.multiplicity == self.molecule.multiplicity)
    assert (parameters.charge == self.molecule.charge)
    self.active_space = None
    if (active_orbitals is not None):
        self.active_space = self._make_active_space_data(active_orbitals=active_orbitals)
    self.transformation = self._initialize_transformation(*args, transformation=transformation, **kwargs)
    self._rdm1 = None
    self._rdm2 = None
def __init__(self, parameters: ParametersQC, transformation: typing.Union[(str, typing.Callable)]=None, active_orbitals: list=None, *args, **kwargs):
    self.parameters = parameters
    if ('molecule' in kwargs):
        self.molecule = kwargs['molecule']
    else:
        self.molecule = self.make_molecule(*args, **kwargs)
    assert (parameters.basis_set.lower() == self.molecule.basis.lower())
    assert (parameters.multiplicity == self.molecule.multiplicity)
    assert (parameters.charge == self.molecule.charge)
    self.active_space = None
    if (active_orbitals is not None):
        self.active_space = self._make_active_space_data(active_orbitals=active_orbitals)
    self.transformation = self._initialize_transformation(*args, transformation=transformation, **kwargs)
    self._rdm1 = None
    self._rdm2 = None