Diff of the two buildlogs: -- --- b1/build.log 2024-11-23 18:49:17.468870530 +0000 +++ b2/build.log 2024-11-23 18:53:37.913046696 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sat Nov 23 06:45:37 -12 2024 -I: pbuilder-time-stamp: 1732387537 +I: Current time: Sun Nov 24 08:49:27 +14 2024 +I: pbuilder-time-stamp: 1732387767 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -26,52 +26,84 @@ dpkg-source: info: unpacking octave-splines_1.3.5-2.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/27580/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/23475/tmp/hooks/D01_modify_environment starting +debug: Running on ff4a. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Nov 23 18:49 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/23475/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/23475/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='armhf' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=3 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='armhf' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf") + BASH_VERSION='5.2.32(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=armhf + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=4 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=arm + HOST_ARCH=armhf IFS=' ' - INVOCATION_ID='28cd2412c09c4d6aa4edd235c5198c82' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='27580' - PS1='# ' - PS2='> ' + INVOCATION_ID=8cd2aee3bd984120a209258f8de4249a + LANG=C + LANGUAGE=it_CH:it + LC_ALL=C + MACHTYPE=arm-unknown-linux-gnueabihf + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnueabihf + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=23475 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.ABy8Kz8u/pbuilderrc_sGaf --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.ABy8Kz8u/b1 --logfile b1/build.log octave-splines_1.3.5-2.dsc' - SUDO_GID='113' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://10.0.0.15:3142/' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.ABy8Kz8u/pbuilderrc_arWe --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.ABy8Kz8u/b2 --logfile b2/build.log octave-splines_1.3.5-2.dsc' + SUDO_GID=113 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://10.0.0.15:3142/ I: uname -a - Linux virt64c 6.1.0-27-arm64 #1 SMP Debian 6.1.115-1 (2024-11-01) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-27-armmp-lpae #1 SMP Debian 6.1.115-1 (2024-11-01) armv7l GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/27580/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/23475/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -628,7 +660,7 @@ Get: 517 http://deb.debian.org/debian unstable/main armhf gfortran armhf 4:14.2.0-1 [1428 B] Get: 518 http://deb.debian.org/debian unstable/main armhf octave-dev armhf 9.2.0-3+b1 [995 kB] Get: 519 http://deb.debian.org/debian unstable/main armhf dh-octave all 1.8.0 [22.7 kB] -Fetched 174 MB in 6s (30.8 MB/s) +Fetched 174 MB in 10s (17.0 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package netbase. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19686 files and directories currently installed.) @@ -2758,7 +2790,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/octave-splines-1.3.5/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../octave-splines_1.3.5-2_source.changes +I: user script /srv/workspace/pbuilder/23475/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/23475/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/octave-splines-1.3.5/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../octave-splines_1.3.5-2_source.changes dpkg-buildpackage: info: source package octave-splines dpkg-buildpackage: info: source version 1.3.5-2 dpkg-buildpackage: info: source distribution unstable @@ -2795,6 +2831,175 @@ Checking package... Run the unit tests... Checking m files ... +[inst/tps_val_der.m] +>>>>> /build/reproducible-path/octave-splines-1.3.5/inst/tps_val_der.m +***** shared a,b,x,y,x1,x2,y1,c,dy,dy0 + a = 2; b = -3; x = ([1:2:10 10.5 11.3])'; y = a*x; + c = tpaps(x,y,1); +***** assert (a*ones(size(x)), tps_val_der(x,c,x), 1E3*eps); + [x1 x2] = meshgrid(x, x); + y1 = a*x1+b*x2; + c = tpaps([x1(:) x2(:)],y1(:),0.5); + dy = tps_val_der([x1(:) x2(:)],c,[x1(:) x2(:)]); + dy0 = tps_val_der([x1(:) x2(:)],c,[x1(:) x2(:)],false); +***** assert (a*ones(size(x1(:))), dy(:, 1), 1E3*eps); +***** assert (b*ones(size(x2(:))), dy(:, 2), 1E3*eps); +***** assert (dy0, dy, 1E3*eps); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/csape.m] +>>>>> /build/reproducible-path/octave-splines-1.3.5/inst/csape.m +***** shared x,x2,y,cond,pp,pp1,pp2,h,valc,xi,yi + x = linspace(0,2*pi,5); y = sin(x); x2 = linspace(0,2*pi,16); +***** assert (ppval(csape(x,y),x), y, 10*eps); +***** assert (ppval(csape(x,y),x'), y', 10*eps); +***** assert (ppval(csape(x',y'),x'), y', 10*eps); +***** assert (ppval(csape(x',y'),x), y, 10*eps); +***** assert (ppval(csape(x,[y;y]),x), ... + [ppval(csape(x,y),x);ppval(csape(x,y),x)], 10*eps) +***** assert (ppval(csape(x,[y;y]),x2), ... + [ppval(csape(x,y),x2);ppval(csape(x,y),x2)], 10*eps) +***** assert (ppval(csape([1 2 4],[2, 3, 6]), 3), 13/3, 10*eps); +***** test cond='complete'; +***** assert (ppval(csape(x,y,cond),x), y, 10*eps); +***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x), y, 10*eps); +***** assert (ppval(csape(x,[y;y],cond),x), ... + [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) +***** assert (ppval(csape(x,[y;y],cond),x2), ... + [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) +***** assert (ppval(csape([1 2 4],[2, 3, 6], cond, [2 1]), 3), 215/48, 10*eps); +***** test cond='variational'; +***** assert (ppval(csape(x,y,cond),x), y, 10*eps); +***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x), y, 10*eps); +***** assert (ppval(csape(x,[y;y],cond),x), ... + [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) +***** assert (ppval(csape(x,[y;y],cond),x2), ... + [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) +***** assert (ppval(csape([1 2 3],[2, 3, 5],cond), 1.5), 2.40625, 10*eps); +***** assert (ppval(csape([1 2 4],[2, 3, 6], cond), 3), 4.375, 10*eps); +***** test cond='second'; +***** assert (ppval(csape(x,y,cond),x), y, 10*eps); +***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x), y, 10*eps); +***** assert (ppval(csape(x,[y;y],cond),x), ... + [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) +***** assert (ppval(csape(x,[y;y],cond),x2), ... + [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) +***** assert (ppval(csape([1 2 4],[2, 3, 6], cond, [1 2]), 3), 49/12, 10*eps); +***** test cond='periodic'; +***** assert (ppval(csape(x,y,cond),x), y, 10*eps); +***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x), y, 10*eps); +***** assert (ppval(csape(x,[y;y],cond),x), ... + [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) +***** assert (ppval(csape(x,[y;y],cond),x2), ... + [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) +***** test cond='not-a-knot'; +***** assert (ppval(csape(x,y,cond),x), y, 10*eps); +***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); +***** assert (ppval(csape(x',y',cond),x), y, 10*eps); +***** assert (ppval(csape(x,[y;y],cond),x), ... + [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) +***** assert (ppval(csape(x,[y;y],cond),x2), ... + [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) +***** assert (ppval(csape(x(1:4),y(1:4),cond),x(1:4)), y(1:4), 10*eps); +***** assert (ppval(csape(x(1:4)',y(1:4)',cond),x(1:4)), y(1:4), 10*eps); +***** test assert (ppval(csape([1 2 4],[2, 3, 6], 'not-a-knot'), 3), 13/3, 10*eps); +***** test assert (ppval(csape([1 2 4 5],[2, 3, 6, 5], 'not-a-knot'), 3), 29/6, 10*eps); +***** test assert (ppval(csape([1 2 4 5 6],[2, 3, 6, 5, 6], 'not-a-knot'), 3), 141/28, 10*eps); +***** test cond='complete'; + h = pi/6; n = 3; x = linspace(0,(n-1)*h,n)'; y = sin(x); valc = cos([x(1) x(end)]); pp = csape(x, y, cond, valc); +***** assert (ppval(csape(x,[y y],cond, valc),x)', ... + repmat(ppval(pp, x), [1 2]), 10*eps) +***** assert (polyval(pp.coefs(1, :), [0 h])', y(1:2), 10*eps) +***** assert (polyval(pp.coefs(2, :), [0 h])', y(2:3), 10*eps) +***** assert (polyval([3*pp.coefs(1, 1) 2*pp.coefs(1, 2) pp.coefs(1, 3)], 0), valc(1), 10*eps) +***** assert (polyval([3*pp.coefs(2, 1) 2*pp.coefs(2, 2) pp.coefs(2, 3)], h), valc(2), 10*eps) +***** assert (polyval([3*pp.coefs(1, 1) 2*pp.coefs(1, 2) pp.coefs(1, 3)], h), polyval([3*pp.coefs(2, 1) 2*pp.coefs(2, 2) pp.coefs(2, 3)], 0), 10*eps) +***** assert (polyval([6*pp.coefs(1, 1) 2*pp.coefs(1, 2)], h), polyval([6*pp.coefs(2, 1) 2*pp.coefs(2, 2)], 0), 10*eps) + y = cos(x); valc = -sin([x(1) x(end)]); pp1 = csape(x, y, cond, valc); +***** assert (ppval(csape(x,[y y],cond, valc),x)', ... + repmat(ppval(pp1, x), [1 2]), 10*eps) +***** assert (polyval(pp1.coefs(1, :), [0 h])', y(1:2), 10*eps) +***** assert (polyval(pp1.coefs(2, :), [0 h])', y(2:3), 10*eps) +***** assert (polyval([3*pp1.coefs(1, 1) 2*pp1.coefs(1, 2) pp1.coefs(1, 3)], 0), valc(1), 10*eps) +***** assert (polyval([3*pp1.coefs(2, 1) 2*pp1.coefs(2, 2) pp1.coefs(2, 3)], h), valc(2), 10*eps) +***** assert (polyval([3*pp1.coefs(1, 1) 2*pp1.coefs(1, 2) pp1.coefs(1, 3)], h), polyval([3*pp1.coefs(2, 1) 2*pp1.coefs(2, 2) pp1.coefs(2, 3)], 0), 10*eps) +***** assert (polyval([6*pp1.coefs(1, 1) 2*pp1.coefs(1, 2)], h), polyval([6*pp1.coefs(2, 1) 2*pp1.coefs(2, 2)], 0), 10*eps) + y = [sin(x) cos(x)]; valc = [cos([x(1); x(end)]) -sin([x(1); x(end)])]; pp2 = csape(x, y, cond, valc); +***** assert (pp2.coefs([1 3], :), pp.coefs) +***** assert (pp2.coefs([2 4], :), pp1.coefs) +***** test cond='periodic'; + x = [1 2 4 5 6]'; y = [2 3 6 5 6]'; xi = 3; yi = 129/26; pp = csape (x, y, cond); +***** assert (ppval(pp, x), y, 10*eps); +***** assert (ppval(pp, xi), yi, 10*eps); +***** assert (ppval(ppder(pp), x(1)), ppval(ppder(pp), x(end)), 10*eps); +***** assert (ppval(ppder(pp, 2), x(1)), ppval(ppder(pp, 2), x(end)), 10*eps); + x = [1 2 4 6]'; y = [2 3 4 2]'; xi = 3; yi = 4 + 1/64; pp = csape (x, y, cond); +***** assert (ppval(pp, x), y, 10*eps); +***** assert (ppval(pp, xi), yi, 10*eps); +***** assert (ppval(ppder(pp), x(1)), ppval(ppder(pp), x(end)), 10*eps); +***** assert (ppval(ppder(pp, 2), x(1)), ppval(ppder(pp, 2), x(end)), 10*eps); + x = [1 2 4 5]'; y = [2 3 6 5]'; xi = 3; yi = 5.1; pp = csape (x, y, cond); +***** assert (ppval(pp, x), y, 10*eps); +***** assert (ppval(pp, xi), yi, 10*eps); +***** assert (ppval(ppder(pp), x(1)), ppval(ppder(pp), x(end)), 10*eps); +***** assert (ppval(ppder(pp, 2), x(1)), ppval(ppder(pp, 2), x(end)), 10*eps); + x = [1 2 4]'; y = [2 3 2]'; xi = 3; yi = 2.5; pp = csape (x, y, cond); +***** assert (ppval(pp, x), y, 10*eps); +***** assert (ppval(pp, xi), yi, 10*eps); +***** assert (ppval(ppder(pp), x(1)), ppval(ppder(pp), x(end)), 10*eps); +***** assert (ppval(ppder(pp, 2), x(1)), ppval(ppder(pp, 2), x(end)), 10*eps); +85 tests, 85 passed, 0 known failure, 0 skipped +[inst/csaps.m] +>>>>> /build/reproducible-path/octave-splines-1.3.5/inst/csaps.m +***** shared x,y,xi,yi,p,sigma2,unc_yi,df + x = ([1:10 10.5 11.3])'; y = sin(x); xi = linspace(min(x), max(x), 30)'; +***** assert (csaps(x,y,1,x), y, 10*eps); +***** assert (csaps(x,y,1,x'), y', 10*eps); +***** assert (csaps(x',y',1,x'), y', 10*eps); +***** assert (csaps(x',y',1,x), y, 10*eps); +***** assert (csaps(x,[y 2*y],1,x)', [y 2*y], 10*eps); + [yi,p,sigma2,unc_yi,df] = csaps(x,y,1,xi); +***** assert (yi, ppval(csape(x, y, "variational"), xi), eps); +***** assert (p, 1); +***** assert (unc_yi, zeros(size(xi))); +***** assert (sigma2, 0); +***** assert (df, numel(x)); + [yi,p,~,~,df] = csaps(x,y,0,xi); +***** assert (yi, polyval(polyfit(x, y, 1), xi), 10*eps); +***** assert (p, 0); +***** assert (df, 2, 100*eps); +13 tests, 13 passed, 0 known failure, 0 skipped +[inst/csaps_sel.m] +>>>>> /build/reproducible-path/octave-splines-1.3.5/inst/csaps_sel.m +***** shared x,y,ret,p,sigma2,unc_y + x = [0:0.01:1]'; y = sin(x); + [ret,p,sigma2,unc_y] = csaps_sel(x,y,x); +***** assert (1 - p, 0, 1E-6); +***** assert (sigma2, 0, 1E-10); +***** assert (ret - y, zeros(size(y)), 1E-4); +***** assert (ret, (csaps_sel(x,[y 2*y],x))'(:, 1), 1E-4); +***** assert (unc_y, zeros(size(unc_y)), 1E-5); +***** demo + ni = 400; #number of evaluation points + n = 40; #number of given sample points + f = @(x) sin (2*pi*x); #function generating the synthetic data + x = sort (rand (n, 1)); #sampled points + y = f(x) + 0.1*randn (n, 1); + xi = linspace (0, 1, ni); #evaluation points + yi = csaps_sel (x,y,xi,[],'aicc'); + plot (x, y, 's', xi, yi) + grid on + legend ('Given data', 'Spline fit') + title ('Spline smoothing with synthetic data sampled from sine wave with noise') +5 tests, 5 passed, 0 known failure, 0 skipped [inst/regularization.m] >>>>> /build/reproducible-path/octave-splines-1.3.5/inst/regularization.m ***** demo @@ -2868,6 +3073,15 @@ [grid,u] = regularization([x;x.^2]',[-2,2],20,F1,F2); assert(u(11),7.330959483903200e-03,1e-8) 2 tests, 2 passed, 0 known failure, 0 skipped +[inst/tpaps.m] +>>>>> /build/reproducible-path/octave-splines-1.3.5/inst/tpaps.m +***** shared x,y + x = ([1:10 10.5 11.3])'; y = sin(x); +***** assert (tpaps(x,y,1,x), y, 1E3*eps); + x = ((1 ./ (1:100))' - 0.5) * ([0.2 0.6]); + y = x(:, 1) .^ 2 + x(:, 2) .^ 2; +***** assert (tpaps(x,y,1,x), y, 1E-10); +2 tests, 2 passed, 0 known failure, 0 skipped [inst/tps_val.m] >>>>> /build/reproducible-path/octave-splines-1.3.5/inst/tps_val.m ***** shared x,y,c,xi @@ -2880,6 +3094,18 @@ ***** assert (tpaps(x,y,1,x), tps_val(x,c,x), 100*eps); ***** assert (tps_val(x,c,x,true), tps_val(x,c,x,false), 100*eps); 3 tests, 3 passed, 0 known failure, 0 skipped +[inst/bin_values.m] +>>>>> /build/reproducible-path/octave-splines-1.3.5/inst/bin_values.m +***** shared x, y, x_bin, y_bin, w_bin, n_bin + x = [1; 2; 2; 3; 4]; + y = [0 0; 1 1; 2 1; 3 4; 5 NaN]; + [x_bin y_bin w_bin n_bin] = bin_values(x, y); +***** assert (x_bin, [1; 7/3]); +***** assert (y_bin, [0 0; 2 2]); +***** assert (!any(isfinite(w_bin(1, :)))); +***** assert (w_bin(2, :), [3 1]); +***** assert (n_bin, [1; 3]); +5 tests, 5 passed, 0 known failure, 0 skipped [inst/dedup.m] >>>>> /build/reproducible-path/octave-splines-1.3.5/inst/dedup.m ***** shared x, y, w @@ -2892,29 +3118,6 @@ ***** assert (y, [0 0; 21/11 1; 3 4], 10*eps); ***** assert (w, [1; 1.1; 0.5]); 4 tests, 4 passed, 0 known failure, 0 skipped -[inst/csaps_sel.m] ->>>>> /build/reproducible-path/octave-splines-1.3.5/inst/csaps_sel.m -***** shared x,y,ret,p,sigma2,unc_y - x = [0:0.01:1]'; y = sin(x); - [ret,p,sigma2,unc_y] = csaps_sel(x,y,x); -***** assert (1 - p, 0, 1E-6); -***** assert (sigma2, 0, 1E-10); -***** assert (ret - y, zeros(size(y)), 1E-4); -***** assert (ret, (csaps_sel(x,[y 2*y],x))'(:, 1), 1E-4); -***** assert (unc_y, zeros(size(unc_y)), 1E-5); -***** demo - ni = 400; #number of evaluation points - n = 40; #number of given sample points - f = @(x) sin (2*pi*x); #function generating the synthetic data - x = sort (rand (n, 1)); #sampled points - y = f(x) + 0.1*randn (n, 1); - xi = linspace (0, 1, ni); #evaluation points - yi = csaps_sel (x,y,xi,[],'aicc'); - plot (x, y, 's', xi, yi) - grid on - legend ('Given data', 'Spline fit') - title ('Spline smoothing with synthetic data sampled from sine wave with noise') -5 tests, 5 passed, 0 known failure, 0 skipped [inst/regularization2D.m] >>>>> /build/reproducible-path/octave-splines-1.3.5/inst/regularization2D.m ***** demo @@ -2961,173 +3164,6 @@ -3.356775648311422e-02]; assert(norm(value_at_data-u_valid(:,3)),0,1e-12) 2 tests, 2 passed, 0 known failure, 0 skipped -[inst/csape.m] ->>>>> /build/reproducible-path/octave-splines-1.3.5/inst/csape.m -***** shared x,x2,y,cond,pp,pp1,pp2,h,valc,xi,yi - x = linspace(0,2*pi,5); y = sin(x); x2 = linspace(0,2*pi,16); -***** assert (ppval(csape(x,y),x), y, 10*eps); -***** assert (ppval(csape(x,y),x'), y', 10*eps); -***** assert (ppval(csape(x',y'),x'), y', 10*eps); -***** assert (ppval(csape(x',y'),x), y, 10*eps); -***** assert (ppval(csape(x,[y;y]),x), ... - [ppval(csape(x,y),x);ppval(csape(x,y),x)], 10*eps) -***** assert (ppval(csape(x,[y;y]),x2), ... - [ppval(csape(x,y),x2);ppval(csape(x,y),x2)], 10*eps) -***** assert (ppval(csape([1 2 4],[2, 3, 6]), 3), 13/3, 10*eps); -***** test cond='complete'; -***** assert (ppval(csape(x,y,cond),x), y, 10*eps); -***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x), y, 10*eps); -***** assert (ppval(csape(x,[y;y],cond),x), ... - [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) -***** assert (ppval(csape(x,[y;y],cond),x2), ... - [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) -***** assert (ppval(csape([1 2 4],[2, 3, 6], cond, [2 1]), 3), 215/48, 10*eps); -***** test cond='variational'; -***** assert (ppval(csape(x,y,cond),x), y, 10*eps); -***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x), y, 10*eps); -***** assert (ppval(csape(x,[y;y],cond),x), ... - [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) -***** assert (ppval(csape(x,[y;y],cond),x2), ... - [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) -***** assert (ppval(csape([1 2 3],[2, 3, 5],cond), 1.5), 2.40625, 10*eps); -***** assert (ppval(csape([1 2 4],[2, 3, 6], cond), 3), 4.375, 10*eps); -***** test cond='second'; -***** assert (ppval(csape(x,y,cond),x), y, 10*eps); -***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x), y, 10*eps); -***** assert (ppval(csape(x,[y;y],cond),x), ... - [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) -***** assert (ppval(csape(x,[y;y],cond),x2), ... - [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) -***** assert (ppval(csape([1 2 4],[2, 3, 6], cond, [1 2]), 3), 49/12, 10*eps); -***** test cond='periodic'; -***** assert (ppval(csape(x,y,cond),x), y, 10*eps); -***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x), y, 10*eps); -***** assert (ppval(csape(x,[y;y],cond),x), ... - [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) -***** assert (ppval(csape(x,[y;y],cond),x2), ... - [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) -***** test cond='not-a-knot'; -***** assert (ppval(csape(x,y,cond),x), y, 10*eps); -***** assert (ppval(csape(x,y,cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x'), y', 10*eps); -***** assert (ppval(csape(x',y',cond),x), y, 10*eps); -***** assert (ppval(csape(x,[y;y],cond),x), ... - [ppval(csape(x,y,cond),x);ppval(csape(x,y,cond),x)], 10*eps) -***** assert (ppval(csape(x,[y;y],cond),x2), ... - [ppval(csape(x,y,cond),x2);ppval(csape(x,y,cond),x2)], 10*eps) -***** assert (ppval(csape(x(1:4),y(1:4),cond),x(1:4)), y(1:4), 10*eps); -***** assert (ppval(csape(x(1:4)',y(1:4)',cond),x(1:4)), y(1:4), 10*eps); -***** test assert (ppval(csape([1 2 4],[2, 3, 6], 'not-a-knot'), 3), 13/3, 10*eps); -***** test assert (ppval(csape([1 2 4 5],[2, 3, 6, 5], 'not-a-knot'), 3), 29/6, 10*eps); -***** test assert (ppval(csape([1 2 4 5 6],[2, 3, 6, 5, 6], 'not-a-knot'), 3), 141/28, 10*eps); -***** test cond='complete'; - h = pi/6; n = 3; x = linspace(0,(n-1)*h,n)'; y = sin(x); valc = cos([x(1) x(end)]); pp = csape(x, y, cond, valc); -***** assert (ppval(csape(x,[y y],cond, valc),x)', ... - repmat(ppval(pp, x), [1 2]), 10*eps) -***** assert (polyval(pp.coefs(1, :), [0 h])', y(1:2), 10*eps) -***** assert (polyval(pp.coefs(2, :), [0 h])', y(2:3), 10*eps) -***** assert (polyval([3*pp.coefs(1, 1) 2*pp.coefs(1, 2) pp.coefs(1, 3)], 0), valc(1), 10*eps) -***** assert (polyval([3*pp.coefs(2, 1) 2*pp.coefs(2, 2) pp.coefs(2, 3)], h), valc(2), 10*eps) -***** assert (polyval([3*pp.coefs(1, 1) 2*pp.coefs(1, 2) pp.coefs(1, 3)], h), polyval([3*pp.coefs(2, 1) 2*pp.coefs(2, 2) pp.coefs(2, 3)], 0), 10*eps) -***** assert (polyval([6*pp.coefs(1, 1) 2*pp.coefs(1, 2)], h), polyval([6*pp.coefs(2, 1) 2*pp.coefs(2, 2)], 0), 10*eps) - y = cos(x); valc = -sin([x(1) x(end)]); pp1 = csape(x, y, cond, valc); -***** assert (ppval(csape(x,[y y],cond, valc),x)', ... - repmat(ppval(pp1, x), [1 2]), 10*eps) -***** assert (polyval(pp1.coefs(1, :), [0 h])', y(1:2), 10*eps) -***** assert (polyval(pp1.coefs(2, :), [0 h])', y(2:3), 10*eps) -***** assert (polyval([3*pp1.coefs(1, 1) 2*pp1.coefs(1, 2) pp1.coefs(1, 3)], 0), valc(1), 10*eps) -***** assert (polyval([3*pp1.coefs(2, 1) 2*pp1.coefs(2, 2) pp1.coefs(2, 3)], h), valc(2), 10*eps) -***** assert (polyval([3*pp1.coefs(1, 1) 2*pp1.coefs(1, 2) pp1.coefs(1, 3)], h), polyval([3*pp1.coefs(2, 1) 2*pp1.coefs(2, 2) pp1.coefs(2, 3)], 0), 10*eps) -***** assert (polyval([6*pp1.coefs(1, 1) 2*pp1.coefs(1, 2)], h), polyval([6*pp1.coefs(2, 1) 2*pp1.coefs(2, 2)], 0), 10*eps) - y = [sin(x) cos(x)]; valc = [cos([x(1); x(end)]) -sin([x(1); x(end)])]; pp2 = csape(x, y, cond, valc); -***** assert (pp2.coefs([1 3], :), pp.coefs) -***** assert (pp2.coefs([2 4], :), pp1.coefs) -***** test cond='periodic'; - x = [1 2 4 5 6]'; y = [2 3 6 5 6]'; xi = 3; yi = 129/26; pp = csape (x, y, cond); -***** assert (ppval(pp, x), y, 10*eps); -***** assert (ppval(pp, xi), yi, 10*eps); -***** assert (ppval(ppder(pp), x(1)), ppval(ppder(pp), x(end)), 10*eps); -***** assert (ppval(ppder(pp, 2), x(1)), ppval(ppder(pp, 2), x(end)), 10*eps); - x = [1 2 4 6]'; y = [2 3 4 2]'; xi = 3; yi = 4 + 1/64; pp = csape (x, y, cond); -***** assert (ppval(pp, x), y, 10*eps); -***** assert (ppval(pp, xi), yi, 10*eps); -***** assert (ppval(ppder(pp), x(1)), ppval(ppder(pp), x(end)), 10*eps); -***** assert (ppval(ppder(pp, 2), x(1)), ppval(ppder(pp, 2), x(end)), 10*eps); - x = [1 2 4 5]'; y = [2 3 6 5]'; xi = 3; yi = 5.1; pp = csape (x, y, cond); -***** assert (ppval(pp, x), y, 10*eps); -***** assert (ppval(pp, xi), yi, 10*eps); -***** assert (ppval(ppder(pp), x(1)), ppval(ppder(pp), x(end)), 10*eps); -***** assert (ppval(ppder(pp, 2), x(1)), ppval(ppder(pp, 2), x(end)), 10*eps); - x = [1 2 4]'; y = [2 3 2]'; xi = 3; yi = 2.5; pp = csape (x, y, cond); -***** assert (ppval(pp, x), y, 10*eps); -***** assert (ppval(pp, xi), yi, 10*eps); -***** assert (ppval(ppder(pp), x(1)), ppval(ppder(pp), x(end)), 10*eps); -***** assert (ppval(ppder(pp, 2), x(1)), ppval(ppder(pp, 2), x(end)), 10*eps); -85 tests, 85 passed, 0 known failure, 0 skipped -[inst/tps_val_der.m] ->>>>> /build/reproducible-path/octave-splines-1.3.5/inst/tps_val_der.m -***** shared a,b,x,y,x1,x2,y1,c,dy,dy0 - a = 2; b = -3; x = ([1:2:10 10.5 11.3])'; y = a*x; - c = tpaps(x,y,1); -***** assert (a*ones(size(x)), tps_val_der(x,c,x), 1E3*eps); - [x1 x2] = meshgrid(x, x); - y1 = a*x1+b*x2; - c = tpaps([x1(:) x2(:)],y1(:),0.5); - dy = tps_val_der([x1(:) x2(:)],c,[x1(:) x2(:)]); - dy0 = tps_val_der([x1(:) x2(:)],c,[x1(:) x2(:)],false); -***** assert (a*ones(size(x1(:))), dy(:, 1), 1E3*eps); -***** assert (b*ones(size(x2(:))), dy(:, 2), 1E3*eps); -***** assert (dy0, dy, 1E3*eps); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/bin_values.m] ->>>>> /build/reproducible-path/octave-splines-1.3.5/inst/bin_values.m -***** shared x, y, x_bin, y_bin, w_bin, n_bin - x = [1; 2; 2; 3; 4]; - y = [0 0; 1 1; 2 1; 3 4; 5 NaN]; - [x_bin y_bin w_bin n_bin] = bin_values(x, y); -***** assert (x_bin, [1; 7/3]); -***** assert (y_bin, [0 0; 2 2]); -***** assert (!any(isfinite(w_bin(1, :)))); -***** assert (w_bin(2, :), [3 1]); -***** assert (n_bin, [1; 3]); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/csaps.m] ->>>>> /build/reproducible-path/octave-splines-1.3.5/inst/csaps.m -***** shared x,y,xi,yi,p,sigma2,unc_yi,df - x = ([1:10 10.5 11.3])'; y = sin(x); xi = linspace(min(x), max(x), 30)'; -***** assert (csaps(x,y,1,x), y, 10*eps); -***** assert (csaps(x,y,1,x'), y', 10*eps); -***** assert (csaps(x',y',1,x'), y', 10*eps); -***** assert (csaps(x',y',1,x), y, 10*eps); -***** assert (csaps(x,[y 2*y],1,x)', [y 2*y], 10*eps); - [yi,p,sigma2,unc_yi,df] = csaps(x,y,1,xi); -***** assert (yi, ppval(csape(x, y, "variational"), xi), eps); -***** assert (p, 1); -***** assert (unc_yi, zeros(size(xi))); -***** assert (sigma2, 0); -***** assert (df, numel(x)); - [yi,p,~,~,df] = csaps(x,y,0,xi); -***** assert (yi, polyval(polyfit(x, y, 1), xi), 10*eps); -***** assert (p, 0); -***** assert (df, 2, 100*eps); -13 tests, 13 passed, 0 known failure, 0 skipped -[inst/tpaps.m] ->>>>> /build/reproducible-path/octave-splines-1.3.5/inst/tpaps.m -***** shared x,y - x = ([1:10 10.5 11.3])'; y = sin(x); -***** assert (tpaps(x,y,1,x), y, 1E3*eps); - x = ((1 ./ (1:100))' - 0.5) * ([0.2 0.6]); - y = x(:, 1) .^ 2 + x(:, 2) .^ 2; -***** assert (tpaps(x,y,1,x), y, 1E-10); -2 tests, 2 passed, 0 known failure, 0 skipped Checking C++ files ... Done running the unit tests. Summary: 125 tests, 125 passed, 0 known failures, 0 skipped @@ -3156,12 +3192,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/23475/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/23475/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/27580 and its subdirectories -I: Current time: Sat Nov 23 06:49:12 -12 2024 -I: pbuilder-time-stamp: 1732387752 +I: removing directory /srv/workspace/pbuilder/23475 and its subdirectories +I: Current time: Sun Nov 24 08:53:33 +14 2024 +I: pbuilder-time-stamp: 1732388013