PetscRealIntMultTruncate#
Computes the product of a positive PetscReal
and a positive PetscInt
and truncates the value to slightly less than the maximal possible value.
Synopsis#
static inline PetscInt PetscRealIntMultTruncate(PetscReal a, PetscInt b)
Not Collective; No Fortran Support
Input Parameters#
Notes#
Returns the result as a PetscInt
value.
Use PetscInt64Mult()
to compute the product of two PetscInt
as a PetscInt64
.
Use PetscIntMultTruncate()
to compute the product of two positive 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#
PetscReal
, PetscInt
, PetscInt64Mult()
, PetscIntMultError()
, PetscIntSumError()
Level#
advanced
Location#
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages