Guest User

Eigen patch for UmfpackSupport

a guest
Dec 10th, 2014
276
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 2.73 KB | None | 0 0
  1. # This patch file was generated by NetBeans IDE
  2. # This patch can be applied using context Tools: Apply Diff Patch action on respective folder.
  3. # It uses platform neutral UTF-8 encoding.
  4. # Above lines and this line are ignored by the patching process.
  5. 18a19,25
  6. >
  7. > inline void umfpack_defaults(double control[UMFPACK_CONTROL], double)
  8. > { umfpack_di_defaults(control); }
  9. >
  10. > inline void umfpack_defaults(double control[UMFPACK_CONTROL], std::complex<double>)
  11. > { umfpack_zi_defaults(control); }
  12. >
  13. 149a157
  14. >     typedef Array<double, UMFPACK_CONTROL, 1> UmfpackControlType;
  15. 235a244,272
  16. >     /** Provides the return status code returned by UmfPack during the numeric
  17. >      * factorization.
  18. >      *
  19. >      * \sa factorize(), compute()
  20. >      */
  21. >     inline int factorizationStatus() const
  22. >     {
  23. >         eigen_assert(m_numeric && "UmfPackLU: you must first call factorize()");
  24. >         return m_fact_errorCode;
  25. >     }
  26. >
  27. >     /** Provides access to the control settings array used by UmfPack.
  28. >      *
  29. >      * If this array contains NaN's, the default values are used.
  30. >      */
  31. >     inline const UmfpackControlType& control() const
  32. >     {
  33. >         return m_control;
  34. >     }
  35. >    
  36. >     /** Provides access to the control settings array used by UmfPack.
  37. >      *
  38. >      * If this array contains NaN's, the default values are used.
  39. >      */
  40. >     inline UmfpackControlType& control()
  41. >     {
  42. >         return m_control;
  43. >     }
  44. >    
  45. 238c275
  46. <       * The given matrix must has the same sparcity than the matrix on which the pattern anylysis has been performed.
  47. ---
  48. >       * The given matrix must has the same sparsity than the matrix on which the pattern analysis has been performed.
  49. 275a313
  50. >       umfpack_defaults(m_control.data(), Scalar());
  51. 317c355
  52. <                                    &m_symbolic, 0, 0);
  53. ---
  54. >                                    &m_symbolic, m_control.data(), 0);
  55. 328,330c366,367
  56. <       int errorCode;
  57. <       errorCode = umfpack_numeric(m_outerIndexPtr, m_innerIndexPtr, m_valuePtr,
  58. <                                   m_symbolic, &m_numeric, 0, 0);
  59. ---
  60. >       m_fact_errorCode = umfpack_numeric(m_outerIndexPtr, m_innerIndexPtr, m_valuePtr,
  61. >                                          m_symbolic, &m_numeric, m_control.data(), 0);
  62. 332c369
  63. <       m_info = errorCode ? NumericalIssue : Success;
  64. ---
  65. >       m_info = m_fact_errorCode == UMFPACK_OK ? Success : NumericalIssue;
  66. 354a392,394
  67. >     int m_fact_errorCode;
  68. >     UmfpackControlType m_control;
  69. >    
  70. 410c450
  71. <         &x.col(j).coeffRef(0), &b.const_cast_derived().col(j).coeffRef(0), m_numeric, 0, 0);
  72. ---
  73. >         &x.col(j).coeffRef(0), &b.const_cast_derived().col(j).coeffRef(0), m_numeric, m_control.data(), 0);
Advertisement
Add Comment
Please, Sign In to add comment