@@ -38,27 +38,27 @@ def numbered_vector(nrows, symbol_prefix):
3838missing_r_col = numbered_vector (3 , 'k' )
3939pos_pat_0 = numbered_vector (3 , 'T^1' )
4040pos_pat_N = numbered_vector (3 , 'T^N' )
41- pixel_spacing = symbols (('\Delta{r}' , '\Delta{c}' ))
41+ pixel_spacing = symbols ((r '\Delta{r}' , r '\Delta{c}' ))
4242NZ = Symbol ('N' )
4343slice_spacing = Symbol ('\Delta{s}' )
4444
4545R3 = orient_pat * np .diag (pixel_spacing )
46- R = zeros (( 4 , 2 ) )
46+ R = zeros (4 , 2 )
4747R [:3 ,:] = R3
4848
4949# The following is specific to the SPM algorithm.
50- x1 = ones (( 4 , 1 ) )
51- y1 = ones (( 4 , 1 ) )
50+ x1 = ones (4 , 1 )
51+ y1 = ones (4 , 1 )
5252y1 [:3 ,:] = pos_pat_0
5353
54- to_inv = zeros (( 4 , 4 ) )
54+ to_inv = zeros (4 , 4 )
5555to_inv [:,0 ] = x1
56- to_inv [:,1 ] = symbols ('abcd ' )
56+ to_inv [:,1 ] = symbols ('a b c d ' )
5757to_inv [0 ,2 ] = 1
5858to_inv [1 ,3 ] = 1
59- inv_lhs = zeros (( 4 , 4 ) )
59+ inv_lhs = zeros (4 , 4 )
6060inv_lhs [:,0 ] = y1
61- inv_lhs [:,1 ] = symbols ('efgh ' )
61+ inv_lhs [:,1 ] = symbols ('e f g h ' )
6262inv_lhs [:,2 :] = R
6363
6464def spm_full_matrix (x2 , y2 ):
@@ -69,17 +69,17 @@ def spm_full_matrix(x2, y2):
6969 return lhs * rhs .inv ()
7070
7171# single slice case
72- orient = zeros (( 3 , 3 ) )
72+ orient = zeros (3 , 3 )
7373orient [:3 ,:2 ] = orient_pat
7474orient [:,2 ] = orient_cross
7575x2_ss = Matrix ((0 ,0 ,1 ,0 ))
76- y2_ss = zeros (( 4 , 1 ) )
76+ y2_ss = zeros (4 , 1 )
7777y2_ss [:3 ,:] = orient * Matrix ((0 ,0 ,slice_spacing ))
7878A_ss = spm_full_matrix (x2_ss , y2_ss )
7979
8080# many slice case
8181x2_ms = Matrix ((1 ,1 ,NZ ,1 ))
82- y2_ms = ones (( 4 , 1 ) )
82+ y2_ms = ones (4 , 1 )
8383y2_ms [:3 ,:] = pos_pat_N
8484A_ms = spm_full_matrix (x2_ms , y2_ms )
8585
@@ -91,7 +91,7 @@ def spm_full_matrix(x2, y2):
9191# single slice case
9292single_aff = eye (4 )
9393rot = orient
94- rot_scale = rot * np .diag (pixel_spacing [:] + [ slice_spacing ] )
94+ rot_scale = rot * np .diag (pixel_spacing [:] + ( slice_spacing ,) )
9595single_aff [:3 ,:3 ] = rot_scale
9696single_aff [:3 ,3 ] = pos_pat_0
9797
@@ -140,23 +140,23 @@ def my_latex(expr):
140140 S = sympy .latex (expr )
141141 return S [1 :- 1 ]
142142
143- print 'Latex stuff'
144- print ' R = ' + my_latex (to_inv )
145- print ' '
146- print ' L = ' + my_latex (inv_lhs )
147- print
148- print ' 0B = ' + my_latex (one_based )
149- print
150- print ' ' + my_latex (solved )
151- print
152- print ' A_{multi} = ' + my_latex (multi_aff_solved )
153- print ' '
154- print ' A_{single} = ' + my_latex (single_aff )
155- print
156- print r' \left(\begin{smallmatrix}T^N\\1\end{smallmatrix}\right) = A ' + my_latex (trans_z_N )
157- print
158- print ' A_j = A_{single} ' + my_latex (nz_trans )
159- print
160- print ' T^j = ' + my_latex (IPP_j )
161- print
162- print ' T^j \cdot \mathbf{c} = ' + my_latex (spm_z )
143+ print ( 'Latex stuff' )
144+ print ( ' R = ' + my_latex (to_inv ) )
145+ print ( ' ' )
146+ print ( ' L = ' + my_latex (inv_lhs ) )
147+ print ()
148+ print ( ' 0B = ' + my_latex (one_based ) )
149+ print ()
150+ print ( ' ' + my_latex (solved ) )
151+ print ()
152+ print ( ' A_{multi} = ' + my_latex (multi_aff_solved ) )
153+ print ( ' ' )
154+ print ( ' A_{single} = ' + my_latex (single_aff ) )
155+ print ()
156+ print ( r' \left(\begin{smallmatrix}T^N\\1\end{smallmatrix}\right) = A ' + my_latex (trans_z_N ) )
157+ print ()
158+ print ( ' A_j = A_{single} ' + my_latex (nz_trans ) )
159+ print ()
160+ print ( ' T^j = ' + my_latex (IPP_j ) )
161+ print ()
162+ print ( ' T^j \cdot \mathbf{c} = ' + my_latex (spm_z ) )
0 commit comments