PetscIntMultTruncate#
Computes the product of two positive PetscInt
and truncates the value to slightly less than the maximal possible value
Synopsis#
static inline PetscInt PetscIntMultTruncate(PetscInt a, PetscInt b)
Not Collective; No Fortran Support
Input Parameters#
a - the PetscInt value
b - the second value
Returns#
the result as a PetscInt
value
Notes#
Use PetscInt64Mult()
to compute the product of two PetscInt
as a PetscInt64
Use PetscRealIntMultTruncate()
to compute the product of a PetscReal
and a PetscInt
and truncate to fit a PetscInt
Use PetscIntMultError()
to compute the product of two PetscInt
if you wish to generate an error if the result will not fit in a PetscInt
Developers Notes#
We currently assume that PetscInt
addition can never overflow, this is obviously wrong but requires many more checks.
This is used where we compute approximate sizes for workspace and need to insure the workspace is index-able.
See Also#
PetscBLASInt
, PetscMPIInt
, PetscInt
, PetscBLASIntCast()
, PetscInt64Mult()
, PetscIntMultError()
, PetscIntSumError()
,
PetscIntSumTruncate()
Level#
advanced
Location#
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages