update init_site
This commit is contained in:
parent
d5231db068
commit
46b5976290
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
4
job.sh
4
job.sh
@ -24,8 +24,8 @@ echo "======================"
|
|||||||
cat <<- EOF > ${logfile}
|
cat <<- EOF > ${logfile}
|
||||||
tet-file = data/prism/prism.1
|
tet-file = data/prism/prism.1
|
||||||
mag-file = (0,0,200)
|
mag-file = (0,0,200)
|
||||||
#site-file = -30/30/-30/30/10/81/81
|
site-file = -30/30/-30/30/10/81/81
|
||||||
site-file = (-30,-30,10)/(30,30,10)/51
|
#site-file = (-30,-30,10)/(30,30,10)/51
|
||||||
obs-file = data/prism/prism
|
obs-file = data/prism/prism
|
||||||
cal-type = potential gradient tensor
|
cal-type = potential gradient tensor
|
||||||
EOF
|
EOF
|
||||||
|
4
log.txt
4
log.txt
@ -1,6 +1,6 @@
|
|||||||
tet-file = data/prism/prism.1
|
tet-file = data/prism/prism.1
|
||||||
mag-file = (0,0,200)
|
mag-file = (0,0,200)
|
||||||
#site-file = -30/30/-30/30/10/81/81
|
site-file = -30/30/-30/30/10/81/81
|
||||||
site-file = (-30,-30,10)/(30,30,10)/51
|
#site-file = (-30,-30,10)/(30,30,10)/51
|
||||||
obs-file = data/prism/prism
|
obs-file = data/prism/prism
|
||||||
cal-type = potential gradient tensor
|
cal-type = potential gradient tensor
|
||||||
|
@ -55,6 +55,18 @@ void magtet::init_site(std::string para)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// try to use the para in the format <xmin>/<xmax>/<ymin>/<ymax>/<z>/<xsize>/<ysize>
|
||||||
|
double xmin, xmax, ymin, ymax, z;
|
||||||
|
int xsize, ysize;
|
||||||
|
if (-1 != gctl::parse_string_to_value(para, '/', xmin, xmax, ymin, ymax, z, xsize, ysize))
|
||||||
|
{
|
||||||
|
gctl::gridspace(gctl::point3dc(xmin, 0.0, 0.5*z), gctl::point3dc(xmax, 0.0, 0.5*z),
|
||||||
|
gctl::point3dc(0.0, ymin, 0.5*z), gctl::point3dc(0.0, ymax, 0.5*z), xsize, ysize, site_);
|
||||||
|
|
||||||
|
site_num_ = site_.size();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// try to use the para inthe format (<x1>,<y1>,<z1>)/(<x2>,<y2>,<z2>)/<num>
|
// try to use the para inthe format (<x1>,<y1>,<z1>)/(<x2>,<y2>,<z2>)/<num>
|
||||||
std::string p1_str, p2_str;
|
std::string p1_str, p2_str;
|
||||||
gctl::point3dc p1, p2;
|
gctl::point3dc p1, p2;
|
||||||
@ -69,14 +81,7 @@ void magtet::init_site(std::string para)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// try to use the para in the format <xmin>/<xmax>/<ymin>/<ymax>/<z>/<xsize>/<ysize>
|
throw gctl::invalid_argument("Fail to parse the parameter: " + para + ". From magtet::init_site(...)");
|
||||||
double xmin, xmax, ymin, ymax, z;
|
|
||||||
int xsize, ysize;
|
|
||||||
gctl::parse_string_to_value(para, '/', xmin, xmax, ymin, ymax, z, xsize, ysize);
|
|
||||||
gctl::gridspace(gctl::point3dc(xmin, 0.0, 0.5*z), gctl::point3dc(xmax, 0.0, 0.5*z),
|
|
||||||
gctl::point3dc(0.0, ymin, 0.5*z), gctl::point3dc(0.0, ymax, 0.5*z), xsize, ysize, site_);
|
|
||||||
|
|
||||||
site_num_ = site_.size();
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -469,7 +474,7 @@ void magtet::routine(const char *para_file)
|
|||||||
// read tetgen files
|
// read tetgen files
|
||||||
RUN_ECHO(read_tet(gopt_.get_value(TETFILE)), "Reading 3D model file");
|
RUN_ECHO(read_tet(gopt_.get_value(TETFILE)), "Reading 3D model file");
|
||||||
// read magnetization file
|
// read magnetization file
|
||||||
RUN_ECHO(init_magz(gopt_.get_value(MAGFILE)), "Reading magnetization file");
|
RUN_ECHO(init_magz(gopt_.get_value(MAGFILE)), "Initiating magnetization vectors");
|
||||||
// read site file
|
// read site file
|
||||||
RUN_ECHO(init_site(gopt_.get_value(SITEFILE)), "Initiating observations points");
|
RUN_ECHO(init_site(gopt_.get_value(SITEFILE)), "Initiating observations points");
|
||||||
// initialize tensors
|
// initialize tensors
|
||||||
|
Loading…
Reference in New Issue
Block a user