pytc.solver.isdf_xtc_ccsd.contract_terms_t2_xstream

pytc.solver.isdf_xtc_ccsd.contract_terms_t2_xstream(t2, p, grad_p, u1, u3, d, x_backing, nocc, *, occupied_pair_batch_size=8, rank_panel_size=128, panel_source=None, panel_budget_bytes=None)[source]

Factor-direct terms with X streamed panel-wise from its backing.

Identical terms and signs to contract_terms_t2(); only the two X-consuming terms change how X reaches the device. Every other input is small and device-lifted exactly as in the full-block path.

With panel_source=None the X terms use the legacy 128-wide panel loop; with a panel source (see _x_host_panel_source() / _x_backing_panel_source()) they use the pipelined working-set panel loop – tiers 2/3 of contract_terms_t2_auto().

Parameters:
  • t2 (jax.Array)

  • p (jax.Array)

  • grad_p (jax.Array)

  • u1 (jax.Array)

  • u3 (jax.Array)

  • d (jax.Array)

  • nocc (int)

  • occupied_pair_batch_size (int)

  • rank_panel_size (int)

Return type:

Mapping[str, jax.Array]