27 int nin_field = v->
nin();
28 int nex_field = v->
nex();
33 if ((nin_file == 0) || (nex_file == 0)) {
40 vout.
detailed(
m_vl,
"%s: file format: nin=%d, nex=%d, Lvol=%d\n", __func__, nin_file, nex_file, Lvol);
41 vout.
detailed(
m_vl,
"%s: field format: nin=%d, nex=%d, Lvol=%d\n", __func__, nin_field, nex_field, v->
nvol());
49 vtmp.
reset(nin_field, Lvol, nex_field);
51 std::fstream config(filename.c_str(), std::ios::in);
52 if (!config.is_open()) {
53 vout.
crucial(
m_vl,
"%s: file open error: %s may not exist.\n", __func__, filename.c_str());
59 for (
int j = 0; j < nex_file; ++j) {
60 for (
int isite = 0; isite < Lvol; ++isite) {
61 for (
int i = 0; i < nin_file; ++i) {
81 vtmp.
set(s, isite, t, val);
112 int nin_field = v->
nin();
113 int nex_field = v->
nex();
118 if ((nin_file == 0) || (nex_file == 0)) {
119 nin_file = nin_field;
120 nex_file = nex_field;
125 vout.
detailed(
m_vl,
"%s: file format: nin=%d, nex=%d, Lvol=%d\n", __func__, nin_file, nex_file, Lvol);
126 vout.
detailed(
m_vl,
"%s: field format: nin=%d, nex=%d, Lvol=%d\n", __func__, nin_field, nex_field, v->
nvol());
131 vtmp.
reset(nin_field, Lvol, nex_field);
139 std::fstream config(filename.c_str(), std::ios::out);
140 if (!config.is_open()) {
141 vout.
crucial(
m_vl,
"%s: file open error: %s\n", __func__, filename.c_str());
145 config.setf(std::ios_base::scientific, std::ios_base::floatfield);
146 config.precision(14);
150 for (
int j = 0; j < nex_file; ++j) {
151 for (
int isite = 0; isite < Lvol; ++isite) {
152 for (
int i = 0; i < nin_file; ++i) {
155 val = vtmp.
cmp(s, isite, t);
156 config << val << std::endl;
void detailed(const char *format,...)
void set(const int jin, const int site, const int jex, double v)
static const std::string class_name
void read_file(Field *v, string filename)
void deliver(Field *vlocal, Field *vglobal)
distribute data on primary node over parallel nodes.
Container of Field-type object.
double cmp(const int jin, const int site, const int jex) const
void reset(const int Nin, const int Nvol, const int Nex, const element_type cmpl=COMPLEX)
const IO_Format::Format * m_format
void crucial(const char *format,...)
void write_file(Field *v, string filename)
static bool is_primary()
check if the present node is primary in small communicator.
void gather(Field *vglobal, Field *vlocal)
gather data on parallel nodes to primary node.
Bridge::VerboseLevel m_vl