Calculate the new CTMRG tensors for a single step (varipeps.ctmrg.absorption)

varipeps.ctmrg.absorption.do_absorption_step(peps_tensors: Sequence[Array], unitcell: PEPS_Unit_Cell, config: PEPS_AD_Config, state: PEPS_AD_Global_State) PEPS_Unit_Cell

Calculate the all CTMRG tensors after one absorption step and returns the updated unitcell.

Parameters:
  • peps_tensors (sequence of jax.numpy.ndarray) – The sequence of unique PEPS tensors the unitcell consists of.

  • unitcell (PEPS_Unit_Cell) – The unitcell to work on.

  • config (PEPS_AD_Config) – Global configuration object of the variPEPS library. Please see its class definition for details.

  • state (PEPS_AD_Global_State) – Global state object of the variPEPS library. It is used to transport a common state across different parts of the framework. Please see its class definition for details.

Returns:

New instance of the unitcell with the all updated CTMRG tensors of all elements of the unitcell.

Return type:

PEPS_Unit_Cell

varipeps.ctmrg.absorption.do_bottom_absorption(peps_tensors: Sequence[Array], unitcell: PEPS_Unit_Cell, config: PEPS_AD_Config, state: PEPS_AD_Global_State) PEPS_Unit_Cell

Calculate the bottom CTMRG tensors after one absorption step and returns the updated unitcell.

Parameters:
  • peps_tensors (sequence of jax.numpy.ndarray) – The sequence of unique PEPS tensors the unitcell consists of.

  • unitcell (PEPS_Unit_Cell) – The unitcell to work on.

  • config (PEPS_AD_Config) – Global configuration object of the variPEPS library. Please see its class definition for details.

  • state (PEPS_AD_Global_State) – Global state object of the variPEPS library. It is used to transport a common state across different parts of the framework. Please see its class definition for details.

Returns:

New instance of the unitcell with the updated bottom CTMRG tensors of all elements of the unitcell.

Return type:

PEPS_Unit_Cell

varipeps.ctmrg.absorption.do_left_absorption(peps_tensors: Sequence[Array], unitcell: PEPS_Unit_Cell, config: PEPS_AD_Config, state: PEPS_AD_Global_State) PEPS_Unit_Cell

Calculate the left CTMRG tensors after one absorption step and returns the updated unitcell.

Parameters:
  • peps_tensors (sequence of jax.numpy.ndarray) – The sequence of unique PEPS tensors the unitcell consists of.

  • unitcell (PEPS_Unit_Cell) – The unitcell to work on.

  • config (PEPS_AD_Config) – Global configuration object of the variPEPS library. Please see its class definition for details.

  • state (PEPS_AD_Global_State) – Global state object of the variPEPS library. It is used to transport a common state across different parts of the framework. Please see its class definition for details.

Returns:

New instance of the unitcell with the updated left CTMRG tensors of all elements of the unitcell.

Return type:

PEPS_Unit_Cell

varipeps.ctmrg.absorption.do_right_absorption(peps_tensors: Sequence[Array], unitcell: PEPS_Unit_Cell, config: PEPS_AD_Config, state: PEPS_AD_Global_State) PEPS_Unit_Cell

Calculate the right CTMRG tensors after one absorption step and returns the updated unitcell.

Parameters:
  • peps_tensors (sequence of jax.numpy.ndarray) – The sequence of unique PEPS tensors the unitcell consists of.

  • unitcell (PEPS_Unit_Cell) – The unitcell to work on.

  • config (PEPS_AD_Config) – Global configuration object of the variPEPS library. Please see its class definition for details.

  • state (PEPS_AD_Global_State) – Global state object of the variPEPS library. It is used to transport a common state across different parts of the framework. Please see its class definition for details.

Returns:

New instance of the unitcell with the updated right CTMRG tensors of all elements of the unitcell.

Return type:

PEPS_Unit_Cell

varipeps.ctmrg.absorption.do_top_absorption(peps_tensors: Sequence[Array], unitcell: PEPS_Unit_Cell, config: PEPS_AD_Config, state: PEPS_AD_Global_State) PEPS_Unit_Cell

Calculate the top CTMRG tensors after one absorption step and returns the updated unitcell.

Parameters:
  • peps_tensors (sequence of jax.numpy.ndarray) – The sequence of unique PEPS tensors the unitcell consists of.

  • unitcell (PEPS_Unit_Cell) – The unitcell to work on.

  • config (PEPS_AD_Config) – Global configuration object of the variPEPS library. Please see its class definition for details.

  • state (PEPS_AD_Global_State) – Global state object of the variPEPS library. It is used to transport a common state across different parts of the framework. Please see its class definition for details.

Returns:

New instance of the unitcell with the updated top CTMRG tensors of all elements of the unitcell.

Return type:

PEPS_Unit_Cell