xref: /petsc/src/sys/utils/matheq.c (revision 811af0c4b09a35de4306c442f88bd09fdc09897d)
1ce4818fdSLisandro Dalcin #include <petscsys.h>
2ce4818fdSLisandro Dalcin 
3ce4818fdSLisandro Dalcin /*@C
4ce4818fdSLisandro Dalcin     PetscEqualReal - Returns whether the two real values are equal.
5ce4818fdSLisandro Dalcin 
6d8d19677SJose E. Roman     Input Parameters:
7ce4818fdSLisandro Dalcin +     a - first real number
8ce4818fdSLisandro Dalcin -     b - second real number
9ce4818fdSLisandro Dalcin 
10*811af0c4SBarry Smith     Note:
1195452b02SPatrick Sanan     Equivalent to "a == b". Should be used to prevent compilers from
12ce4818fdSLisandro Dalcin     emitting floating point comparison warnings (e.g. GCC's -Wfloat-equal flag)
13ce4818fdSLisandro Dalcin     in PETSc header files or user code.
14ce4818fdSLisandro Dalcin 
15ce4818fdSLisandro Dalcin     Level: developer
16*811af0c4SBarry Smith 
17*811af0c4SBarry Smith .seealso: `PetscIsCloseAtTol()`, `PetscEqualScalar()`
18ce4818fdSLisandro Dalcin @*/
199371c9d4SSatish Balay PetscBool PetscEqualReal(PetscReal a, PetscReal b) {
20ce4818fdSLisandro Dalcin   return (a == b) ? PETSC_TRUE : PETSC_FALSE;
21ce4818fdSLisandro Dalcin }
22ce4818fdSLisandro Dalcin 
23ce4818fdSLisandro Dalcin /*@C
24ce4818fdSLisandro Dalcin     PetscEqualScalar - Returns whether the two scalar values are equal.
25ce4818fdSLisandro Dalcin 
26d8d19677SJose E. Roman     Input Parameters:
27ce4818fdSLisandro Dalcin +     a - first scalar value
28ce4818fdSLisandro Dalcin -     b - second scalar value
29ce4818fdSLisandro Dalcin 
30*811af0c4SBarry Smith     Note:
3195452b02SPatrick Sanan     Equivalent to "a == b". Should be used to prevent compilers from
32ce4818fdSLisandro Dalcin     emitting floating point comparison warnings (e.g. GCC's -Wfloat-equal flag)
33ce4818fdSLisandro Dalcin     in PETSc header files or user code.
34ce4818fdSLisandro Dalcin 
35ce4818fdSLisandro Dalcin     Level: developer
36*811af0c4SBarry Smith 
37*811af0c4SBarry Smith .seealso: `PetscIsCloseAtTol()`, `PetscEqualReal()`
38ce4818fdSLisandro Dalcin @*/
399371c9d4SSatish Balay PetscBool PetscEqualScalar(PetscScalar a, PetscScalar b) {
40ce4818fdSLisandro Dalcin   return (a == b) ? PETSC_TRUE : PETSC_FALSE;
41ce4818fdSLisandro Dalcin }
42