Commit f976c069 authored by myron's avatar myron

small correction in conic routines

parent 284bcd7d
......@@ -7175,8 +7175,10 @@ __global__ static void multi_pro_gputomo_conicity_kernel(float *d_SINO, // da
float magnicenter = (source_distance+detector_distance)/ (source_distance ) ;
float axis_position_v = (axis_position-SOURCE_X)/(magnicenter*v2x) ;
cpu_offset_x -= SOURCE_X+axis_position_v;
cpu_offset_y -= SOURCE_X+axis_position_v;
// cpu_offset_x -= SOURCE_X+axis_position_v;
// cpu_offset_y -= SOURCE_X+axis_position_v;
cpu_offset_x -= axis_position;
cpu_offset_y -= axis_position;
cos_angle = d_cos_s[projection];
sin_angle = d_sin_s[projection];
......@@ -7244,7 +7246,7 @@ __global__ static void multi_pro_gputomo_conicity_kernel(float *d_SINO, // da
d_fvxF_x = (Ddeno)/Dnumex ;
fvx =( -( Xcorner-ivy*sin_angle ) + (ix-SOURCE_X)*d_fvxF_x );
fvx = fvx / F ;
d_fvx_x = ( d_fvxF_x-fvy*d_F_x) /F ;
d_fvx_x = ( d_fvxF_x-fvx*d_F_x) /F ;
Ddeno += fvx*sin_angle * v_size *1.0e-6;
d_z_z = Ddeno / Dnumez;
d_z_x = (iz-SOURCE_Z)*d_fvx_x*sin_angle* v_size *1.0e-6 / Dnumez;
......@@ -7318,8 +7320,11 @@ __global__ static void gputomo_conicity_kernel(float *d_SLICE, // da allocare
float magnicenter = (source_distance+detector_distance)/ (source_distance ) ;
float axis_position_v = (axis_position-SOURCE_X)/(magnicenter*v2x) ;
gpu_offset_x -= SOURCE_X;
gpu_offset_y -= SOURCE_X;
// gpu_offset_x -= SOURCE_X;
// gpu_offset_y -= SOURCE_X;
gpu_offset_x -= axis_position ;
gpu_offset_y -= axis_position ;
{
float res[ CONO_GPU_MULT* CONO_GPU_MULT ] ;
......@@ -7351,8 +7356,8 @@ __global__ static void gputomo_conicity_kernel(float *d_SLICE, // da allocare
acorr05= d_axis_s[proje +first_proj];
}
vx = (acorr05-SOURCE_X)/(magnicenter*v2x)+(gpu_offset_x-axis_position_v+vxf)*pcos - (gpu_offset_y-axis_position_v+vyf)*psin ;
vy = axis_position_v*0 + ( gpu_offset_x-axis_position_v+vxf)* psin + (gpu_offset_y-axis_position_v+vyf)* pcos;
vx = (acorr05-SOURCE_X)/(magnicenter*v2x)+(gpu_offset_x + vxf)*pcos - (gpu_offset_y + vyf)*psin ;
vy = ( gpu_offset_x + vxf ) * psin + ( gpu_offset_y + vyf )* pcos;
magni = (source_distance+detector_distance)/ (source_distance + vy* voxel_size*1.0e-6 ) ;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment