struct_param.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /**
  2. * @file struct_param.h
  3. * @brief 定义参数(parameter)结构体。本模块用来提高工程代码质量。
  4. * This is the definition of parameter structure. For better code engineering.
  5. * @version 0.1
  6. * @date 2021-09-17
  7. *
  8. * @copyright Copyright (c) 2021
  9. *
  10. */
  11. #ifndef __STRUCT_PARAM_H__
  12. #define __STRUCT_PARAM_H__
  13. #include "csocp_config.h"
  14. /** 参数结构体定义 Definition of parameters */
  15. struct c_param_s {
  16. c_real feastol; /**< 原始问题/对偶问题的不可行容限 Primal/dual infeasibility tolerance */
  17. c_real abstol; /**< 对偶间隙的绝对容限 Absolute tolerance on duality gap */
  18. c_real reltol; /**< 对偶间隙的相对容限 Relative tolerance on duality gap */
  19. c_int iriter; /**< Number of IR steps */
  20. c_int irfact; /**< Factor of IR error */
  21. c_real linsystol; /**< 线性系统容差 Linear system tolerance */
  22. c_real deltastat; /**< 静态正则化参数 Static regularization parameter */
  23. c_real delta; /**< 动态正则化参数 Dynamic regularization parameter */
  24. c_real epsilon; /**< epsilon容差 Epsilon tolerance */
  25. c_int scaleiter; /**< 缩放功能迭代次数限制 Iteration limit of scaling method */
  26. c_real scaletol; /**< 缩放容差 Scaling tolerance */
  27. c_real gamma; /**< 步长缩放系数 Scaling factor of step length */
  28. c_int maxit; /**< 最大迭代次数 Maximum number of iterations */
  29. c_real minstep; /**< 允许的最小步长 Smallest step allowed */
  30. c_real maxstep; /**< 允许的最大步长 Largest step allowed */
  31. c_real minsigma; /**< 始终进行中心化的参数 Always do some centering */
  32. c_real maxsigma; /**< 始终不完全中心化的参数 Never fully centering */
  33. };
  34. #endif