ScaleAndMerge: clean-up (no log residual, no fixed mosaicity, return per-image values)
This commit is contained in:
@@ -42,7 +42,7 @@ void print_usage(Logger &logger) {
|
||||
logger.Info(" -D<num> High resolution limit for scaling/merging (default: 0.0; no limit)");
|
||||
logger.Info(" -S<num> Space group number");
|
||||
logger.Info(" -M Scale and merge (refine mosaicity) and write scaled.hkl + image.dat");
|
||||
logger.Info(" -m<txt> Mosaicity refinement none|fixed|image (default: image)");
|
||||
logger.Info(" -m<txt> Mosaicity refinement none|image (default: image)");
|
||||
logger.Info(" -A Anomalous mode (don't merge Friedel pairs)");
|
||||
}
|
||||
|
||||
@@ -67,7 +67,7 @@ int main(int argc, char **argv) {
|
||||
bool anomalous_mode = false;
|
||||
std::optional<int> space_group_number;
|
||||
|
||||
enum class MosaicityRefinementMode { None, Fixed, Image };
|
||||
enum class MosaicityRefinementMode { None, Image };
|
||||
MosaicityRefinementMode mosaicity_refinement_mode = MosaicityRefinementMode::Image;
|
||||
|
||||
float d_min_spot_finding = 1.5;
|
||||
@@ -125,8 +125,6 @@ int main(int argc, char **argv) {
|
||||
case 'm':
|
||||
if (strcmp(optarg, "none") == 0)
|
||||
mosaicity_refinement_mode = MosaicityRefinementMode::None;
|
||||
else if (strcmp(optarg, "fixed") == 0)
|
||||
mosaicity_refinement_mode = MosaicityRefinementMode::Fixed;
|
||||
else if (strcmp(optarg, "image") == 0)
|
||||
mosaicity_refinement_mode = MosaicityRefinementMode::Image;
|
||||
else {
|
||||
@@ -433,13 +431,8 @@ int main(int argc, char **argv) {
|
||||
case MosaicityRefinementMode::None:
|
||||
scale_opts.refine_mosaicity = false;
|
||||
break;
|
||||
case MosaicityRefinementMode::Fixed:
|
||||
scale_opts.refine_mosaicity = true;
|
||||
scale_opts.per_image_mosaicity = false;
|
||||
break;
|
||||
case MosaicityRefinementMode::Image:
|
||||
scale_opts.refine_mosaicity = true;
|
||||
scale_opts.per_image_mosaicity = true;
|
||||
break;
|
||||
}
|
||||
if (space_group)
|
||||
@@ -453,10 +446,8 @@ int main(int argc, char **argv) {
|
||||
double scale_time = std::chrono::duration<double>(scale_end - scale_start).count();
|
||||
|
||||
if (scale_result) {
|
||||
logger.Info("Scaling completed in {:.2f} s ({} unique reflections, {} images)",
|
||||
scale_time,
|
||||
scale_result->merged.size(),
|
||||
scale_result->image_ids.size());
|
||||
logger.Info("Scaling completed in {:.2f} s ({} unique reflections)",
|
||||
scale_time, scale_result->merged.size());
|
||||
|
||||
// Print resolution-shell statistics table
|
||||
{
|
||||
@@ -499,13 +490,10 @@ int main(int argc, char **argv) {
|
||||
logger.Error("Cannot open {} for writing", img_path);
|
||||
} else {
|
||||
img_file << "# image_id mosaicity_deg K\n";
|
||||
for (size_t i = 0; i < scale_result->image_ids.size(); ++i) {
|
||||
img_file << scale_result->image_ids[i] << " "
|
||||
<< scale_result->mosaicity_deg[i] << " "
|
||||
<< scale_result->image_scale_g[i] << "\n";
|
||||
for (size_t i = 0; i < scale_result->mosaicity_deg.size(); ++i) {
|
||||
img_file << i << " " << scale_result->mosaicity_deg[i] << " " << scale_result->image_scale_g[i] << "\n";
|
||||
}
|
||||
img_file.close();
|
||||
logger.Info("Wrote {} image records to {}", scale_result->image_ids.size(), img_path);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user