qmctorch.wavefunction.pooling.orbital_configurations module

class qmctorch.wavefunction.pooling.orbital_configurations.OrbitalConfigurations(mol)[source]

Bases: object

get_configs(configs)[source]

Get the configuratio in the CI expansion

Parameters:
  • configs (str) – name of the configs we want
  • mol (mol object) – molecule object
Returns:

the spin up/spin down electronic confs

Return type:

tuple(torch.LongTensor,torch.LongTensor)

sanity_check(nelec, norb)[source]
Check if the number of elec/orb is consistent with the
properties of the molecule
Parameters:
  • nelec (int) – required number of electrons in config
  • norb (int) – required number of orb in config
qmctorch.wavefunction.pooling.orbital_configurations.get_excitation(configs)[source]

get the excitation data

Parameters:configs (tuple) – configuratin of the electrons
Returns:
index of the obitals in the excitaitons
[i,j],[l,m] : excitation i -> l, j -> l
Return type:exc_up, exc_down
qmctorch.wavefunction.pooling.orbital_configurations.get_unique_excitation(configs)[source]

get the unique excitation data

Parameters:configs (tuple) – configuratin of the electrons
Returns:
index of the obitals in the excitaitons
[i,j],[l,m] : excitation i -> l, j -> l
index_up, index_down : index map for the unique exc
[0,0,…], [0,1,…] means that 1st : excitation is composed of unique_up[0]*unique_down[0] 2nd : excitation is composed of unique_up[0]*unique_down[1] ….
Return type:exc_up, exc_down