Changeset 27904


Ignore:
Timestamp:
09/18/23 11:12:49 (18 months ago)
Author:
Mathieu Morlighem
Message:

CHG: compatibility with PETSc 3.19

Location:
issm/trunk-jpl/src/c
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified issm/trunk-jpl/src/c/solutionsequences/solutionsequence_schurcg.cpp

    r26468 r27904  
    5858        PetscOptionsGetInt(PETSC_NULL,"-schur_pc",&precond,NULL);
    5959        PetscOptionsGetInt(PETSC_NULL,"-max_iter",&maxiter,NULL);
    60         #else
     60        #elif PETSC_VERSION_LT(3,19,0)
    6161        PetscOptionsGetString(NULL,PETSC_NULL,"-ksp_type",ksp_type,49,&flg);
    6262        PetscOptionsGetString(NULL,PETSC_NULL,"-pc_type",pc_type,49,&flg);
     
    6565        PetscOptionsGetInt(NULL,PETSC_NULL,"-schur_pc",&precond,NULL);
    6666        PetscOptionsGetInt(NULL,PETSC_NULL,"-max_iter",&maxiter,NULL);
     67        #else
     68        PetscOptionsGetString(NULL,PETSC_NULLPTR,"-ksp_type",ksp_type,49,&flg);
     69        PetscOptionsGetString(NULL,PETSC_NULLPTR,"-pc_type",pc_type,49,&flg);
     70        PetscOptionsGetReal(NULL,PETSC_NULLPTR,"-tol",&TOL,NULL);
     71        PetscOptionsGetReal(NULL,PETSC_NULLPTR,"-elltol",&ELLTOL,NULL);
     72        PetscOptionsGetInt(NULL,PETSC_NULLPTR,"-schur_pc",&precond,NULL);
     73        PetscOptionsGetInt(NULL,PETSC_NULLPTR,"-max_iter",&maxiter,NULL);
    6774        #endif
    6875
     
    689696                #if PETSC_VERSION_LT(3,7,0)
    690697                PetscOptionsGetInt(PETSC_NULL,"-schur_pc",&precond,NULL);
     698                #elif PETSC_VERSION_LT(3,19,0)
     699                PetscOptionsGetInt(NULL,PETSC_NULL,"-schur_pc",&precond,NULL);
    691700                #else
    692                 PetscOptionsGetInt(NULL,PETSC_NULL,"-schur_pc",&precond,NULL);
     701                PetscOptionsGetInt(NULL,PETSC_NULLPTR,"-schur_pc",&precond,NULL);
    693702                #endif
    694703
  • TabularUnified issm/trunk-jpl/src/c/toolkits/petsc/objects/PetscSolver.cpp

    r27157 r27904  
    8080        #if PETSC_VERSION_LT(3,7,0)
    8181        PetscOptionsGetString(PETSC_NULL,"-ksp_type",ksp_type,49,&flg);
    82         #else
     82        #elif PETSC_VERSION_LT(3,19,0)
    8383        PetscOptionsGetString(NULL,PETSC_NULL,"-ksp_type",ksp_type,49,&flg);
     84        #else
     85        PetscOptionsGetString(NULL,PETSC_NULLPTR,"-ksp_type",ksp_type,49,&flg);
    8486        #endif
    8587        if(flg!=PETSC_TRUE) _error_("could not find option -ksp_type, maybe you are not using the right toolkit?");
     
    132134                /*Set field splits: */
    133135                KSPGetPC(ksp,&pc);
    134                 #if (PETSC_VERSION_MAJOR == 3) && (PETSC_VERSION_MINOR == 1)
     136
     137                #if PETSC_VERSION_LT(3,1,0)
    135138                PCFieldSplitSetIS(pc,isv);
    136139                PCFieldSplitSetIS(pc,isp);
    137                 #else
     140                #elif PETSC_VERSION_LT(3,19,0)
    138141                PCFieldSplitSetIS(pc,PETSC_NULL,isv);
    139142                PCFieldSplitSetIS(pc,PETSC_NULL,isp);
    140                 #endif
     143                #else
     144                PCFieldSplitSetIS(pc,PETSC_NULLPTR,isv);
     145                PCFieldSplitSetIS(pc,PETSC_NULLPTR,isp);
     146                #endif
     147
    141148
    142149        }
  • TabularUnified issm/trunk-jpl/src/c/toolkits/petsc/patches/PetscOptionsDetermineSolverType.cpp

    r27157 r27904  
    2929
    3030        /*retrieve mat_type option: */
    31         #if PETSC_VERSION_GE(3,7,0)
     31        #if PETSC_VERSION_LT(3,7,0)
    3232        PetscOptionsGetString(NULL,PETSC_NULL,"-mat_type",&option[0],100,&flag);
     33        #elif PETSC_VERSION_LT(3,19,0)
     34        PetscOptionsGetString(PETSC_NULL,"-mat_type",&option[0],100,&flag);
    3335        #else
    34         PetscOptionsGetString(PETSC_NULL,"-mat_type",&option[0],100,&flag);
     36        PetscOptionsGetString(NULL,PETSC_NULLPTR,"-mat_type",&option[0],100,&flag);
    3537        #endif
    3638
     
    5456        }
    5557
    56         #if PETSC_VERSION_MAJOR >= 3
    57                 #if PETSC_VERSION_MINOR >= 7
    58                 PetscOptionsGetString(NULL,PETSC_NULL,"-pc_factor_mat_solver_package",&option[0],100,&flag);
    59                 #else
    60                 PetscOptionsGetString(PETSC_NULL,"-pc_factor_mat_solver_package",&option[0],100,&flag);
    61                 #endif
    62         if (strcmp(option,"mumps")==0){
    63                 solver_type=MUMPSPACKAGE_LU;
    64         }
    65         #endif
     58        #if PETSC_VERSION_LT(3,7,0)
     59        PetscOptionsGetString(PETSC_NULL,"-pc_factor_mat_solver_package",&option[0],100,&flag);
     60   #elif PETSC_VERSION_LT(3,19,0)
     61        PetscOptionsGetString(NULL,PETSC_NULL,"-pc_factor_mat_solver_package",&option[0],100,&flag);
     62   #else
     63        PetscOptionsGetString(NULL,PETSC_NULLPTR,"-pc_factor_mat_solver_package",&option[0],100,&flag);
     64   #endif
    6665
    67         #if PETSC_VERSION_GE(3,7,0)
     66        #if PETSC_VERSION_LT(3,7,0)
     67        PetscOptionsGetString(PETSC_NULL,"-issm_option_solver",&option[0],100,&flag);
     68   #elif PETSC_VERSION_LT(3,19,0)
    6869        PetscOptionsGetString(NULL,PETSC_NULL,"-issm_option_solver",&option[0],100,&flag);
    69         #else
    70         PetscOptionsGetString(PETSC_NULL,"-issm_option_solver",&option[0],100,&flag);
    71         #endif
    72         if(strcmp(option,"FS")==0 || strcmp(option,"stokes")==0){
    73                 solver_type=FSSolverEnum;
    74         }
     70   #else
     71        PetscOptionsGetString(NULL,PETSC_NULLPTR,"-issm_option_solver",&option[0],100,&flag);
     72   #endif
     73
     74        if(strcmp(option,"mumps")==0) solver_type=MUMPSPACKAGE_LU;
     75        if(strcmp(option,"FS")==0 || strcmp(option,"stokes")==0) solver_type=FSSolverEnum;
    7576
    7677        *psolver_type=solver_type;
Note: See TracChangeset for help on using the changeset viewer.