83 const LFSU& lfsu_s,
const X& x_s,
const LFSV& lfsv_s,
84 const LFSU& lfsu_n,
const X& x_n,
const LFSV& lfsv_n,
88 typedef typename Jacobian::WeightedAccumulationView JacobianView;
90 Jacobian mat_ss(r_s.size(),x_s.size(),0);
91 Jacobian mat_sn(r_s.size(),x_n.size(),0);
92 Jacobian mat_ns(r_n.size(),x_s.size(),0);
93 Jacobian mat_nn(r_n.size(),x_n.size(),0);
95 JacobianView view_ss = mat_ss.weightedAccumulationView(1.0);
96 JacobianView view_sn = mat_sn.weightedAccumulationView(1.0);
97 JacobianView view_ns = mat_ns.weightedAccumulationView(1.0);
98 JacobianView view_nn = mat_nn.weightedAccumulationView(1.0);
100 asImp().jacobian_skeleton(
ig,
103 view_ss, view_sn, view_ns, view_nn);
105 mat_ss.usmv(r_s.weight(),x_s,r_s);
106 mat_ns.usmv(r_n.weight(),x_s,r_n);
107 mat_sn.usmv(r_s.weight(),x_n,r_s);
108 mat_nn.usmv(r_n.weight(),x_n,r_n);