Mercurial > octave-nkf
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 |