update init_site
This commit is contained in:
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}
|
||||
tet-file = data/prism/prism.1
|
||||
mag-file = (0,0,200)
|
||||
#site-file = -30/30/-30/30/10/81/81
|
||||
site-file = (-30,-30,10)/(30,30,10)/51
|
||||
site-file = -30/30/-30/30/10/81/81
|
||||
#site-file = (-30,-30,10)/(30,30,10)/51
|
||||
obs-file = data/prism/prism
|
||||
cal-type = potential gradient tensor
|
||||
EOF
|
||||
|
4
log.txt
4
log.txt
@@ -1,6 +1,6 @@
|
||||
tet-file = data/prism/prism.1
|
||||
mag-file = (0,0,200)
|
||||
#site-file = -30/30/-30/30/10/81/81
|
||||
site-file = (-30,-30,10)/(30,30,10)/51
|
||||
site-file = -30/30/-30/30/10/81/81
|
||||
#site-file = (-30,-30,10)/(30,30,10)/51
|
||||
obs-file = data/prism/prism
|
||||
cal-type = potential gradient tensor
|
||||
|
@@ -55,6 +55,18 @@ void magtet::init_site(std::string para)
|
||||
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>
|
||||
std::string p1_str, p2_str;
|
||||
gctl::point3dc p1, p2;
|
||||
@@ -69,14 +81,7 @@ void magtet::init_site(std::string para)
|
||||
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;
|
||||
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();
|
||||
throw gctl::invalid_argument("Fail to parse the parameter: " + para + ". From magtet::init_site(...)");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -469,7 +474,7 @@ void magtet::routine(const char *para_file)
|
||||
// read tetgen files
|
||||
RUN_ECHO(read_tet(gopt_.get_value(TETFILE)), "Reading 3D model 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
|
||||
RUN_ECHO(init_site(gopt_.get_value(SITEFILE)), "Initiating observations points");
|
||||
// initialize tensors
|
||||
|
Reference in New Issue
Block a user