#include <parallel_algebra.h>
|
| static void | vector_max (void *invec, void *inoutvec, int *len, MPI_Datatype *) |
| |
| static void | vector_min (void *invec, void *inoutvec, int *len, MPI_Datatype *) |
| |
| static void | vector_sum (void *invec, void *inoutvec, int *len, MPI_Datatype *) |
| |
| static MPI_Op | max () |
| |
| static MPI_Op | min () |
| |
| static MPI_Op | sum () |
| |
Definition at line 383 of file parallel_algebra.h.
◆ max()
Definition at line 85 of file parallel_algebra.h.
86 {
87
88
89 static MPI_Op _static_op;
91 if (!_is_initialized)
92 {
93 timpi_call_mpi
94 (MPI_Op_create (vector_max, true,
95 &_static_op));
96
98 }
99
100 return _static_op;
101 }
bool _is_initialized
Flag that tells if init() has been called.
◆ min()
Definition at line 102 of file parallel_algebra.h.
103 {
104
105
106 static MPI_Op _static_op;
108 if (!_is_initialized)
109 {
110 timpi_call_mpi
111 (MPI_Op_create (vector_min, true,
112 &_static_op));
113
115 }
116
117 return _static_op;
118 }
◆ sum()
Definition at line 119 of file parallel_algebra.h.
120 {
121
122
123 static MPI_Op _static_op;
125 if (!_is_initialized)
126 {
127 timpi_call_mpi
128 (MPI_Op_create (vector_sum, true,
129 &_static_op));
130
132 }
133
134 return _static_op;
135 }
◆ vector_max()
Definition at line 58 of file parallel_algebra.h.
59 {
60 V *in = static_cast<V *>(invec);
61 V *inout = static_cast<V *>(inoutvec);
62 for (int i=0; i != *len; ++i)
63 for (int d=0; d != LIBMESH_DIM; ++d)
64 inout[i](d) = std::max(in[i](d), inout[i](d));
65 }
◆ vector_min()
Definition at line 67 of file parallel_algebra.h.
68 {
69 V *in = static_cast<V *>(invec);
70 V *inout = static_cast<V *>(inoutvec);
71 for (int i=0; i != *len; ++i)
72 for (int d=0; d != LIBMESH_DIM; ++d)
73 inout[i](d) = std::min(in[i](d), inout[i](d));
74 }
◆ vector_sum()
Definition at line 76 of file parallel_algebra.h.
77 {
78 V *in = static_cast<V *>(invec);
79 V *inout = static_cast<V *>(inoutvec);
80 for (int i=0; i != *len; ++i)
81 for (int d=0; d != LIBMESH_DIM; ++d)
82 inout[i](d) += in[i](d);
83 }
The documentation for this class was generated from the following file: