From 2e6f133b95b614f13445722e54f28105d9664841 Mon Sep 17 00:00:00 2001 From: Sébastien Crozet Date: Sun, 27 Feb 2022 22:04:51 +0100 Subject: Second round to fix the parallel solver. --- src/dynamics/solver/solver_constraints.rs | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) (limited to 'src/dynamics/solver/solver_constraints.rs') diff --git a/src/dynamics/solver/solver_constraints.rs b/src/dynamics/solver/solver_constraints.rs index b126f52..e780e58 100644 --- a/src/dynamics/solver/solver_constraints.rs +++ b/src/dynamics/solver/solver_constraints.rs @@ -6,7 +6,6 @@ use super::{WVelocityConstraint, WVelocityGroundConstraint}; use crate::data::ComponentSet; use crate::dynamics::solver::categorization::{categorize_contacts, categorize_joints}; use crate::dynamics::solver::generic_velocity_ground_constraint::GenericVelocityGroundConstraint; -use crate::dynamics::solver::AnyGenericVelocityConstraint; use crate::dynamics::solver::GenericVelocityConstraint; use crate::dynamics::{ solver::AnyVelocityConstraint, IntegrationParameters, JointGraphEdge, JointIndex, @@ -19,7 +18,7 @@ use crate::math::Real; use crate::math::SIMD_WIDTH; use na::DVector; -pub(crate) struct SolverConstraints { +pub(crate) struct SolverConstraints { pub generic_jacobians: DVector, pub not_ground_interactions: Vec, pub ground_interactions: Vec, @@ -28,12 +27,9 @@ pub(crate) struct SolverConstraints { pub interaction_groups: InteractionGroups, pub ground_interaction_groups: InteractionGroups, pub velocity_constraints: Vec, - pub generic_velocity_constraints: Vec, } -impl - SolverConstraints -{ +impl SolverConstraints { pub fn new() -> Self { Self { generic_jacobians: DVector::zeros(0), @@ -44,7 +40,6 @@ impl interaction_groups: InteractionGroups::new(), ground_interaction_groups: InteractionGroups::new(), velocity_constraints: vec![], - generic_velocity_constraints: vec![], } } @@ -56,11 +51,10 @@ impl self.interaction_groups.clear(); self.ground_interaction_groups.clear(); self.velocity_constraints.clear(); - self.generic_velocity_constraints.clear(); } } -impl SolverConstraints { +impl SolverConstraints { pub fn init_constraint_groups( &mut self, island_id: usize, @@ -132,7 +126,6 @@ impl SolverConstraints { + ComponentSet, { self.velocity_constraints.clear(); - self.generic_velocity_constraints.clear(); self.init_constraint_groups( island_id, @@ -247,7 +240,7 @@ impl SolverConstraints { manifold, bodies, multibody_joints, - &mut self.generic_velocity_constraints, + &mut self.velocity_constraints, &mut self.generic_jacobians, jacobian_id, true, @@ -277,7 +270,7 @@ impl SolverConstraints { manifold, bodies, multibody_joints, - &mut self.generic_velocity_constraints, + &mut self.velocity_constraints, &mut self.generic_jacobians, jacobian_id, true, @@ -340,7 +333,7 @@ impl SolverConstraints { } } -impl SolverConstraints { +impl SolverConstraints { pub fn init( &mut self, island_id: usize, @@ -375,7 +368,6 @@ impl SolverConstraints { ); self.velocity_constraints.clear(); - self.generic_velocity_constraints.clear(); self.interaction_groups.clear_groups(); self.interaction_groups.group_joints( -- cgit