Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Factory:PowerPC
petsc
petsc.changes
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File petsc.changes of Package petsc
------------------------------------------------------------------- Thu Jul 25 19:18:20 UTC 2024 - Andreas Stieger <andreas.stieger@gmx.de> - fix missing libyaml requirement of -devel package boo#1228280 ------------------------------------------------------------------- Tue Jun 18 05:25:24 UTC 2024 - Egbert Eich <eich@suse.com> - Update to version 3.21: - General: * Add single precision support for using HYPRE and MFEM * Require Fortran 2003 compiler with `GET_COMMAND_ARGUMENT()` support for building PETSc with Fortran bindings - Sys: * Add `PetscBench` an object class for managing benchmarks in PETSc * Deprecate `PetscVoidFunction`, `PetscVoidStarFunction`, and `PetscErrorCodeFunction` typedefs in favor of `PetscVoidFn` and `PetscErrorCodeFn`. * Add `PetscOptionsBoundedReal()` and `PetscOptionsRangeReal()`. * Rename Petsc stream types to `PETSC_STREAM_DEFAULT`, `PETSC_STREAM_NONBLOCKING`, `PETSC_STREAM_DEFAULT`_WITH_BARRIER` and `PETSC_STREAM_NONBLOCKING_WITH_BARRIER`. The root device context uses `PETSC_STREAM_DEFAULT` by default. - PetscViewer: * Change `PetscViewerRestoreSubViewer()` to no longer need a call to `PetscViewerFlush()` after it. * Introduce `PetscOptionsRestoreViewer()` that must be called after `PetscOptionsGetViewer()` and `PetscOptionsGetViewers()` to ensure thread safety. * Add `PetscViewerASCIIWORLDSetFileUnit()`. - VecScatter / PetscSF: * Add MPI-4.0 persistent neighborhood collectives support. Use `-sf_neighbor_persistent` along with `-sf_type` neighbor to enable it. * Add `PetscSFCreateStridedSF()` to communicate strided blocks of data/ - Vec: * Add `VecGhostGetGhostIS()` to get the ghost indices of a ghosted vector. * Add `-vec_mdot_use_gemv` to let `VecMDot()`, `VecMTDot()` use BLAS2 `gemv()` instead of custom unrolled kernel. Default is on. * Add `-vec_maxpy_use_gemv` to let `VecMAXPY()` use BLAS2 `gemv()` instead of custom unrolled kernel. Default is off. * `VecReplaceArray()` on the first Vec obtained from `VecDuplicateVecs()` with either of the two above *_use_gemv options won’t work anymore. If needed, turn them off or use VecDuplicateVec() instead `VecScale()` is now a logically collective operation. * Add `VecISShift()` to shift a part of the vector. * `VecISSet()` does no longer accept NULL as index set. * `VecLoad()` automatically determines whether the file was written using 32-bit or 64-bit indices, and files can read with PETSc built either way. - PetscSection: * Add `PetscSectionGetBlockStarts()` and `PetscSectionSetBlockStarts()`. * Add argument to `PetscSectionCreateGlobalSection()` that can ignore the local section permutation. * Add `PetscSectionCreateComponentSubsection()`. - PetscPartitioner: * Add edge weights to `PetscPartitionerPartition()` - Mat: * Reset `MATLMVM` history vectors if size is changed. * Add specific support for `MatMultHermitianTranspose()` and `MatMultHermitianTransposeAdd()` in `MATSHELL`, `MATDENSE`, `MATNEST`, and `MATSCALAPACK` * Add function `MatProductGetAlgorithm()` `MATTRANSPOSEVIRTUAL`, `MATHERMITIANTRANSPOSEVIRTUAL`, `MATNORMAL`, `MATNORMALHERMITIAN` and `MATCOMPOSITE` now derive from `MATSHELL`. This implies a new behavior for those Mat, as calling `MatAssemblyBegin()`/ `MatAssemblyEnd()` destroys scalings and shifts for `MATSHELL`, but it was not previously the case for other `MatType`. * Add function `MatGetRowSumAbs()` to compute vector of L1 norms of rows ([`B`]`AIJ` only). * Add partial support for `MatBackwardSolve()`/`MatForwardSolve()` with `MATSOLVERMKL_PARDISO` and `MATSOLVERMKL_CPARDISO`. * Deprecate `MATIS` options `-matis_xxx`. Use `-mat_is_xxx`. * Add support for repeated entries in the local part of the local to global map for `MATIS` via the routines `MatISSetAllowRepeated()` and `MatISGetAllowRepeated()`. * Add support to dump and load a matrix of `MATIS` type. * Add dense representations of symmetric Broyden matrices `MATLMVMDBFGS`, `MATLMVMDDFP`, and `MATLMVMDQN`. * Add `MATSELLHIP` and the corresponding HIP kernels for matrix-vector multiplication. - MatCoarsen: * Add `MatCoarsenSetMaximumIterations()` with corresponding option `-mat_coarsen_max_it <4>`. The number of iteration of the coarsening method. Used for the HEM coarsener. * Add `MatCoarsenSetThreshold()` with corresponding option `-mat_coarsen_threshold <-1>`. Threshold for filtering graph for HEM. Like GAMG < 0 means no filtering. * Change API for several PetscCD methods used internally in `PCGAMG` and `MatCoarsen` (eg, change `PetscCDSetChuckSize()` to `PetscCDSetChunckSize()`), remove Mat argument from `PetscCDGetASMBlocks()`. - PC: * Add `PCGAMGSetLowMemoryFilter()` with corresponding option `-pc_gamg_low_memory_threshold_filter`. Use the system `MatFilter` graph/matrix filter, without a temporary copy of the graph, otherwise use method that can be faster. * Add `PCGAMGASMSetHEM()` with corresponding option `-pc_gamg_asm_hem_aggs N`. Use ASM smoother constructed from N applications of heavy edge matching. * `PCMAT` use `MatSolve()` if implemented by the matrix type. * Add `PCLMVMSetUpdateVec()` for the automatic update of the LMVM preconditioner inside a SNES solve. * Add `PCGAMGSetInjectionIndex()` with corresponding option `-pc_gamg_injection_index i,j,k...`. Inject provided indices of fine grid operator as first coarse grid restriction (sort of p-multigrid for C1 elements). * Add `PC_JACOBI_ROWL1` to `PCJacobiType` to use (scaled) l1 row norms for diagonal approximation with scaling of off-diagonal elements. * Add `PCJacobiSetRowl1Scale()` and `-pc_jacobi_rowl1_scale` scale to access new scale member of PC_Jacobi class, for new row l1 Jacobi. * Add `-mg_fine_...` prefix alias for fine grid options to override `-mg_levels_...` options, like `-mg_coarse_...`. * The generated sub-matrices in `PCFIELDSPLIT`, `PCASM`, and `PCBJACOBI` now retain any null space or near null space attached to them even if the non-zero structure of the outer matrix changes. * Add support for multiple subdomain per MPI process in `PCBDDC`. * Add `PCJacobiGetDiagonal()` to access the Jacobi inverted matrix diagonal and its square root variant. - SNES: * Add support for Quasi-Newton models in `SNESNEWTONTR` via `SNESNewtonTRSetQNType`. * Add support for trust region norm customization in `SNESNEWTONTR` via `SNESNewtonTRSetNormType`. * Remove default of `KSPPREONLY` and `PCLU` for `SNESNASM` subdomain solves: for `SNESASPIN` use `-npc_sub_ksp_type preonly -npc_sub_pc_type lu`. * Add function typedefs `SNESInitialGuessFn`, `SNESFunctionFn`, `SNESObjectiveFn`, `SNESJacobianFn`, and `SNESNGSFn`. * Deprecate `DMDASNESFunction`, `DMDASNESJacobian`, `DMDASNESObjective`, `DMDASNESFunctionVec`, `DMDASNESJacobianVec`, and `DMDASNESObjectiveVec` in favor of `DMDASNESFunctionFn`, `DMDASNESJacobianFn`, `DMDASNESObjectiveFn`, `DMDASNESFunctionVecFn`, `DMDASNESJacobianVecFn`, and `DMDASNESObjectiveVecFn`. - SNESLineSearch: * Deprecate `SNESLineSearchShellSetUserFunc()` and `SNESLineSearchShellGetUserFunc()` in favor of `SNESLineSearchShellSetApply()` and `SNESLineSearchShellGetApply()`. - TS: * Add support for custom predictor callbacks in the second-order generalized-alpha method using `TSAlpha2SetPredictor()`. * Allow adaptivity to change time step size in first step of second-order generalized-alpha method. * Add `TSSetPostEventStep()` to control the first step after event. * Rename `TSSetPostEventIntervalStep()` to `TSSetPostEventSecondStep()`, controlling the second step after event. * Rename option `-ts_event_post_eventinterval_step` to `-ts_event_post_event_second_step`. * Change the (event) indicator functions type from `PetscScalar[]` to `PetscReal[]` in the user `indicator()` callback set by `TSSetEventHandler()`. * Add `TSGetStepRollBack()` to access the internal rollback flag. * Add boolean flag to TSSetResize() to control when to resize. - TAO: * Deprecate `TaoCancelMonitors()` (resp. `-tao_cancelmonitors`) in favor of `TaoMonitorCancel()` (resp. `-tao_monitor_cancel`). * Deprecate `-tao_view_gradient`, `-tao_view_ls_residual`, `-tao_view_solution`, and `-tao_view_stepdirection` in favor of `-tao_monitor_gradient`, `-tao_monitor_ls_residual`, `-tao_monitor_solution`, and `-tao_monitor_step`. * Deprecate `-tao_draw_solution`, `-tao_draw_gradient`, and `-tao_draw_step` in favor of `-tao_monitor_solution_draw`, `-tao_monitor_gradient_draw`, and `-tao_monitor_step_draw`. * Deprecate `TaoSetMonitor()` in favor of `TaoMonitorSet()`. * Deprecate all of the provided Tao monitor routine names in favor of the standard PETSc naming conventions. - DM/DA: * Add MPI reduction inside `SNESComputeObjective_DMDA()`. No need to call reduction in local callback. * Deprecate `PetscSimplePointFunc` in favor of `PetscSimplePointFn`. * Move `DMPlexReorderDefaultFlag` to `DMReorderDefaultFlag`. * Add `DMCreateSectionPermutation()`, `DMReorderSectionGetType()`, and `DMReorderSectionSetType()`. * Add `DMReorderSectionGetDefault()` and `DMReorderSectionSetDefault()` to allow point permutations when sections are built automatically. * Change interface to `DMCreateSectionSubDM()` to add component specification. * Add DMDAGetBoundaryType(). - DMSwarm: * Add continuous DM argument to `DMSwarmProjectFields()`. * Add `DMSwarmGetFieldInfo()`. * Add `DMSwarmVectorGetField()`. - DMPlex: * Drop support for MED, i.e. remove `DMPlexCreateMedFromFile()` and `--with-med`. * Change protototype of `DMPlexSetSNESLocalFEM()`. Now it accepts a single context and a Boolean indicating to use the objective function callback. * Replace `DMProjectCoordinates()` with `DMSetCoordinateDisc()`. * Add argument to `DMPlexCreateCoordinateSpace()`. * Add `DMPlexCoordMap` and some default maps. * Add Boolean argument to `DMPlexPartitionLabelCreateSF()` to sort ranks. * Add `DMClearAuxiliaryVec()` to clear the auxiliary data. * Add `ignoreLabelHalo`, `sanitizeSubmesh`, and `ownershipTransferSF` arguments to `DMPlexFilter()`. * Change `DMPlexSetIsoperiodicFaceSF()`, `DMPlexGetIsoperiodicFaceSF()`, and `DMPlexSetIsoperiodicFaceTransform()` to accept multiple values for different periodic pairings. - FE/FV: * Add Jacobian type argument to `PetscFEIntegrateBdJacobian()`. * Add `PetscFVClone()`. * Add `PetscFVCreateDualSpace()`. - DMStag: * Add support for `DMLocalToLocalBegin()` and `DMLocalToLocalEnd()`. * Add `DMStagSetRefinementFactor()` and `DMStagGetRefinementFactor()` to set and get the refinement ratio. * Add support for arbitrary refinement ratio and degree of freedom in interpolation and restriction. - DT: * Add `PetscDSUpdateBoundaryLabels()`. - Update to version 3.20: - General: * Add `PetscOptionsBegin()`, `PetscOptionsEnd()`, `PetscOptionsInt()`, `PetscOptionsBool()`, `PetscOptionsIntArray()`, `PetscOptionsReal()`, `PetscOptionsRealArray()`, and `PetscOptionsScalar()` for Fortran. * Add `PetscAssertPointer()` as a replacement for `PetscValidPointer()`, `PetscValidCharPointer()`, `PetscValidIntPointer()`, `PetscValidInt64Pointer()`, `PetscValidCountPointer()`, `PetscValidBoolPointer()`, `PetscvalidScalarPointer()`, and `PetscValidRealPointer()`. * Convert standard header-guards in PETSc header-files to `#pragma` once. Users relying on specific preprocessor definitions to determine whether particular PETSc headers (e.g. `petscdm.h` used to be guarded by PETSCDM_H) have been included will find that this no longer works. While header-guards are technically “public” (insofar that they appear in public header-files), their name and value are considered implementation details. - Sys: * Add `PetscDeviceContextGetStreamHandle()` to return a handle to the stream the current device context is using. * Add utility functions `PetscGetCurrentCUDAStream()` and `PetscGetCurrentHIPStream()` to return the GPU stream the current device context is using. * Add `PetscStrcmpAny()` to compare against multiple non-empty strings. * Change arguments 4 and 5 of `PetscViewerBinaryReadAll()` and `PetscViewerBinaryWriteAll()` to `PetscInt64`. * Add `PetscIsCloseAtTolScalar()`. * Remove `PetscTellMyCell()` and related runtime option. * Remove `PetscTextBelt()` and related runtime option. * Remove deprecated `-malloc [no]` startup option. * Remove deprecated `-malloc_info` startup option. * Remove deprecated `-log_summary` option. * Remove `PetscURLShorten()`, it has not worked since 2019. Move `PetscIntStackCreate()`, `PetscIntStackDestroy()`, `PetscIntStackPush()`, `PetscIntStackPop()`, and `PetscIntStackEmpty()` declarations to public API in `petsclog.h`. * Add `-on_error_malloc_dump` option. - Event Logging: * Add `PetscLogState` interface for describing profiling events and stages. * Add `PetscLogHandler` interface that interprets the profiling events of a `PetscLogState`. * Add `PETSCLOGHANDLERDEFAULT` implementation of `PetscLogHandler`. * Add `PETSCLOGHANDLERNESTED` implementation of `PetscLogHandler`. * Add `PETSCLOGHANDLERTRACE` implementation of `PetscLogHandler`. * Add `PetscLogHandlerCreateTrace()`. * Add `PETSCLOGHANDLERMPE` implementation of `PetscLogHandler`. * Add `PETSCLOGHANDLERPERFSTUBS` implementation of `PetscLogHandler`. * Add `PETSCLOGHANDLERLEGACY` implementation of `PetscLogHandler`. * Add `PetscLogHandlerCreateLegacy()`. * Add `PetscLogPerfstubsBegin()` for log handling with PerfStubs/TAU. * Add `PetscLogLegacyCallbacksBegin()` to transition old log handler callbacks to the PetscLogHandler-based approach. * Add `PetscLogHandlerStart()` to connect a `PetscLogHandler` to PETSc’s global logging events. * Add `PetscLogStageGetName()`. * Add `PetscLogEventGetName()`. * Add `PetscLogEventsPause()` and `PetscLogEventsResume()` to isolate a logging event from unrelated in-process events. * Add `PetscLogClassGetClassId()`. * Add `PetscLogClassIdGetName()`. * Deprecate `PetscLogClassPerfInfoClear()` , `PetscLogClassPerfLogCreate()`, and `PetscLogClassPerfLogDestroy()`. * Deprecate `PetscClassPerfLogEnsureSize()`, `PetscClassRegInfoDestroy()`, `PetscClassRegLogCreate()`, `PetscClassRegLogDestroy()`, `PetscClassRegLogGetClass()`, and `PetscClassRegLogRegister()`. * Deprecate `PetscEventPerfInfoClear()` and `PetscEventPerfInfoCopy()`. * Deprecate `PetscEventPerfLogActivate()`, `PetscEventPerfLogActivateClass()`, `PetscEventPerfLogCreate()`, `PetscEventPerfLogDeactivate()`, `PetscEventPerfLogDeactivateClass()`, `PetscEventPerfLogDeactivatePop()`, `PetscEventPerfLogDeactivatePush()`, `PetscEventPerfLogDestroy()`, `PetscEventPerfLogEnsureSize()`, `PetscEventPerfLogGetVisible()`, and `PetscEventPerfLogSetVisible()`. * Deprecate `PetscEventRegLogCreate()`, `PetscEventRegLogDestroy()`, `PetscEventRegLogGetEvent()`, and `PetscEventRegLogRegister()`. * Deprecate `PetscStageLogCreate()`, `PetscStageLogDestroy()`, `PetscStageLogGetActive()`, `PetscStageLogGetClassPerfLog()`, `PetscStageLogGetClassRegLog()`, `PetscStageLogGetEventRegLog()`, `PetscStageLogGetStage()`, `PetscStageLogGetVisible()`, `PetscStageLogPop()`, `PetscStageLogPush()`, `PetscStageLogRegister()`, `PetscStageLogSetActive()`, `PetscStageLogSetVisible()`, `PetscStageLogGetCurrent()`, and `PetscStageLogGetEventPerfLog()`. * Deprecate `PetscLogGetStageLog()`. * Deprecate `PetscLogPushCurrentEvent_Internal()`. * Deprecate `PetscLogPopCurrentEvent_Internal()`. * Deprecate `PetscLogAllBegin()`. * Deprecate `PetscLogSet()`. * Add `PetscLogHandlerGetEventPerfInfo()`. * Add `PetscLogHandlerSetLogActions()`. * Add `PetscLogHandlerSetLogObjects()`. * Add `PetscLogHandlerLogObjectState()`. * Add `PetscLogHandlerGetNumObjects()`. * Add `PetscLogHandlerEventDeactivatePush()`. * Add `PetscLogHandlerEventDeactivatePop()`. * Add `PetscLogHandlerEventsPause()`. * Add `PetscLogHandlerEventsResume()`. * Add `PetscLogHandlerDump()`. * Add `PetscLogHandlerStageSetVisible()`. * Add `PetscLogHandlerStageGetVisible()`. * Add `PetscLogHandlerGetStagePerfInfo()`. * Add `PetscLogStageGetPerfInfo()`. * Add `PETSCLOGHANDLERNVTX` implementation of `PetscLogHandler`. - PetscViewer: * Add `PetscViewerASCIIOpenWithFileUnit()` and `PetscViewerASCIISetFileUnit()`. - Vec: * Add `VecErrorWeightedNorms()` to unify weighted local truncation error norms used in TS. * Add CUDA/HIP implementations for `VecAbs()`, `VecSqrt()`, `VecExp()`, `VecLog()`, `VecPointwiseMax()`, `VecPointwiseMaxAbs()`, and `VecPointwiseMin()`. * Add `VecMAXPBY()`. * Deprecate `VecChop()` in favor of `VecFilter()`. * Add `VecCreateFromOptions()`. - Mat: * Add `MatCreateDenseFromVecType()`. * Add support for calling `MatDuplicate()` on a matrix preallocated via `MatSetPreallocationCOO()`, and then `MatSetValuesCOO()` on the new matrix. * Remove MATSOLVERSPARSEELEMENTAL since it is no longer functional * Add `MATSELLCUDA`. It supports fast `MatMult()`, `MatMultTranspose()`, and `MatMultAdd()` on GPUs. * Add support for `MAT_FACTOR_LU` and `MAT_FACTOR_CHOLESKY` with `MATSOLVERMUMPS` for `MATNEST`. * `MatGetFactor()` can now return NULL for some combinations of matrices and solvers types. This is to support those combinations that can only be inspected at runtime (i.e. MatNest with AIJ blocks vs MatNest with SHELL blocks). * Remove `MatSetValuesDevice()`, `MatCUSPARSEGetDeviceMatWrite()`, `MatKokkosGetDeviceMatWrite`. * Add `MatDenseCUDASetPreallocation()` and `MatDenseHIPSetPreallocation()`. * Add support for `KOKKOS` in `MATH2OPUS`. * Add `-pc_precision` single option for use with `MATSOLVERSUPERLU_DIST`. * Add `MATDIAGONAL` which can be created with `MatCreateDiagonal()`. * Add `MatDiagonalGetDiagonal()`, `MatDiagonalRestoreDiagonal()`, `MatDiagonalGetInverseDiagonal()`, and `MatDiagonalRestoreInverseDiagonal()`. * Add support for `MatLoad()` and `MatView()` to load and store `MATMPIAIJ` matrices that have more than `PETSC_INT_MAX` nonzeros, so long as each rank has fewer than `PETSC_INT_MAX`. * Add `MatLRCSetMats()` and register creation routine for `MatLRC`. * Add CUDA/HIP implementation for `MatGetDiagonal()`. * Add a Boolean parameter to `MatEliminateZeros()` to force the removal of zero diagonal coefficients. * Expose `MatComputeVariableBlockEnvelope()` in public headers. * Add `MatEliminateZeros()` implementations for `MatBAIJ` and `MatSBAIJ`. * Deprecate `MatChop()` in favor of `MatFilter()`, with two additional Boolean parameters to compress the underlying storage and keep or discard near-zero diagonal coefficients. * Add `MatCreateFromOptions()`. * Add `MatSTRUMPACKGetReordering()`, `MatSTRUMPACKSetGeometricNxyz()`, `MatSTRUMPACKSetGeometricComponents()`, `MatSTRUMPACKSetGeometricWidth()`, `MatSTRUMPACKGetColPerm()`, `MatSTRUMPACKSetGPU()`, `MatSTRUMPACKGetGPU()`, `MatSTRUMPACKSetCompression()`, `MatSTRUMPACKGetCompression()`, `MatSTRUMPACKSetCompRelTol()`, `MatSTRUMPACKGetCompRelTol()`, `MatSTRUMPACKSetCompAbsTol()`, `MatSTRUMPACKGetCompAbsTol()`, `MatSTRUMPACKSetCompMinSepSize()`, `MatSTRUMPACKGetCompMinSepSize()`, `MatSTRUMPACKSetCompLeafSize()`, `MatSTRUMPACKGetCompLeafSize()`, `MatSTRUMPACKSetCompLossyPrecision()`, `MatSTRUMPACKGetCompLossyPrecision()`, `MatSTRUMPACKSetCompButterflyLevels()`, `MatSTRUMPACKGetCompButterflyLevels()`. * Add `MAT_STRUMPACK_GEOMETRIC`, `MAT_STRUMPACK_AMD`, `MAT_STRUMPACK_MMD`, `MAT_STRUMPACK_AND`, `MAT_STRUMPACK_MLF`, `MAT_STRUMPACK_SPECTRAL` to `MatSTRUMPACKReordering`. * Add `MatSTRUMPACKCompressionType`. * Remove `MatSTRUMPACKSetHSSLeafSize()`, `MatSTRUMPACKSetHSSMaxRank()`, `MatSTRUMPACKSetHSSMinSize()`, `MatSTRUMPACKSetHSSMinSepSize()`, `MatSTRUMPACKSetHSSAbsTol()`, `MatSTRUMPACKSetHSSRelCompTol()`, `MatSTRUMPACKSetHSSRelTol()`. - PC: * Add `PCMatGetApplyOperation()` and `PCMatSetApplyOperation()`. * Add `PCReduceFailedReason()`. * Add `PCSetKSPNestLevel()` and `PCSetKSPNestLevel()`. * Refactor PCMPI to be a private system used automatically when `-mpi_linear_solver_server` is used. The KSP and PC objects that solve the system now inherit any prefix provided initially with `KSPSetPrefix()` and do not require the previously required `mpi_` prefix. * Add option `-fieldsplit_1_pc_hpddm_schur_precondition` to use `PCHPDDM` on the Schur complements from `PCFIELDSPLIT`. * Add `PCGAMGSetAggressiveSquareGraph()` to use square graph method for aggressive coarsening that was the previous default coarsening approach before release 3.19. * Add `PCGAMGSetAggressiveMISk()` to set the number of levels (k) of aggressive MIS-k coarseing (2 is very common). * Add `PCGAMGSetMinDegreeOrderingMISk()` to use a minimum degree ordering for the (greedy) MIS-k algorithm. * Change `PCGAMGSetUseParallelCoarseGridSolve()` to `PCGAMGSetParallelCoarseGridSolve()`. * Add `PCGAMGSetRecomputeEstEig()` to set flag to have Chebyshev recompute its eigen estimates (default set to true). - KSP: * Add `KSPSetMinimumIterations()` and `KSPGetMinimumIterations()`. * Add `KSPSetNestLevel()` and `KSPGetNestLevel()`. * Support `KSPSetInitialGuessNonzero()` with `KSPPREONLY` and `PCDISTRIBUTE` when it is called on both the outer and inner KSP. - SNES: * Add a convenient, developer-level SNESConverged() function that runs the convergence test and updates the internal converged reason. * Swap the order of monitor and convergence test. Now monitors are always called after a convergence test. * Deprecate option -snes_ms_norms in favor of -snes_norm_schedule always. - TS: * Remove `TSErrorWeightedNormInfinity()`, `TSErrorWeightedNorm2()`, `TSErrorWeightedENormInfinity()`, `TSErrorWeightedENorm2()` since the same functionality can be obtained with `VecErrorWeightedNorms()`. * Add support for time-dependent solvers with varying solution size using `TSSetResize()`. * Add support for Diagonally Implicit Runge-Kutta methods with the new `TSDIRK` type. - TAO: * Add `TaoADMMGetRegularizerCoefficient()`. * Add `TAOBNCG`, `TaoBNCGGetType()` and `TaoBNCGSetType()`. - DM/DA: * Add support for `DMDAGetElements()` for Fortran. * Add support for clearing named vectors with `DMClearNamedGlobalVectors()` and `DMClearNamedLocalVectors()`. * Add `DMPrintCellIndices()` for debugging. * Add `DMUseTensorOrder()`. * Add `DMCeedCreate()`, `DMCeedComputeGeometry()`, and `DMCeedDestroy()`. - DMSwarm: * Add scatter mode to `DMSwarmProjectFields()` and no longer create vectors. * Promote `DMSwarmDataFieldGetEntries()`, `DMSwarmDataFieldRestoreEntries()`, `DMSwarmDataBucketGetDMSwarmDataFieldByName()`, `DMSwarmDataBucketGetDMSwarmDataFieldIdByName()`, and `DMSwarmDataBucketQueryDMSwarmDataFieldByName()` to public interface. - DMPlex: * Add `DMPlexTransformExtrudeGetPeriodic()` and `DMPlexTransformExtrudeSetPeriodic()`. * Replace `DMPlexGetGhostCellStratum()` with `DMPlexGetCellTypeStratum()`. * Add `DMPlexSetUseMatClosurePermutation()` and `DMPlexGetUseMatClosurePermutation()`. * Add `DMPlexGetUseCeed()`, `DMPlexSetUseCeed()`, and `DMPlexSNESComputeResidualCEED()`. * Add `DMPlexSNESComputeResidualDS()`. - FE/FV: * Add `PLEXFE_QFUNCTION` macro to create CEED QFunctions from Plex pointwise functions. - DMNetwork: * Add `DMNetworkViewSetShowRanks()`, `DMNetworkViewSetViewRanks()`, `DMNetworkViewSetShowGlobal()`, `DMNetworkViewSetShowVertices()`, `DMNetworkViewSetShowNumbering()`. * Add `-dmnetwork_view_all_ranks`, `-dmnetwork_view_rank_range`, `-dmnetwork_view_no_vertices`, `-dmnetwork_view_no_numbering`, for viewing DMNetworks with the Matplotlib viewer. * Add `-dmnetwork_view_zoomin_vertices` `-dmnetwork_view_zoomin_vertices_padding` for viewing `DMNetworks` with the Matplotlib viewer. - DT: * Add `PETSCFEVECTOR` for making a finite element that is a vector of copies of another finite element. * Add `PetscFECreateVector()`. * Add `PETSCDUALSPACESUM` for a finite element dual basis that is the sum of other dual bases. * Add `PetscDualSpaceCreateSum()`. * Add `PetscDualSpaceSumSetNumSubspaces()`. * Add `PetscDualSpaceSumGetNumSubspaces()`. * Add `PetscDualSpaceSumSetSubspace()`. * Add `PetscDualSpaceSumGetSubspace()`. * Add `PetscDualSpaceSumSetConcatenate()`. * Add `PetscDualSpaceSumGetConcatenate()`. * Add `PetscDualSpaceSumSetInterleave()`. * Add `PetscDualSpaceSumGetInterleave()`. * Add `PetscSpaceSumSetInterleave()`. * Add `PetscSpaceSumGetInterleave()`. * Add `PetscDualSpaceGetInteriorSection()`. - Fortran: * Add `PetscCheck()` and `PetscCheckA()` for Fortran. * Change `PETSC_HAVE_FORTRAN` to `PETSC_USE_FORTRAN_BINDINGS` to indicate if PETSc is built with Fortran bindings. - Update to version 3.19: - General: * Add `PetscOptionsBegin()`, `PetscOptionsEnd()`, `PetscOptionsInt()`, `PetscOptionsBool()`, `PetscOptionsIntArray()`, `PetscOptionsReal()`, `PetscOptionsRealArray()`, and `PetscOptionsScalar()` for Fortran. * Add `PetscAssertPointer()` as a replacement for `PetscValidPointer()`, `PetscValidCharPointer()`, `PetscValidIntPointer()`, `PetscValidInt64Pointer()`, `PetscValidCountPointer()`, `PetscValidBoolPointer()`, `PetscvalidScalarPointer()` and `PetscValidRealPointer()`. * Convert standard header-guards in PETSc header-files to `#pragma once`. Users relying on specific preprocessor definitions to determine whether particular PETSc headers (e.g. `petscdm.h` used to be guarded by `PETSCDM_H`) have been included will find that this no longer works. While header-guards are technically "public" (insofar that they appear in public header-files), their name and value are considered implementation details. - Sys: * Add `PetscDeviceContextGetStreamHandle()` to return a handle to the stream the current device context is using. * Add utility functions `PetscGetCurrentCUDAStream()` and `PetscGetCurrentHIPStream()` to return the GPU stream the current device context is using. * Add `PetscStrcmpAny()` to compare against multiple non-empty strings. * Change arguments 4 and 5 of `PetscViewerBinaryReadAll()` and `PetscViewerBinaryWriteAll()` to `PetscInt64`. * Add `PetscIsCloseAtTolScalar()`. * Remove `PetscTellMyCell()` and related runtime option. * Remove `PetscTextBelt()` and related runtime option. * Remove deprecated `-malloc [no]` startup option. * Remove deprecated `-malloc_info` startup option. * Remove deprecated `-log_summary` option. * Remove `PetscURLShorten()`, it has not worked since 2019. * Move `PetscIntStackCreate()`, `PetscIntStackDestroy()`, `PetscIntStackPush()`, `PetscIntStackPop()`, and `PetscIntStackEmpty()` declarations to public API in `petsclog.h`. * Add `-on_error_malloc_dump` option. - Event Logging: * Add `PetscLogState` interface for describing profiling events and stages * Add `PetscLogHandler` interface that interprets the profiling events of a `PetscLogState` * Add `PETSCLOGHANDLERDEFAULT` implementation of `PetscLogHandler` * Add `PETSCLOGHANDLERNESTED` implementation of `PetscLogHandler` * Add `PETSCLOGHANDLERTRACE` implementation of `PetscLogHandler` * Add `PetscLogHandlerCreateTrace()` * Add `PETSCLOGHANDLERMPE` implementation of `PetscLogHandler` * Add `PETSCLOGHANDLERPERFSTUBS` implementation of `PetscLogHandler` * Add `PETSCLOGHANDLERLEGACY` implementation of `PetscLogHandler` * Add `PetscLogHandlerCreateLegacy()` * Add `PetscLogPerfstubsBegin()` for log handling with PerfStubs/TAU * Add `PetscLogLegacyCallbacksBegin()` to transition old log handler callbacks to the `PetscLogHandler`-based approach * Add `PetscLogHandlerStart()` to connect a `PetscLogHandler` to PETSc's global logging events. * Add `PetscLogStageGetName()`. * Add `PetscLogEventGetName()`. * Add `PetscLogEventsPause()` and `PetscLogEventsResume()` to isolate a logging event from unrelated in-process events. * Add `PetscLogClassGetClassId()`. * Add `PetscLogClassIdGetName()`. * Deprecate `PetscLogClassPerfInfoClear()`, `PetscLogClassPerfLogCreate()`, and `PetscLogClassPerfLogDestroy()`. * Deprecate `PetscClassPerfLogEnsureSize()`, `PetscClassRegInfoDestroy()`, `PetscClassRegLogCreate()`, `PetscClassRegLogDestroy()`, `PetscClassRegLogGetClass()`, and `PetscClassRegLogRegister()`. * Deprecate `PetscEventPerfInfoClear()` and `PetscEventPerfInfoCopy()`. * Deprecate `PetscEventPerfLogActivate()`, `PetscEventPerfLogActivateClass()`, `PetscEventPerfLogCreate()`, `PetscEventPerfLogDeactivate()`, `PetscEventPerfLogDeactivateClass()`, `PetscEventPerfLogDeactivatePop()`, `PetscEventPerfLogDeactivatePush()`, `PetscEventPerfLogDestroy()`, `PetscEventPerfLogEnsureSize()`, `PetscEventPerfLogGetVisible()`, and `PetscEventPerfLogSetVisible()`. * Deprecate `PetscEventRegLogCreate()`, `PetscEventRegLogDestroy()`, `PetscEventRegLogGetEvent()`, and `PetscEventRegLogRegister()`. * Deprecate `PetscStageLogCreate()`, `PetscStageLogDestroy()`, `PetscStageLogGetActive()`, `PetscStageLogGetClassPerfLog()`, `PetscStageLogGetClassRegLog()`, `PetscStageLogGetEventRegLog()`, `PetscStageLogGetStage()`, `PetscStageLogGetVisible()`, `PetscStageLogPop()`, `PetscStageLogPush()`, `PetscStageLogRegister()`, `PetscStageLogSetActive()`, `PetscStageLogSetVisible()`, `PetscStageLogGetCurrent()`, and `PetscStageLogGetEventPerfLog()`. * Deprecate `PetscLogGetStageLog()`. * Deprecate `PetscLogPushCurrentEvent_Internal()`. * Deprecate `PetscLogPopCurrentEvent_Internal()`. * Deprecate `PetscLogAllBegin()`. * Deprecate `PetscLogSet()`. * Add `PetscLogHandlerGetEventPerfInfo()`. * Add `PetscLogHandlerSetLogActions()`. * Add `PetscLogHandlerSetLogObjects()`. * Add `PetscLogHandlerLogObjectState()`. * Add `PetscLogHandlerGetNumObjects()`. * Add `PetscLogHandlerEventDeactivatePush()`. * Add `PetscLogHandlerEventDeactivatePop()`. * Add `PetscLogHandlerEventsPause()`. * Add `PetscLogHandlerEventsResume()`. * Add `PetscLogHandlerDump()`. * Add `PetscLogHandlerStageSetVisible()`. * Add `PetscLogHandlerStageGetVisible()`. * Add `PetscLogHandlerGetStagePerfInfo()`. * Add `PetscLogStageGetPerfInfo()`. * Add `PETSCLOGHANDLERNVTX` implementation of `PetscLogHandler`. - PetscViewer: * Add `PetscViewerASCIIOpenWithFileUnit()` and `PetscViewerASCIISetFileUnit()`. - Vec: * Add `VecErrorWeightedNorms()` to unify weighted local truncation error norms used in `TS`. * Add CUDA/HIP implementations for `VecAbs()`, `VecSqrt()`, `VecExp()`, `VecLog()`, `VecPointwiseMax()`, `VecPointwiseMaxAbs()` and `VecPointwiseMin()`. * Add `VecMAXPBY()`. * Deprecate `VecChop()` in favor of `VecFilter()`. * Add `VecCreateFromOptions()`. - PetscSection: * Add `PetscSectionResetClosurePermutation()`. - Mat: * Add `MatCreateDenseFromVecType()`. * Add support for calling `MatDuplicate()` on a matrix preallocated via `MatSetPreallocationCOO()`, and then `MatSetValuesCOO()` on the new matrix. * Remove `MATSOLVERSPARSEELEMENTAL` since it is no longer functional. * Add `MATSELLCUDA`. It supports fast `MatMult()`, `MatMultTranspose()`, and `MatMultAdd()` on GPUs. * Add support for `MAT_FACTOR_LU` and `MAT_FACTOR_CHOLESKY` with `MATSOLVERMUMPS` for `MATNEST`. * `MatGetFactor()` can now return `NULL` for some combinations of matrices and solvers types. This is to support those combinations that can only be inspected at runtime (i.e. MatNest with AIJ blocks vs MatNest with SHELL blocks). * Remove `MatSetValuesDevice()`, `MatCUSPARSEGetDeviceMatWrite()`, `MatKokkosGetDeviceMatWrite` * Add `MatDenseCUDASetPreallocation()` and `MatDenseHIPSetPreallocation()`. * Add support for KOKKOS in `MATH2OPUS`. * Add `-pc_precision single` option for use with `MATSOLVERSUPERLU_DIST`. * Add `MATDIAGONAL` which can be created with `MatCreateDiagonal()`. * Add `MatDiagonalGetDiagonal()`, `MatDiagonalRestoreDiagonal()`, `MatDiagonalGetInverseDiagonal()`, and `MatDiagonalRestoreInverseDiagonal()`. * Add support for `MatLoad()` and `MatView()` to load and store `MATMPIAIJ` matrices that have more than `PETSC_INT_MAX` nonzeros, so long as each rank has fewer than `PETSC_INT_MAX`. * Add `MatLRCSetMats()` and register creation routine for `MatLRC`. * Add CUDA/HIP implementation for `MatGetDiagonal()`. * Add a Boolean parameter to `MatEliminateZeros()` to force the removal of zero diagonal coefficients. * Expose `MatComputeVariableBlockEnvelope()` in public headers. * Add `MatEliminateZeros()` implementations for `MatBAIJ` and `MatSBAIJ`. * Deprecate `MatChop()` in favor of `MatFilter()`, with two additional Boolean parameters to compress the underlying storage and keep or discard near-zero diagonal coefficients. * Add `MatCreateFromOptions()`. * Add `MatSTRUMPACKGetReordering()`, `MatSTRUMPACKSetGeometricNxyz()`, `MatSTRUMPACKSetGeometricComponents()`, `MatSTRUMPACKSetGeometricWidth()`, `MatSTRUMPACKGetColPerm()`, `MatSTRUMPACKSetGPU()`, `MatSTRUMPACKGetGPU()`, `MatSTRUMPACKSetCompression()`, `MatSTRUMPACKGetCompression()`, `MatSTRUMPACKSetCompRelTol()`, `MatSTRUMPACKGetCompRelTol()`, `MatSTRUMPACKSetCompAbsTol()`, `MatSTRUMPACKGetCompAbsTol()`, `MatSTRUMPACKSetCompMinSepSize()`, `MatSTRUMPACKGetCompMinSepSize()`, `MatSTRUMPACKSetCompLeafSize()`, `MatSTRUMPACKGetCompLeafSize()`, `MatSTRUMPACKSetCompLossyPrecision()`, `MatSTRUMPACKGetCompLossyPrecision()`, `MatSTRUMPACKSetCompButterflyLevels()`, `MatSTRUMPACKGetCompButterflyLevels()`. * Add `MAT_STRUMPACK_GEOMETRIC`, `MAT_STRUMPACK_AMD`, `MAT_STRUMPACK_MMD`, `MAT_STRUMPACK_AND`, `MAT_STRUMPACK_MLF`, `MAT_STRUMPACK_SPECTRAL` to `MatSTRUMPACKReordering`. * Add `MatSTRUMPACKCompressionType`. * Remove `MatSTRUMPACKSetHSSLeafSize()`, `MatSTRUMPACKSetHSSMaxRank()`, `MatSTRUMPACKSetHSSMinSize()`, `MatSTRUMPACKSetHSSMinSepSize()`, `MatSTRUMPACKSetHSSAbsTol()`, `MatSTRUMPACKSetHSSRelCompTol()`, `MatSTRUMPACKSetHSSRelTol()`. - PC: * Add `PCMatGetApplyOperation()` and `PCMatSetApplyOperation()`. * Add `PCReduceFailedReason()`. * Add `PCSetKSPNestLevel()` and `PCSetKSPNestLevel()`. * Refactor `PCMPI` to be a private system used automatically when `-mpi_linear_solver_server` is used. The `KSP` and `PC` objects that solve the system now inherit any prefix provided initially with `KSPSetPrefix()` and do not require the previously required `mpi_` prefix. * Add option `-fieldsplit_1_pc_hpddm_schur_precondition` to use `PCHPDDM` on the Schur complements from `PCFIELDSPLIT`. * Add `PCGAMGSetAggressiveSquareGraph()` to use square graph method for aggressive coarsening that was the previous default coarsening approach before release 3.19. * Add `PCGAMGSetAggressiveMISk()` to set the number of levels (k) of aggressive MIS-k coarseing (2 is very common). * Add `PCGAMGSetMinDegreeOrderingMISk()` to use a minimum degree ordering for the (greedy) MIS-k algorithm. * Change `PCGAMGSetUseParallelCoarseGridSolve()` to `PCGAMGSetParallelCoarseGridSolve()`. * Add `PCGAMGSetRecomputeEstEig()` to set flag to have Chebyshev recompute its eigen estimates (default set to true). - KSP: * Add `KSPSetMinimumIterations()` and `KSPGetMinimumIterations()`. * Add `KSPSetNestLevel()` and `KSPGetNestLevel()`. * Support `KSPSetInitialGuessNonzero()` with `KSPPREONLY` and `PCDISTRIBUTE` when it is called on both the outer and inner `KSP`. - SNES: * Add a convenient, developer-level `SNESConverged()` function that runs the convergence test and updates the internal converged reason. * Swap the order of monitor and convergence test. Now monitors are always called after a convergence test. * Deprecate option `-snes_ms_norms` in favor of `-snes_norm_schedule always`. - SNESLineSearch: - TS: * Remove `TSErrorWeightedNormInfinity()`, `TSErrorWeightedNorm2()`, `TSErrorWeightedENormInfinity()`, `TSErrorWeightedENorm2()` since the same functionality can be obtained with `VecErrorWeightedNorms()`. * Add support for time-dependent solvers with varying solution size using `TSSetResize()`. * Add support for Diagonally Implicit Runge-Kutta methods with the new `TSDIRK` type. - TAO: * Add `TaoADMMGetRegularizerCoefficient()`. * Add `TAOBNCG`, `TaoBNCGGetType()` and `TaoBNCGSetType()`. - DM/DA: * Add support for `DMDAGetElements()` for Fortran. * Add support for clearing named vectors with `DMClearNamedGlobalVectors()` and `DMClearNamedLocalVectors()`. * Add `DMPrintCellIndices()` for debugging. * Add `DMUseTensorOrder()`. * Add `DMCeedCreate()`, `DMCeedComputeGeometry()`, and `DMCeedDestroy()`. - DMSwarm: * Add scatter mode to `DMSwarmProjectFields()` and no longer create vectors. * Promote `DMSwarmDataFieldGetEntries()`, `DMSwarmDataFieldRestoreEntries()`, `DMSwarmDataBucketGetDMSwarmDataFieldByName()`, `DMSwarmDataBucketGetDMSwarmDataFieldIdByName()`, and `DMSwarmDataBucketQueryDMSwarmDataFieldByName()` to public interface. - DMPlex: * Add `DMPlexTransformExtrudeGetPeriodic()` and `DMPlexTransformExtrudeSetPeriodic()`. * Replace `DMPlexGetGhostCellStratum()` with `DMPlexGetCellTypeStratum()`. * Add `DMPlexSetUseMatClosurePermutation()` and `DMPlexGetUseMatClosurePermutation()`. * Add `DMPlexGetUseCeed()`, `DMPlexSetUseCeed()`, and `DMPlexSNESComputeResidualCEED()`. * Add `DMPlexSNESComputeResidualDS()`. - FE/FV: * Add `PLEXFE_QFUNCTION` macro to create CEED QFunctions from Plex pointwise functions. - DMNetwork: * Add `DMNetworkViewSetShowRanks()`, `DMNetworkViewSetViewRanks()`, `DMNetworkViewSetShowGlobal()`, `DMNetworkViewSetShowVertices()`, `DMNetworkViewSetShowNumbering()`. * Add `-dmnetwork_view_all_ranks` `-dmnetwork_view_rank_range` `-dmnetwork_view_no_vertices` `-dmnetwork_view_no_numbering` for viewing DMNetworks with the Matplotlib viewer. * Add `-dmnetwork_view_zoomin_vertices` `-dmnetwork_view_zoomin_vertices_padding` for viewing DMNetworks with the Matplotlib viewer. - DT: * Add `PETSCFEVECTOR` for making a finite element that is a vector of copies of another finite element. * Add `PetscFECreateVector()`. * Add `PETSCDUALSPACESUM` for a finite element dual basis that is the sum of other dual bases. * Add `PetscDualSpaceCreateSum()`. * Add `PetscDualSpaceSumSetNumSubspaces()`. * Add `PetscDualSpaceSumGetNumSubspaces()`. * Add `PetscDualSpaceSumSetSubspace()`. * Add `PetscDualSpaceSumGetSubspace()`. * Add `PetscDualSpaceSumSetConcatenate()`. * Add `PetscDualSpaceSumGetConcatenate()`. * Add `PetscDualSpaceSumSetInterleave()`. * Add `PetscDualSpaceSumGetInterleave()`. * Add `PetscSpaceSumSetInterleave()`. * Add `PetscSpaceSumGetInterleave()`. * Add `PetscDualSpaceGetInteriorSection()`. - Fortran: * Add `PetscCheck()` and `PetscCheckA()` for Fortran. * Change `PETSC_HAVE_FORTRAN` to `PETSC_USE_FORTRAN_BINDINGS` to indicate if PETSc is built with Fortran bindings. - Use packaged libYAML instead of building the clone incorporated in the PETSc source code. This allows to address security issues through updates to that package (CVE-2024-35328, boo#1226364). - Refresh & Rename: petsc-3.3-p2-no-rpath.patch -> Remove-rpath-test.patch - Add: Allow-lib64-as-library-directory-for-scalapack.patch ------------------------------------------------------------------- Sun Dec 3 12:24:27 UTC 2023 - Atri Bhattacharya <badshah400@gmail.com> - Make a symlink to the real pkgconfig dir (for example, in an installed system) for package's absurdly located pkgconfig file. This is a minimal workaround to boo#1217751, I guess. - Cosmetic touch-ups. ------------------------------------------------------------------- Mon Oct 23 19:21:28 UTC 2023 - Egbert Eich <eich@suse.com> - Disable HPC flavors on i586 ------------------------------------------------------------------- Mon Oct 23 12:01:23 UTC 2023 - Nicolas Morey <nicolas.morey@suse.com> - Drop support for obsolete openmpi[123] - Prepare support for openmpi5 ------------------------------------------------------------------- Wed Mar 22 02:39:29 UTC 2023 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Update to version 3.18.5. * Too many changes to list, for details see https://petsc.org/release/docs/changes/ - Fix broken usage of MAKEFLAGS, causing build failures with gmake >= 4.4.1. ------------------------------------------------------------------- Wed Feb 15 05:13:56 UTC 2023 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Remove incorrect library symlink with major version only. ------------------------------------------------------------------- Mon Feb 6 07:16:48 UTC 2023 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Update to version 3.18.4. * Too many changes to list, for details see https://petsc.org/release/docs/changes/ - Use Python3 also on Leap/SLE, Python 2.7 is no longer supported - Clean up spec file - Remove unreproducible build host core count from petscvariables (NPMAX, MAKE_NP etc). - Remove doc subpackage, documentation is no longer included in upstream tarball. ------------------------------------------------------------------- Sat Jul 16 19:49:40 UTC 2022 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Fix library package name for non-HPC flavors. - Remove openmpi1 for non-HPC. - Correct valgrind-devel BuildRequires. - Add rpmlintrc to ignore some empty files in examples ------------------------------------------------------------------- Wed Feb 16 15:39:12 UTC 2022 - Egbert Eich <eich@suse.com> - Fix HPC module settings (bsc#1195782). - Remove dependency on librt for libsuitparse to make the non-HPC build on Factory again. ------------------------------------------------------------------- Wed Mar 24 09:50:05 UTC 2021 - Egbert Eich <eich@suse.com> - Update to version 3.14.5. * Documentation & man page fixes, removal of non-existing functions. * CPARDISO: stick to OpenMPI BLACS when needed * bugfix for MatMatMultSymbolic_MPIAIJ_MPIDense() when Bbn1 = 0. Bb (column block size) zero lead to infinite loop in MatMatMultNumeric_MPIAIJ_MPIDense() with n=0. * petscviewer: fix the fortran bindings of XXXViewFromOptions when called with obj=PETSC_NULL_XXX. * PetscOptionsPrefixPush: Accept numbers if the stack is not empty. * PetscOptionsClearValue: Also clear 'help_intro' slot. * PetscOptionsDestroyDefault: Fix possible NULL-dereference. * PetscOptionsUsed: Fix for case-insensitive string comparison. * Do not use MPI_Bcast() on a single rank - This allows direct reading of much larger files, in, for example, MatLoad_SeqAIJ_Binary. * PCHPDDM: fix for KSPLSQR. * DMPlexVTKWriteAll_VTU: numerous bugfixes. * MatBAIJ: FIx specialization for size 9. ------------------------------------------------------------------- Wed Feb 24 16:27:54 UTC 2021 - Christian Goll <cgoll@suse.com> - Updated to version 3.14.4 (jsc#SLE-14959) * versionToTuple: ignore leading strings in package versions. i.e 5.3.3consortium -> 5.3.3 * Add error checks for integer overflow for MatSeqXAIJSetPreallocation when the user provides nnz[]. Otherwise PetscMalloc() can produce error messages with requests to absurds amount of memory. Improve the error message for PetscIntMultError() and other casting routines and add more seealso entries to the manual pages. * Update dmlocalts.c to prevent zeroing out of locX_t after being computed in TSComputeIJacobian_DMLocal. * nargs.Arg: Remove interactiveness; provide useful error when key is not found. * DMPlexLandau: fix implicit conversion. * Allow users to mistaken use openmpi or mpich when setting mpi or mpi-dir and consistently use local variable 'name' * Consume -help in PetscOptionsSetValue() so it can be set from RC file etc. * Enable search patterns to have 'src*' at start. * Fix Matlab int32 to match changed changes in PETSc data types. * Generate error instead of crashing when estimating eigenvalues for Chebyshev, no right hand side vector is available and the user requested to not use a noisy right hand side. * Fix pcmgsetlevels() for Fortran to properly convert the C MPI communictors to Fortran. * Fix PCMGSetLevels_MG() to support the use of MPI_COMM_NULL for communicators that that live on a subset of the orginal communicator. * Add additional documentation material to PCMGSetLevels() explaining how one must handle the restriction and interpolation operations that move between different levels which have a different number of MPI ranks. * Call PetscCUDAInitializeCheck() in MatConvert_SeqAIJ_SeqAIJCUSPARSE since it uses cuSparse(). * Missing this sometimes produces errors in the CU tests, but other times it passes. I don't understand why it is not needed. * checkbadSource now prints line numbers of where it finds problems. * Add support to Fortran interface for PCASMGetSubKSP() and PCGASMGetSubKSP() to use PETSC_NULL_INT for first two arguments. * Missing define in landaucu.cu. * Fix for PCView_BJacobi() case when neither if case is statisfied. * DMCreateInterpolation() requires a custom Fortran stub because it RETURNS an optional vector. * Add -da_refine to manual page for DMDASetRefinementFactor(). * AIJMKL: cannot print a scalar in case of complex. * Fix memory leaks in TSTrajectoryCreate_Memory() and possibly bugs * Don't generate an error if the user does not free all objects while using SuperLU_DIST. * -ksp_view -ksp_type gmres -pc_type gasm fails on one process. Fixed by removing special case handling of size 1 that tried to reuse orginal viewer as subviewer which does not work. * Add KSPGMRESSetBreakdownTolerance() and -ksp_gmres_breakdown_tolerance - to restore old GMRES behaviour for MOOSE. * Fix bug introduced by PCASMSetSubMatType() when MAT_REUSE_MATRIX is used with a different type of pmat compared to pmat[i]. * Always destroy previously created pmat[i] and use MAT_INITIAL_MATRIX * Clarify integers set with to ISCreateBlock() and ISBlockSetIndices() in manual pages. * Remove ierr = VecSetInf(ksp->vec_sol);CHKERRQ(ierr); from KSPSetUp_Chebyshev() since ksp->vec_sol may not yet exist and it is not needed since VecSetInf(ksp->vec_sol) is set in KSPSolve() just before the actual solve if ksp->reason = KSP_DIVERGED_PC_FAILED. * Remove mention of DMDAGetLocalInfoF90() since it does not exist, Fortran version has same name as C version. * MATSHELL: matrix sizes may not be known at creation time. * Pass PetscDrawSetSave() and PetscDrawSetSaveFinalImage() to PetscViewerGetSubViewer_Draw(). Otherwise MatView() on parallel matrices, for example, will not generate an image file. * config MPI: fix type of self.libdir (which is passed to os.path.join). * MUMPS: add -DBLR_MT when configuring --with-openmp. * missing PDIPM and typo in BQNLS for fortran imports. * Fixed issue where scalapack matrix is created with a communicator different from MPI_COMM_WORLD. * Fix PetscErrorCode typos in Fortran stubs. * Remove interface declarations for functions that don't exist. * SNESMultiblock: add back into build (had been missing - still untested). * MATDAAD: remove vestigial references to deleted DAAD. * Fix device atomics with 64-bit indices and prefer long long over int64_t * petsc4py.py: set download-petsc4py-commit to None to overcome missing key error. * petsc4py: Update Cython build * Set `language_level` to `3str` if supported (Cython >= 0.29) * Initial preparations for upcoming release Cython 3.0 * Require Cython >= 0.24, older versions do not longer work * Improve python-related entries in configure --help. * add missing --download-petsc4py option. * remove python options other than --with-python-exec which have no effect. * move --with-python-exec to PETSc section. * PetscPythonFindLibrary: One more way to get pythonlib. Hotfix for case when LDLIBRARY yields libpython<version>.a erroneously. * SLEPc: pass PYTHONPATH for slepc4py. * Add manual page for MATMPIDENSE. * Fix outdated mention of "-snes_ksp_ew_conv" in users manual. * Improve manual pages for MatGetValuesLocal() and MatGetValues() to clarify what values may be obtained with these routines. * Add to manual pages the use of call XXXView(x,0) from the debugger. * KSPGCR: add man pages for setting and getting restart. * Put the docs for -snes_test_jacobian in SNESSetFromOptions() instead of hidden away in developer routine. * Improve clarity of docs for PETSC_VIEWER_SOCKET with Matlab. - Refactored patches: * petsc-3.3-p2-no-rpath.patch * petsc-3.7-fix-pastix-detection.patch ------------------------------------------------------------------- Fri Feb 5 20:18:20 UTC 2021 - Egbert Eich <eich@suse.com> - Add build support for gcc10 to HPC build (bsc#1174439). - Add openmpi4 flavors. ------------------------------------------------------------------- Thu Jan 28 18:30:29 UTC 2021 - Egbert Eich <eich@suse.com> - Change 'Requires:' to other HPC packages to %requires_eq to depend on the exact version. This should take care of HPC packages ignoring proper ABI versioning. ------------------------------------------------------------------- Thu Nov 5 16:52:47 UTC 2020 - Ana Guerrero Lopez <aguerrero@suse.com> - Update to version 3.14.1 * https://www.mcs.anl.gov/petsc/documentation/changes/314.html - Refresh patches ------------------------------------------------------------------- Tue Jun 23 12:43:57 UTC 2020 - Egbert Eich <eich@suse.com> - Make sure, doc package is built for SLE (bsc#1173269). ------------------------------------------------------------------- Wed Jan 8 15:40:51 UTC 2020 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Force use of python3 on Tumbleweed. As the python2 executable was also set in petsc's configuration, dependent packages no longer depend on python2. - Fix she-bangs in python scripts - Only require python{2,3}-base packages instead of full packages. ------------------------------------------------------------------- Wed Dec 11 17:31:03 UTC 2019 - Egbert Eich <eich@suse.com> - Remove unneeded dependency from HPC devel package. ------------------------------------------------------------------- Tue Dec 3 08:31:20 UTC 2019 - Egbert Eich <eich@suse.com> - Update to version 3.12.2 (jsc#SLE-8505) * https://www.mcs.anl.gov/petsc/documentation/changes/312.html - Remove petsc-3.3-p2-fix-shared-libs-sonames.patch link created directly in %install section - Remove petsc-3.3-p2-dont-check-for-option-mistakes.patch not needed. - Remove petsc-3.3-fix-error-detection-in-makefile.patch not needed. - Add non-HPC build with openmpi3 - Add HPC builds for gcc8 & gcc 9 (jsc#SLE-7766 & jsc#SLE-8604). - Disable openmpi1 builds for SLE/Leap > 15.1. - Enable openmpi3 builds for Leap and SLE > 15.1 (jsc#SLE-7773). ------------------------------------------------------------------- Wed Nov 27 16:38:25 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Reflect renaming of openmpi packages to openmpi1 in Tumbleweed, fixes unresolvable packages. - Fix copy'n'paste error, mpi_vers vs. mpi_ver - Add non-HPC openmpi2 flavor. ------------------------------------------------------------------- Wed Aug 21 08:20:23 UTC 2019 - Ana Guerrero Lopez <aguerrero@suse.com> - Update to version 3.11.3 (jsc#SLE-8505) - https://www.mcs.anl.gov/petsc/documentation/changes/311.html - Binaries have changed path from bin/ to lib/petsc/bin/ - Patches removed, merged by upstream * Python-Fix-a-number-of-scripts-to-by-Python-3-compliant.patch * petsc-fix-nonmpi.patch - Patches refreshed * petsc-3.3-p2-fix-shared-libs-sonames.patch * petsc-3.3-p2-no-rpath.patch * petsc-3.3-p2-dont-check-for-option-mistakes.patch * petsc-3.3-fix-error-detection-in-makefile.patch * petsc-3.7-fix-pastix-detection.patch - Set -fPIC also on x86_64 ------------------------------------------------------------------- Fri Jul 19 16:15:44 UTC 2019 - Egbert Eich <eich@suse.com> - Upped memory constraints to 6G for non-ppc systems as well, leaving the special ppc treatment in place in case we need to up it some more there. ------------------------------------------------------------------- Wed Jul 17 06:07:56 UTC 2019 - Michel Normand <normand@linux.vnet.ibm.com> - update _constraints for PowerPC more than 4G memory - Add BuildRequires libopenblas-gnu-hpc >= 0.3.6 for hpc to avoid to build when openblas library not available. ------------------------------------------------------------------- Tue Mar 26 15:29:56 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Disable pastix also in openmpi flavor, same as for serial and HPC flavors. Pastix is only built with openmpi, and not available in Factory. ------------------------------------------------------------------- Wed Mar 20 18:15:58 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Fix building non-MPI flavors of packages depending on petsc Add petsc-fix-nonmpi.patch - Do not move headers to /usr/include and symlink, causes problems with -isystem ------------------------------------------------------------------- Wed Mar 13 23:34:19 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de> - Fix spec for non-HPC, reenable serial and non-HPC openmpi build. - Disable HYPRE for non-HPC, same as for HPC. ------------------------------------------------------------------- Wed Feb 13 11:40:48 UTC 2019 - Egbert Eich <eich@suse.com> - Consolidate use of openmpi1, openmpi2, openmpi3. - Do not build non-HPC on SLE. ------------------------------------------------------------------- Mon Apr 30 18:10:21 UTC 2018 - eich@suse.com - (Temporarily) disable fpr S390* as a check test for netcdf fails currently on BE (bsc#1091474). ------------------------------------------------------------------- Fri Apr 27 12:53:49 UTC 2018 - guillaume.gardet@opensuse.org - Add _constraints to avoid OOM errors ------------------------------------------------------------------- Tue Apr 17 12:55:59 UTC 2018 - eich@suse.com - Do not require 'Modules' for HPC build: seetings from /etc/profile.d/lmod.[c]sh will be overwritten by /etc/profile.d/modules.[c]sh installed by Modules (bsc#1089865). ------------------------------------------------------------------- Sun Apr 1 19:12:40 UTC 2018 - eich@suse.com - Convert doc package build to noarch. This will hopefully avoid spurious build errors on SLE-12. ------------------------------------------------------------------- Tue Mar 27 16:29:59 UTC 2018 - stefan.bruens@rwth-aachen.de - Set '-fPIC' also on aarch64 ------------------------------------------------------------------- Tue Mar 27 10:34:46 UTC 2018 - eich@suse.com - Reenable flavor 'serial' to build the doc package only (bsc#1087050). Note: for this flavor nothing else gets built: once the missing dependencies have been fixed, rearrange the #%if 0%{?makedoc:1} ... %endif. ------------------------------------------------------------------- Tue Mar 20 13:54:00 CET 2018 - ro@suse.de - use "-fPIC" also on s390, like on ppc64 (bsc#1086008) ------------------------------------------------------------------- Fri Mar 9 12:30:57 UTC 2018 - eich@suse.com - Don't build the serial flavor as the build presently breaks everywhere (bsc#1084677). ------------------------------------------------------------------- Sun Mar 4 09:11:32 UTC 2018 - eich@suse.com - Python-Fix-a-number-of-scripts-to-by-Python-3-compliant.patch: Fix python scripts - convert to Python 3 (bsc#1082209). - Restructure package: factor out SAWs stuff. We cannot support this as SAWs itself isn't available for SUSE. - Move python files that are not stand-alone out of the bin directory. - Fix permissions in bin and other directories. - Removed some unwanted scripts: rules - make rules sendToJenkins - this should probably be modified to print an error message uncrustify.cfg - used by 'rules' - Removed win32fe: DLLs for Windows - Set '-fPIC' on ppc64. ------------------------------------------------------------------- Thu Feb 22 13:56:02 UTC 2018 - eich@suse.com - Update to version 3.8.3: http://www.mcs.anl.gov/petsc/documentation/changes/37.html (FATE#325333). ------------------------------------------------------------------- Fri Feb 9 20:14:15 UTC 2018 - eich@suse.com - Since the OpenBLAS build was fixed, reenable scalapack on s390 (bsc#1079513). - Add support for openmpi2 for HPC (FATE#325089). - Fix build on ppc64le (bsc#1080380). ------------------------------------------------------------------- Fri Feb 9 15:00:10 UTC 2018 - cgoll@suse.com - Fix summary in module files (bnc#1080259) ------------------------------------------------------------------- Tue Feb 6 09:18:55 UTC 2018 - eich@suse.com - Don't use baselibs.conf: some dependencies are not available for i586 on Factory. ------------------------------------------------------------------- Tue Feb 6 09:13:14 UTC 2018 - eich@suse.com - The HPC build of petsc depends on openBLAS. OpenBLAS doesn't support s390: skip building on s390 (bsc#1079513). ------------------------------------------------------------------- Mon Jan 29 15:22:04 UTC 2018 - eich@suse.com - Fix build with rpm v4.14. ------------------------------------------------------------------- Fri Jan 12 15:49:16 UTC 2018 - eich@suse.com - Disable the openmpi3 flavor in some products. ------------------------------------------------------------------- Fri Jan 5 19:15:30 UTC 2018 - eich@suse.com - Switch from gcc6 to gcc7 as additional compiler flavor for HPC on SLES. - Fix library package requires - use HPC macro (boo#1074890). - Add support for mpich and openmpi3 for HPC. - Fix unexpanded rpm macro in environment module file for HPC (boo#1074897). ------------------------------------------------------------------- Tue Nov 14 11:40:02 UTC 2017 - eich@suse.com - emvironment modules: only set BIN when binary path exists. - Fix RPM macro name %hpc_upcase. ------------------------------------------------------------------- Fri Nov 10 17:02:52 UTC 2017 - eich@suse.com - Add libhdf5/libscalapack*-hpc as Requires to the library package for HPC. ------------------------------------------------------------------- Thu Nov 2 19:28:46 UTC 2017 - eich@suse.com - Simplify Group: - do not destinguish between MPI and non-MPI: the IBS check scripts cannot handle this well. ------------------------------------------------------------------- Mon Oct 30 23:55:37 UTC 2017 - eich@suse.com - Fix Requires for HPC build. ------------------------------------------------------------------- Sun Oct 22 19:29:23 UTC 2017 - eich@suse.com - Disable non-HPC openmpi flavor due to missing dependencies. ------------------------------------------------------------------- Fri Sep 8 19:13:36 UTC 2017 - eich@suse.com - Convert to multibuild. - Add HPC build using environment modules (FATE#321718). - Generate baselib.conf dynamically and only for the non-HPC builds: this avoids issues with the source validator. - Updated to 3.7.6 (in sync with OpenHPC) Changelog at: http://www.mcs.anl.gov/petsc/documentation/changes/37.html ------------------------------------------------------------------- Thu Mar 9 15:40:18 UTC 2017 - kkhere.geo@gmail.com - recreate petsc package with version 3.7.5 previously existing petsc package was deleted for unknown reasons. package in science repository is just a broken link. previous changelog salvaged from installed rpm is below. - upstream version changelogs available at https://www.mcs.anl.gov/petsc/petsc-as/documentation/changes/index.html ------------------------------------------------------------------- Mon Sep 28 15:44:21 UTC 2015 - kkhere.geo@gmail.com - Refix blacs dependency, since blacs is now merged in scalapack ------------------------------------------------------------------- Tue Jul 28 10:41:48 UTC 2015 - toddrme2178@gmail.com - Fix blacs dependency ambiguity ------------------------------------------------------------------- Wed Jul 15 09:21:49 UTC 2015 - toddrme2178@gmail.com - Fix building on ppc64 and ppc64le ------------------------------------------------------------------- Sat Apr 5 16:04:56 UTC 2014 - scorot@free.fr - update files list of mvapich2 package and then fix build on SLE ------------------------------------------------------------------- Thu Jan 9 14:27:31 UTC 2014 - kkhere.geo@gmail.com - update to version 3.4.3 * changelog at http://www.mcs.anl.gov/research/projects/petsc/petsc-as/documentation/changes/34.html - modified patches: * petsc-3.3-fix-error-detection-in-makefile.patch * petsc-3.3-p2-dont-check-for-option-mistakes.patch * petsc-3.3-p2-fix-shared-libs-sonames.patch * petsc-3.3-p2-no-rpath.patch ------------------------------------------------------------------- Wed May 22 20:11:36 UTC 2013 - scorot@free.fr - update ot latest patch level p7 * No changelog available for a patch level upgrade ------------------------------------------------------------------- Sun Feb 24 14:59:13 UTC 2013 - scorot@free.fr - updated to patch level p6 * No changelog available for a patch level upgrade ------------------------------------------------------------------- Mon Feb 4 20:28:03 UTC 2013 - scorot@free.fr - updated to patch level p5 * No changelog available for a patch level upgrade ------------------------------------------------------------------- Mon Sep 17 21:27:12 UTC 2012 - scorot@free.fr - fix module file for parallel version ------------------------------------------------------------------- Sun Sep 16 20:30:11 UTC 2012 - scorot@free.fr - add modules files - add version number in the petsc directory to allow multiple versions to be installed at the same time - update to patch level p3 ------------------------------------------------------------------- Sun Sep 2 10:47:04 UTC 2012 - scorot@free.fr - add suitesparce-devel in the requirements list of devel packages ------------------------------------------------------------------- Thu Aug 30 21:18:42 UTC 2012 - scorot@free.fr - add requirments in devel packages - fix license ------------------------------------------------------------------- Thu Aug 23 19:07:07 UTC 2012 - scorot@free.fr - enable umfpack and cholmod - enable blacs and scalapack for parallel version ------------------------------------------------------------------- Sat Aug 11 10:56:14 UTC 2012 - scorot@free.fr - fix typo in spec file making install failure on x86_64 ------------------------------------------------------------------- Sat Aug 11 10:18:29 UTC 2012 - scorot@free.fr - add missing %%_petsc_arch to %%_prefix path ------------------------------------------------------------------- Sat Aug 11 09:49:39 UTC 2012 - scorot@free.fr - add PETSC_ARCH in the subdirectory path ------------------------------------------------------------------- Thu Aug 9 13:42:04 UTC 2012 - scorot@free.fr - add symlink petsc_dir/include to %%_includedir ------------------------------------------------------------------- Sat Aug 4 20:35:26 UTC 2012 - scorot@free.fr - version 3.3 * see http://www.mcs.anl.gov/petsc/documentation/changes/33.html for a list of changes ------------------------------------------------------------------- Fri Aug 3 20:27:15 UTC 2012 - scorot@free.fr - mvapich2 build for SLE 11 - update baselibs.conf ------------------------------------------------------------------- Tue Jul 31 20:46:24 UTC 2012 - scorot@free.fr - compress source tarball with xz ------------------------------------------------------------------- Tue Jul 31 17:26:00 UTC 2012 - scorot@free.fr - enable hypre support for openmpi build ------------------------------------------------------------------- Fri Jul 27 20:54:50 UTC 2012 - scorot@free.fr - enable fortran interface and c++ support ------------------------------------------------------------------- Thu Jul 26 22:10:50 UTC 2012 - scorot@free.fr - fix library dirs in petsc conf files ------------------------------------------------------------------- Thu Jul 26 21:30:35 UTC 2012 - scorot@free.fr - put all petsc file in a dedicated dir ------------------------------------------------------------------- Tue Jul 24 22:27:11 UTC 2012 - scorot@free.fr - add openmpi package - fix libs dependencies ------------------------------------------------------------------- Thu Jun 7 18:27:19 UTC 2012 - scorot@free.fr - add baselibs.conf ------------------------------------------------------------------- Sat May 19 15:14:53 UTC 2012 - scorot@free.fr - first package base on spec file from Fabrice Bellet for fedora
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor