/******************************************************** % % Written by: % -- % John L. Weatherwax 2006-05-29 % % email: wax@alum.mit.edu % % Please send comments and especially bug reports to the % above email address. % %----- */ int northwestNb(int Ms, int Ns, int row, int col){ int t_row, t_col; t_row = ((row!=0) ? ((row-1) % Ms) : (Ms-1)); t_col = ((col!=0) ? ((col-1) % Ns) : (Ns-1)); return sub2ind(Ms,Ns,t_row,t_col); } int northNb(int Ms, int Ns, int row, int col){ int t_row,t_col; t_row = ((row!=0) ? ((row-1) % Ms) : (Ms-1)); t_col = col; return sub2ind(Ms,Ns,t_row,t_col); } int northeastNb(int Ms, int Ns, int row, int col){ int t_row, t_col; t_row = ((row!=0) ? ((row-1) % Ms) : (Ms-1)); t_col = ((col!=(Ns-1)) ? ((col+1) % Ns) : 0); return sub2ind(Ms,Ns,t_row,t_col); } int westNb(int Ms, int Ns, int row, int col){ int t_row,t_col; t_row = row; t_col = ((col!=0) ? ((col-1) % Ns) : (Ns-1)); return sub2ind(Ms,Ns,t_row,t_col); } int eastNb(int Ms, int Ns, int row, int col){ int t_row,t_col; t_row = row; t_col = ((col!=(Ns-1)) ? ((col+1) % Ns) : 0); return sub2ind(Ms,Ns,t_row,t_col); } int southwestNb(int Ms, int Ns, int row, int col){ int t_row, t_col; t_row = ((row!=(Ms-1)) ? ((row+1) % Ms) : 0); t_col = ((col!=0) ? ((col-1) % Ns) : (Ns-1)); return sub2ind(Ms,Ns,t_row,t_col); } int southNb(int Ms, int Ns, int row, int col){ int t_row,t_col; t_row = ((row!=(Ms-1)) ? ((row+1) % Ms) : 0); t_col = col; return sub2ind(Ms,Ns,t_row,t_col); } int southeastNb(int Ms, int Ns, int row, int col){ int t_row, t_col; t_row = ((row!=(Ms-1)) ? ((row+1) % Ms) : 0); t_col = ((col!=(Ns-1)) ? ((col+1) % Ns) : 0); return sub2ind(Ms,Ns,t_row,t_col); }