Skip to content
Snippets Groups Projects
Commit 23cefd06 authored by Nicola Vigano's avatar Nicola Vigano
Browse files

6D-reconstruction/Twins: added reconstruction resolution tuning

parent a9244d3e
No related branches found
No related tags found
No related merge requests found
......@@ -7,7 +7,9 @@ function gtReconstructGrainTwinCluster(grain_ids, phase_id, parameters, varargin
end
parameters.fsim.check_spot = false;
conf = struct('recompute_osbb', true);
conf = struct( ...
'recompute_osbb', true, ...
'ospace_resolution', [] );
[conf, ~] = parse_pv_pairs(conf, varargin);
rec_opts = gtReconstruct6DGetParamenters(parameters);
......@@ -34,7 +36,13 @@ function gtReconstructGrainTwinCluster(grain_ids, phase_id, parameters, varargin
for ii_g = 1:num_grains
sampler(ii_g) = GtOrientationSampling(parameters, grs(ii_g)); %#ok<AGROW>
if (conf.recompute_osbb)
if (~isempty(conf.ospace_resolution))
if (numel(conf.ospace_resolution) == 1)
conf.ospace_resolution = conf.ospace_resolution(ones(num_grains, 1));
end
bb_gvdm = cat(1, grs(ii_g).bb_ors(:).R_vector)';
sampler(ii_g).make_res_simple_grid('cubic', conf.ospace_resolution(ii_g), bb_gvdm, rec_opts.ospace_oversize);
elseif (conf.recompute_osbb)
sampler(ii_g).make_simple_grid_estim_ODF('cubic', rec_opts.grid_edge, false, rec_opts.ospace_oversize);
else
bb_gvdm = cat(1, grs(ii_g).bb_ors(:).R_vector)';
......
......@@ -132,6 +132,20 @@ classdef GtOrientationSampling < handle
self.make_grid(type, edge_points, gvdm, oversize)
end
function make_res_simple_grid(self, type, resolution, gvdm, oversize)
[~, ~, dranges] = self.get_deformation_stats(gvdm);
if (~exist('oversize', 'var'))
oversize = 1.1;
end
resolution_rod = tand(resolution / 2);
bb_size_rod = dranges * oversize;
edge_points = max(ceil(bb_size_rod ./ resolution_rod) + 1, 2);
self.make_grid(type, edge_points, gvdm, oversize)
end
function make_grid(self, type, edge_points, gvdm, oversize)
[dmean, dcenters, dranges] = self.get_deformation_stats(gvdm);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment