37 template<
class T,
unsigned Dim >
44 ERRORMSG(
"FieldPrint::print - the domain of the field: " << domain<<
endl);
45 ERRORMSG(
" must contain the selected view: " << view <<
endl);
60 for (local = MyField.
begin_if(); local != MyField.
end_if(); ++local) {
69 LFI rhs = l.
begin(intersection, compressed_data);
73 rhs.putMessage(*mess);
86 for (local = MyField.
begin_if(); local != MyField.
end_if(); ++local) {
92 LFI lhs = myLField.
begin(intersection);
93 LFI rhs = l.
begin(intersection);
99 for (
int remaining =
Ippl::getNodes() - 1; remaining > 0; --remaining) {
108 while (datahere != 0) {
115 LFI rhs(compressed_value);
116 rhs.getMessage(*mess);
119 LFI lhs = myLField.
begin(localBlock);
133 int f0, f1, f2, n0, n1, n2, i0, i1, i2;
134 LFI liter = myLField.
begin();
137 f0 = view[0].first();
138 n0 = view[0].length();
139 for (i0=0; i0<n0; ++i0) {
140 out <<
"["<<f0+i0<<
"]= "<< liter.offset(i0) <<
endl;
145 f0 = view[0].first();
146 f1 = view[1].first();
147 n0 = view[0].length();
148 n1 = view[1].length();
149 for (i0=0; i0<n0; ++i0) {
150 for (i1=0; i1<n1; ++i1) {
151 out <<
"["<<f0+i0<<
"]["<<f1+i1<<
"]= "<< liter.offset(i0,i1)<<
endl;
157 f0 = view[0].first();
158 f1 = view[1].first();
159 f2 = view[2].first();
160 n0 = view[0].length();
161 n1 = view[1].length();
162 n2 = view[2].length();
164 out.
setf(std::ios::scientific);
166 for (i0=0; i0<n0; ++i0) {
167 for (i1=0; i1<n1; ++i1) {
168 out <<
"[" << std::setw(IndexWidth) << f0+i0 <<
"]"
169 <<
"[" << std::setw(IndexWidth) << f1+i1 <<
"]"
170 <<
"[" << std::setw(IndexWidth) << f2 <<
":" << std::setw(IndexWidth) << f2+n2-1 <<
"] ";
171 for (i2=0; i2<n2; ++i2) {
172 out << std::setprecision(DataPrecision) << std::setw(DataWidth)
173 << liter.offset(i0,i1,i2)<<
" ";
174 if( CarReturn > 0 ) {
175 if( i2 != 0 && i2 != ( n2-1) && !( (i2+1) % CarReturn) ) {
void putMessage(Message &m, const T &t)
void getMessage(Message &m, T &t)
Inform & endl(Inform &inf)
Message & getMessage(Message &m)
bool touches(const NDIndex< Dim > &) const
bool contains(const NDIndex< Dim > &a) const
Message & putMessage(Message &m) const
NDIndex< Dim > intersect(const NDIndex< Dim > &) const
ac_id_larray::iterator iterator_if
const NDIndex< Dim > & getOwned() const
const iterator & begin() const
void Uncompress(bool fill_domain=true)
bool send(Message *, int node, int tag, bool delmsg=true)
Message * receive_block(int &node, int &tag)
int next_tag(int t, int s=1000)
void print(NDIndex< Dim > &view)
FmtFlags_t setf(FmtFlags_t setbits, FmtFlags_t field)
static Communicate * Comm