chrono::ChSolverMulticoreAPGD Class Reference
Description
Accelerated Projected Gradient Descent (APGD) solver.
#include <ChSolverMulticore.h>
Inheritance diagram for chrono::ChSolverMulticoreAPGD:
Collaboration diagram for chrono::ChSolverMulticoreAPGD:
Public Member Functions | |
uint | Solve (ChShurProduct &ShurProduct, ChProjectConstraints &Project, const uint max_iter, const uint size, const DynamicVector< real > &b, DynamicVector< real > &x) |
Solve using a more streamlined but harder to read version of the APGD method. More... | |
void | UpdateR () |
Public Member Functions inherited from chrono::ChSolverMulticore | |
void | Setup (ChMulticoreDataManager *data_container_) |
void | ComputeSRhs (custom_vector< real > &gamma, const custom_vector< real > &rhs, custom_vector< real3 > &vel_data, custom_vector< real3 > &omg_data, custom_vector< real > &b) |
Compute rhs value with relaxation term. | |
void | AtIterationEnd (real maxd, real maxdeltalambda) |
real | LargestEigenValue (ChShurProduct &ShurProduct, DynamicVector< real > &temp, real lambda=0) |
Public Attributes | |
DynamicVector< real > | obj2_temp |
DynamicVector< real > | obj1_temp |
DynamicVector< real > | temp |
DynamicVector< real > | g |
DynamicVector< real > | gamma_new |
DynamicVector< real > | y |
DynamicVector< real > | gamma_hat |
DynamicVector< real > | N_gamma_new |
DynamicVector< real > | _t_g |
real | L |
real | t |
real | g_diff |
real | theta |
real | theta_new |
real | beta_new |
real | mb_tmp_norm |
real | mg_tmp_norm |
real | obj1 |
real | obj2 |
real | dot_g_temp |
real | norm_ms |
Public Attributes inherited from chrono::ChSolverMulticore | |
int | current_iteration |
The current iteration number of the solver. | |
ChConstraintRigidRigid * | rigid_rigid |
ChConstraintBilateral * | bilateral |
Ch3DOFContainer * | three_dof |
Ch3DOFContainer * | fem |
Ch3DOFContainer * | mpm |
ChMulticoreDataManager * | data_manager |
Pointer to the system's data manager. | |
DynamicVector< real > | eigen_vec |
Member Function Documentation
◆ Solve()
|
virtual |
Solve using a more streamlined but harder to read version of the APGD method.
- Parameters
-
ShurProduct Schur product Project Constraints max_iter Maximum number of iterations size Number of unknowns b Rhs vector x The vector of unknowns
Implements chrono::ChSolverMulticore.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_multicore/solver/ChSolverMulticore.h
- /builds/uwsbel/chrono/src/chrono_multicore/solver/ChSolverMulticoreAPGD.cpp