tv_apply_jacobian_derivatives_from_sweep#

t3toolbox.backend.sampling_derivatives.tv_apply_jacobian_derivatives_from_sweep(variation, ww, pp, frame, sweep, order)#
def tv_apply_jacobian_derivatives_from_sweep(
        variation:  typ.Tuple[
            typ.Sequence[NDArray],          # var_tucker_cores dU. len=d, elm_shape=K+C+(nOi,Ni)
            typ.Sequence[NDArray],          # var_tt_cores     dG. len=d, elm_shape=K+C+(rLi,nUi,rRi)
        ],                                  # = T3Variations.data
        ww:         typ.Sequence[NDArray],  # probe vectors X,        len=d, elm_shape=W+(Ni,)
        pp:         typ.Sequence[NDArray],  # perturbation vectors P, len=d, elm_shape=W+(Ni,)
        frame:       typ.Tuple[
            typ.Sequence[NDArray], typ.Sequence[NDArray],
            typ.Sequence[NDArray], typ.Sequence[NDArray],
        ],                                  # = T3Frame.data = (U, O, P, Q)
        sweep:      typ.Tuple[
            typ.Sequence[NDArray],          # xi_jets
            typ.Sequence[NDArray],          # mu_jets
        ],                                  # = tv_precompute_apply_frame_sweep_jets(frame, ww, pp, order)
        order:      int,                    # highest derivative order
) -> NDArray:                               # apply-derivative jets, shape=(order+1,)+W+K+C

Variation half of tv_apply_derivatives() from a precomputed frame sweep: the variation input jets + the terminal sigma carry, reusing the frame (xi, mu)_jets (apply needs no nu / eta). The reuse hook for a fitting inner solve (frame fixed across J / J^T).

Parameters:
  • variation (t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray]])

  • ww (t3toolbox.backend.common.typ.Sequence[NDArray])

  • pp (t3toolbox.backend.common.typ.Sequence[NDArray])

  • frame (t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray]])

  • sweep (t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray]])

  • order (int)

Return type:

NDArray