comparison scripts/general/del2.m @ 10549:95c3e38098bf

Untabify .m scripts
author Rik <code@nomad.inbox5.com>
date Fri, 23 Apr 2010 11:28:50 -0700
parents 1231b1762a9a
children d1978e7364ad
comparison
equal deleted inserted replaced
10548:479536c5bb10 10549:95c3e38098bf
78 else 78 else
79 h = varargin{1}; 79 h = varargin{1};
80 endif 80 endif
81 for i = 1 : nd 81 for i = 1 : nd
82 if (isscalar (h)) 82 if (isscalar (h))
83 dx{i} = h * ones (sz (i), 1); 83 dx{i} = h * ones (sz (i), 1);
84 else 84 else
85 if (length (h) == sz (i)) 85 if (length (h) == sz (i))
86 dx{i} = diff (h)(:); 86 dx{i} = diff (h)(:);
87 else 87 else
88 error ("dimensionality mismatch in %d-th spacing vector", i); 88 error ("dimensionality mismatch in %d-th spacing vector", i);
89 endif 89 endif
90 endif 90 endif
91 endfor 91 endfor
92 elseif (nargin - 1 == nd) 92 elseif (nargin - 1 == nd)
93 ## Reverse dx{1} and dx{2} as the X-dim is the 2nd dim of the ND array 93 ## Reverse dx{1} and dx{2} as the X-dim is the 2nd dim of the ND array
94 tmp = varargin{1}; 94 tmp = varargin{1};
95 varargin{1} = varargin{2}; 95 varargin{1} = varargin{2};
96 varargin{2} = tmp; 96 varargin{2} = tmp;
97 97
98 for i = 1 : nd 98 for i = 1 : nd
99 if (isscalar (varargin{i})) 99 if (isscalar (varargin{i}))
100 dx{i} = varargin{i} * ones (sz (i), 1); 100 dx{i} = varargin{i} * ones (sz (i), 1);
101 else 101 else
102 if (length (varargin{i}) == sz (i)) 102 if (length (varargin{i}) == sz (i))
103 dx{i} = diff (varargin{i})(:); 103 dx{i} = diff (varargin{i})(:);
104 else 104 else
105 error ("dimensionality mismatch in %d-th spacing vector", i); 105 error ("dimensionality mismatch in %d-th spacing vector", i);
106 endif 106 endif
107 endif 107 endif
108 endfor 108 endfor
109 else 109 else
110 print_usage (); 110 print_usage ();
111 endif 111 endif
129 szi (i) = 1; 129 szi (i) = 1;
130 130
131 h1 = repmat (shiftdim (dx{i}(1 : sz(i) - 2), 1 - i), szi); 131 h1 = repmat (shiftdim (dx{i}(1 : sz(i) - 2), 1 - i), szi);
132 h2 = repmat (shiftdim (dx{i}(2 : sz(i) - 1), 1 - i), szi); 132 h2 = repmat (shiftdim (dx{i}(2 : sz(i) - 1), 1 - i), szi);
133 DD(idx2{:}) = ((M(idx1{:}) - M(idx2{:})) ./ h1 + ... 133 DD(idx2{:}) = ((M(idx1{:}) - M(idx2{:})) ./ h1 + ...
134 (M(idx3{:}) - M(idx2{:})) ./ h2) ./ (h1 + h2); 134 (M(idx3{:}) - M(idx2{:})) ./ h2) ./ (h1 + h2);
135 135
136 ## left and right boundary 136 ## left and right boundary
137 if (sz(i) == 3) 137 if (sz(i) == 3)
138 DD(idx1{:}) = DD(idx3{:}) = DD(idx2{:}); 138 DD(idx1{:}) = DD(idx3{:}) = DD(idx2{:});
139 else 139 else
140 idx1{i} = 1; 140 idx1{i} = 1;
141 idx2{i} = 2; 141 idx2{i} = 2;
142 idx3{i} = 3; 142 idx3{i} = 3;
143 DD(idx1{:}) = (dx{i}(1) + dx{i}(2)) / dx{i}(2) * DD (idx2{:}) - ... 143 DD(idx1{:}) = (dx{i}(1) + dx{i}(2)) / dx{i}(2) * DD (idx2{:}) - ...
144 dx{i}(1) / dx{i}(2) * DD (idx3{:}); 144 dx{i}(1) / dx{i}(2) * DD (idx3{:});
145 145
146 idx1{i} = sz(i); 146 idx1{i} = sz(i);
147 idx2{i} = sz(i) - 1; 147 idx2{i} = sz(i) - 1;
148 idx3{i} = sz(i) - 2; 148 idx3{i} = sz(i) - 2;
149 DD(idx1{:}) = (dx{i}(sz(i) - 1) + dx{i}(sz(i) - 2)) / ... 149 DD(idx1{:}) = (dx{i}(sz(i) - 1) + dx{i}(sz(i) - 2)) / ...
150 dx{i}(sz(i) - 2) * DD (idx2{:}) - ... 150 dx{i}(sz(i) - 2) * DD (idx2{:}) - ...
151 dx{i}(sz(i) - 1) / dx{i}(sz(i) - 2) * DD (idx3{:}); 151 dx{i}(sz(i) - 1) / dx{i}(sz(i) - 2) * DD (idx3{:});
152 endif 152 endif
153 153
154 D += DD; 154 D += DD;
155 endif 155 endif
156 endfor 156 endfor