14 #ifndef PDLP_SHARDED_QUADRATIC_PROGRAM_H_
15 #define PDLP_SHARDED_QUADRATIC_PROGRAM_H_
21 #include "Eigen/SparseCore"
49 const Eigen::SparseMatrix<double, Eigen::ColMajor, int64_t>&
51 return transposed_constraint_matrix_;
56 return constraint_matrix_sharder_;
60 return transposed_constraint_matrix_sharder_;
78 const Eigen::VectorXd& row_scaling_vec);
87 Eigen::VectorXd& constraint_upper_bounds) {
101 Eigen::SparseMatrix<double, Eigen::ColMajor, int64_t>
102 transposed_constraint_matrix_;
103 std::unique_ptr<ThreadPool> thread_pool_;
104 Sharder constraint_matrix_sharder_;
105 Sharder transposed_constraint_matrix_sharder_;
const Sharder & DualSharder() const
void RescaleQuadraticProgram(const Eigen::VectorXd &col_scaling_vec, const Eigen::VectorXd &row_scaling_vec)
ShardedQuadraticProgram(QuadraticProgram qp, int num_threads, int num_shards)
const Eigen::SparseMatrix< double, Eigen::ColMajor, int64_t > & TransposedConstraintMatrix() const
const Sharder & ConstraintMatrixSharder() const
ShardedQuadraticProgram & operator=(ShardedQuadraticProgram &&)=default
ShardedQuadraticProgram(ShardedQuadraticProgram &&)=default
const Sharder & PrimalSharder() const
void SwapConstraintBounds(Eigen::VectorXd &constraint_lower_bounds, Eigen::VectorXd &constraint_upper_bounds)
ShardedQuadraticProgram(const ShardedQuadraticProgram &)=delete
int64_t PrimalSize() const
const Sharder & TransposedConstraintMatrixSharder() const
void SwapObjectiveVector(Eigen::VectorXd &objective)
const QuadraticProgram & Qp() const
void SwapVariableBounds(Eigen::VectorXd &variable_lower_bounds, Eigen::VectorXd &variable_upper_bounds)
ShardedQuadraticProgram & operator=(const ShardedQuadraticProgram &)=delete
Eigen::VectorXd variable_upper_bounds
Eigen::VectorXd variable_lower_bounds
Eigen::VectorXd constraint_lower_bounds
Eigen::VectorXd constraint_upper_bounds
Eigen::VectorXd objective_vector
VectorXd variable_lower_bounds
VectorXd variable_upper_bounds