File tree Expand file tree Collapse file tree
SRC/system_of_eqn/linearSOE/umfGEN Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -600,6 +600,11 @@ target_link_libraries(G3
600600
601601add_library (OpenSeesLIB EXCLUDE_FROM_ALL )
602602
603+ #
604+ # For UMFPACK long int DLONG version -- Gustavo, Michael
605+ #
606+ target_compile_definitions (OpenSeesLIB PUBLIC _UMFPACK_DLONG )
607+
603608target_link_libraries (OpenSeesLIB
604609 ${OPS_Extension_List}
605610 OPS_Actor
Original file line number Diff line number Diff line change @@ -75,7 +75,9 @@ UmfpackGenLinSolver::~UmfpackGenLinSolver()
7575{
7676 if (Symbolic != 0 ) {
7777 if (useLongIndices) {
78+ #ifdef _UMFPACK_DLONG
7879 umfpack_dl_free_symbolic (&Symbolic);
80+ #endif
7981 } else {
8082 umfpack_di_free_symbolic (&Symbolic);
8183 }
@@ -119,6 +121,7 @@ UmfpackGenLinSolver::solve(void)
119121 void * Numeric = 0 ;
120122
121123 if (useLongIndices) {
124+ #ifdef _UMFPACK_DLONG
122125 // numeric analysis
123126 SuiteSparse_long *Ap = Ap64.data ();
124127 SuiteSparse_long *Ai = Ai64.data ();
@@ -148,6 +151,7 @@ UmfpackGenLinSolver::solve(void)
148151 << " -- Umfpackgenlinsolver::solve\n " ;
149152 return -1 ;
150153 }
154+ #endif
151155 } else {
152156 // numeric analysis
153157 int *Ap = theSOE->Ap .data ();
@@ -195,6 +199,7 @@ UmfpackGenLinSolver::setSize()
195199 }
196200
197201 if (useLongIndices) {
202+ #ifdef _UMFPACK_DLONG
198203 // set default control parameters
199204 umfpack_dl_defaults (Control);
200205 Control[UMFPACK_PIVOT_TOLERANCE ] = 1.0 ;
@@ -221,6 +226,7 @@ UmfpackGenLinSolver::setSize()
221226 Symbolic = 0 ;
222227 return -1 ;
223228 }
229+ #endif
224230 } else {
225231 // set default control parameters
226232 umfpack_di_defaults (Control);
You can’t perform that action at this time.
0 commit comments