Mercurial > forge
changeset 2814:1a6504bd2278 octave-forge
Rename test
author | abarth93 |
---|---|
date | Wed, 13 Dec 2006 16:31:04 +0000 |
parents | 31887f3e60a3 |
children | e6c82d5b328f |
files | main/optiminterp/inst/test_optiminterp2.m main/optiminterp/inst/test_optiminterp_mult.m |
diffstat | 2 files changed, 119 insertions(+), 119 deletions(-) [+] |
line wrap: on
line diff
--- a/main/optiminterp/inst/test_optiminterp2.m Wed Dec 13 16:08:50 2006 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,119 +0,0 @@ -% Tests 1D, 2D and 3D optimal interpolation. -% All tests should pass; any error indicates that either -% there is a bug in the optimal interpolation package or -% that it is incrorrectly installed. - -function test_optiminterp - -more off - -printf('Testing multiple 1D-optimal interpolation: '); - -try - % grid of background field - xi = linspace(0,1,50)'; - fi_ref(:,1) = sin( xi*6 ); - fi_ref(:,2) = cos( xi*6 ); - - % grid of observations - x = linspace(0,1,20)'; - - on = numel(x); - var = 0.01 * ones(on,1); - f(:,1) = sin( x*6 ); - f(:,2) = cos( x*6 ); - - m = 15; - - [fi,vari] = optiminterp1(x,f,var,0.1,m,xi); - - - rms = sqrt(mean((fi_ref(:) - fi(:)).^2)); - - if (rms > 0.005) - error('unexpected large difference with reference field'); - end - - disp('OK'); - -catch - disp('failed'); - disp(lasterr); -end - - - -printf('Testing multiple 2D-optimal interpolation: '); - -try - clear fi_ref f - % grid of background field - [xi,yi] = ndgrid(linspace(0,1,30)); - - fi_ref(:,:,1) = sin( xi*6 ) .* cos( yi*6); - fi_ref(:,:,2) = cos( xi*6 ) .* sin( yi*6); - - % grid of observations - [x,y] = ndgrid(linspace(0,1,20)); - - on = numel(x); - var = 0.01 * ones(on,1); - f(:,:,1) = sin( x*6 ) .* cos( y*6); - f(:,:,2) = cos( x*6 ) .* sin( y*6); - - m = 30; - - [fi,vari] = optiminterp2(x,y,f,var,0.1,0.1,m,xi,yi); - - - rms = sqrt(mean((fi_ref(:) - fi(:)).^2)); - - if (rms > 0.005) - error('unexpected large difference with reference field'); - end - - disp('OK'); - -catch - disp('failed'); - disp(lasterr); -end - -printf('Testing multiple 3D-optimal interpolation: '); - - -try - clear fi_ref f - - % grid of background field - [xi,yi,zi] = ndgrid(linspace(0,1,15)); - - fi_ref(:,:,:,1) = sin(6*xi) .* cos(6*yi) .* sin(6*zi); - fi_ref(:,:,:,2) = sin(6*xi) .* cos(6*yi) .* sin(6*zi); - - % grid of observations - [x,y,z] = ndgrid(linspace(0,1,10)); - - on = numel(x); - var = 0.01 * ones(on,1); - f(:,:,:,1) = sin(6*x) .* cos(6*y) .* sin(6*z); - f(:,:,:,2) = sin(6*x) .* cos(6*y) .* sin(6*z); - - m = 20; - - [fi,vari] = optiminterp3(x,y,z,f,var,0.1,0.1,0.1,m,xi,yi,zi); - - - rms = sqrt(mean((fi_ref(:) - fi(:)).^2)); - - if (rms > 0.04) - error('unexpected large difference with reference field'); - end - - disp('OK'); - -catch - disp('failed'); - disp(lasterr); -end -
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main/optiminterp/inst/test_optiminterp_mult.m Wed Dec 13 16:31:04 2006 +0000 @@ -0,0 +1,119 @@ +% Tests 1D, 2D and 3D optimal interpolation. +% All tests should pass; any error indicates that either +% there is a bug in the optimal interpolation package or +% that it is incrorrectly installed. + +function test_optiminterp_mult + +more off + +printf('Testing multiple 1D-optimal interpolation: '); + +try + % grid of background field + xi = linspace(0,1,50)'; + fi_ref(:,1) = sin( xi*6 ); + fi_ref(:,2) = cos( xi*6 ); + + % grid of observations + x = linspace(0,1,20)'; + + on = numel(x); + var = 0.01 * ones(on,1); + f(:,1) = sin( x*6 ); + f(:,2) = cos( x*6 ); + + m = 15; + + [fi,vari] = optiminterp1(x,f,var,0.1,m,xi); + + + rms = sqrt(mean((fi_ref(:) - fi(:)).^2)); + + if (rms > 0.005) + error('unexpected large difference with reference field'); + end + + disp('OK'); + +catch + disp('failed'); + disp(lasterr); +end + + + +printf('Testing multiple 2D-optimal interpolation: '); + +try + clear fi_ref f + % grid of background field + [xi,yi] = ndgrid(linspace(0,1,30)); + + fi_ref(:,:,1) = sin( xi*6 ) .* cos( yi*6); + fi_ref(:,:,2) = cos( xi*6 ) .* sin( yi*6); + + % grid of observations + [x,y] = ndgrid(linspace(0,1,20)); + + on = numel(x); + var = 0.01 * ones(on,1); + f(:,:,1) = sin( x*6 ) .* cos( y*6); + f(:,:,2) = cos( x*6 ) .* sin( y*6); + + m = 30; + + [fi,vari] = optiminterp2(x,y,f,var,0.1,0.1,m,xi,yi); + + + rms = sqrt(mean((fi_ref(:) - fi(:)).^2)); + + if (rms > 0.005) + error('unexpected large difference with reference field'); + end + + disp('OK'); + +catch + disp('failed'); + disp(lasterr); +end + +printf('Testing multiple 3D-optimal interpolation: '); + + +try + clear fi_ref f + + % grid of background field + [xi,yi,zi] = ndgrid(linspace(0,1,15)); + + fi_ref(:,:,:,1) = sin(6*xi) .* cos(6*yi) .* sin(6*zi); + fi_ref(:,:,:,2) = sin(6*xi) .* cos(6*yi) .* sin(6*zi); + + % grid of observations + [x,y,z] = ndgrid(linspace(0,1,10)); + + on = numel(x); + var = 0.01 * ones(on,1); + f(:,:,:,1) = sin(6*x) .* cos(6*y) .* sin(6*z); + f(:,:,:,2) = sin(6*x) .* cos(6*y) .* sin(6*z); + + m = 20; + + [fi,vari] = optiminterp3(x,y,z,f,var,0.1,0.1,0.1,m,xi,yi,zi); + + + rms = sqrt(mean((fi_ref(:) - fi(:)).^2)); + + if (rms > 0.04) + error('unexpected large difference with reference field'); + end + + disp('OK'); + +catch + disp('failed'); + disp(lasterr); +end +