pub struct AdjointGradients {
pub objective: f64,
pub d_inertia: Vec<[f64; 10]>,
pub d_vertices: Vec<Vec<Vec3>>,
}Expand description
Everything one backward pass produces.
Fields§
§objective: f64The objective at the nominal rollout.
d_inertia: Vec<[f64; 10]>dJ/dπ per body, canonical packing [m, cx, cy, cz, Ixx, Iyy, Izz, Ixy, Ixz, Iyz] (COM-frame inertia, body-frame COM).
d_vertices: Vec<Vec<Vec3>>∂J/∂x per collision-mesh vertex (body frame), parallel to
contact.meshes; empty when the rollout has no contact.
Auto Trait Implementations§
impl Freeze for AdjointGradients
impl RefUnwindSafe for AdjointGradients
impl Send for AdjointGradients
impl Sync for AdjointGradients
impl Unpin for AdjointGradients
impl UnsafeUnpin for AdjointGradients
impl UnwindSafe for AdjointGradients
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more