Diff of the two buildlogs: -- --- b1/build.log 2024-09-28 13:34:31.935494659 +0000 +++ b2/build.log 2024-09-28 13:44:02.007231663 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sat Sep 28 01:27:16 -12 2024 -I: pbuilder-time-stamp: 1727530036 +I: Current time: Sat Nov 1 09:57:34 +14 2025 +I: pbuilder-time-stamp: 1761940654 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -28,52 +28,84 @@ dpkg-source: info: applying 0003-Mark-expected-failure.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/883036/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2120559/tmp/hooks/D01_modify_environment starting +debug: Running on ionos15-amd64. +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 Oct 31 19:57 /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/2120559/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2120559/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='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + 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]="x86_64-pc-linux-gnu") + 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=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='1b38c59cf8ca4de9b435e5b563ccd892' - 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='883036' - PS1='# ' - PS2='> ' + INVOCATION_ID=0b08d26803f04e419b4fe0e5b64dd38f + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + 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=2120559 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.WSSTQZ8A/pbuilderrc_hmjV --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.WSSTQZ8A/b1 --logfile b1/build.log octave-stk_2.8.1-3.dsc' - SUDO_GID='111' - SUDO_UID='106' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://46.16.76.132:3128' + 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.WSSTQZ8A/pbuilderrc_00xl --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.WSSTQZ8A/b2 --logfile b2/build.log octave-stk_2.8.1-3.dsc' + SUDO_GID=111 + SUDO_UID=106 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://213.165.73.152:3128 I: uname -a - Linux ionos11-amd64 6.1.0-25-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.10.6+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.10.6-1~bpo12+1 (2024-08-26) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/883036/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2120559/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -684,7 +716,7 @@ Get: 571 http://deb.debian.org/debian unstable/main amd64 gfortran amd64 4:14.1.0-2 [1436 B] Get: 572 http://deb.debian.org/debian unstable/main amd64 octave-dev amd64 9.2.0-3 [1001 kB] Get: 573 http://deb.debian.org/debian unstable/main amd64 dh-octave all 1.8.0 [22.7 kB] -Fetched 273 MB in 18s (14.9 MB/s) +Fetched 273 MB in 17s (16.4 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 ... 19787 files and directories currently installed.) @@ -3034,7 +3066,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/octave-stk-2.8.1/ && 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-stk_2.8.1-3_source.changes +I: user script /srv/workspace/pbuilder/2120559/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/2120559/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/octave-stk-2.8.1/ && 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-stk_2.8.1-3_source.changes dpkg-buildpackage: info: source package octave-stk dpkg-buildpackage: info: source version 2.8.1-3 dpkg-buildpackage: info: source distribution unstable @@ -3073,49 +3109,49 @@ /usr/bin/mkoctfile --verbose --mex --output __stk_dist_pairwise__.mex stk_dist_pairwise.c /usr/bin/mkoctfile --verbose --mex --output __get_column_number__.mex get_column_number.c /usr/bin/mkoctfile --verbose --mex --output __stk_dist_matrixy__.mex stk_dist_matrixy.c +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_dist_pairwise.c -o /tmp/oct-M3cb8O.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG get_column_number.c -o /tmp/oct-VLI1DT.o /usr/bin/mkoctfile --verbose --mex --output __stk_filldist_discr_mex__.mex stk_filldist_discr_mex.c +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_dist_matrixy.c -o /tmp/oct-gCAExj.o /usr/bin/mkoctfile --verbose --mex --output __stk_gpquadform_matrixy__.mex stk_gpquadform_matrixy.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_dist_pairwise.c -o /tmp/oct-ZHm9Ru.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG get_column_number.c -o /tmp/oct-0heACI.o /usr/bin/mkoctfile --verbose --mex --output __stk_isdominated_mex__.mex stk_isdominated_mex.c +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_filldist_discr_mex.c -o /tmp/oct-4xoz9Y.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_gpquadform_matrixy.c -o /tmp/oct-FCDCBU.o /usr/bin/mkoctfile --verbose --mex --output __stk_mindist_mex__.mex stk_mindist_mex.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_dist_matrixy.c -o /tmp/oct-s0mXxE.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_isdominated_mex.c -o /tmp/oct-PXxfZq.o /usr/bin/mkoctfile --verbose --mex --output __stk_dist_matrixx__.mex stk_dist_matrixx.c +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_mindist_mex.c -o /tmp/oct-IHxtCB.o /usr/bin/mkoctfile --verbose --mex --output __stk_gpquadform_matrixx__.mex stk_gpquadform_matrixx.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_gpquadform_matrixy.c -o /tmp/oct-qynEQi.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_filldist_discr_mex.c -o /tmp/oct-eV68th.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_dist_matrixx.c -o /tmp/oct-PTTV85.o /usr/bin/mkoctfile --verbose --mex --output __stk_gpquadform_pairwise__.mex stk_gpquadform_pairwise.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_isdominated_mex.c -o /tmp/oct-ReS2LW.o /usr/bin/mkoctfile --verbose --mex --output __stk_paretofind_mex__.mex stk_paretofind_mex.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_mindist_mex.c -o /tmp/oct-tDPb1G.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_gpquadform_matrixx.c -o /tmp/oct-5DNkML.o /usr/bin/mkoctfile --verbose --mex --output __stk_sampling_vdc_rr2__.mex stk_sampling_vdc_rr2.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_dist_matrixx.c -o /tmp/oct-2YM4DF.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_paretofind_mex.c -o /tmp/oct-Qnmq1A.o /usr/bin/mkoctfile --verbose --mex --output __stk_sampling_sobol_mex__.mex stk_sampling_sobol_mex.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_gpquadform_matrixx.c -o /tmp/oct-4B7UDx.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_gpquadform_pairwise.c -o /tmp/oct-Zj0nTt.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_sampling_vdc_rr2.c -o /tmp/oct-3Ys4QH.o /usr/bin/mkoctfile --verbose --mex --output __stk_distrib_bivnorm0_cdf__.mex stk_distrib_bivnorm0_cdf.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_gpquadform_pairwise.c -o /tmp/oct-eInCNn.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_paretofind_mex.c -o /tmp/oct-nEuM7O.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_sampling_sobol_mex.c -o /tmp/oct-AQ8iyd.o /usr/bin/mkoctfile --verbose --mex --output __stk_dominatedhv_mex__.mex stk_dominatedhv_mex.c wfg.c -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_sampling_vdc_rr2.c -o /tmp/oct-wgHrOw.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_sampling_sobol_mex.c -o /tmp/oct-AeL7my.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_distrib_bivnorm0_cdf.c -o /tmp/oct-8qtWmn.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_dominatedhv_mex.c -o /tmp/oct-uXnLCy.o -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_gpquadform_matrixy__.mex /tmp/oct-qynEQi.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_dist_pairwise__.mex /tmp/oct-ZHm9Ru.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_filldist_discr_mex__.mex /tmp/oct-eV68th.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_gpquadform_pairwise__.mex /tmp/oct-eInCNn.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __get_column_number__.mex /tmp/oct-0heACI.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_mindist_mex__.mex /tmp/oct-tDPb1G.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_isdominated_mex__.mex /tmp/oct-ReS2LW.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_dist_matrixy__.mex /tmp/oct-s0mXxE.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_dist_matrixx__.mex /tmp/oct-2YM4DF.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_gpquadform_matrixx__.mex /tmp/oct-4B7UDx.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_sampling_vdc_rr2__.mex /tmp/oct-wgHrOw.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_paretofind_mex__.mex /tmp/oct-nEuM7O.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_sampling_sobol_mex__.mex /tmp/oct-AeL7my.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_distrib_bivnorm0_cdf__.mex /tmp/oct-8qtWmn.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG wfg.c -o /tmp/oct-huODWk.o -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_dominatedhv_mex__.mex /tmp/oct-uXnLCy.o /tmp/oct-huODWk.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_distrib_bivnorm0_cdf.c -o /tmp/oct-HDYILn.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG stk_dominatedhv_mex.c -o /tmp/oct-MxfgKE.o +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_mindist_mex__.mex /tmp/oct-IHxtCB.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_dist_pairwise__.mex /tmp/oct-M3cb8O.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_gpquadform_pairwise__.mex /tmp/oct-Zj0nTt.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_dist_matrixx__.mex /tmp/oct-PTTV85.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_dist_matrixy__.mex /tmp/oct-gCAExj.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_gpquadform_matrixx__.mex /tmp/oct-5DNkML.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __get_column_number__.mex /tmp/oct-VLI1DT.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_gpquadform_matrixy__.mex /tmp/oct-FCDCBU.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_paretofind_mex__.mex /tmp/oct-Qnmq1A.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_filldist_discr_mex__.mex /tmp/oct-4xoz9Y.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_sampling_vdc_rr2__.mex /tmp/oct-3Ys4QH.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_isdominated_mex__.mex /tmp/oct-PXxfZq.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I. -DMEX_DEBUG wfg.c -o /tmp/oct-1uuucL.o +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_distrib_bivnorm0_cdf__.mex /tmp/oct-HDYILn.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_sampling_sobol_mex__.mex /tmp/oct-AQ8iyd.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __stk_dominatedhv_mex__.mex /tmp/oct-MxfgKE.o /tmp/oct-1uuucL.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro make[1]: Leaving directory '/build/reproducible-path/octave-stk-2.8.1/src' copyfile /build/reproducible-path/octave-stk-2.8.1/./src/__get_column_number__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_dist_matrixx__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_dist_matrixy__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_dist_pairwise__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_distrib_bivnorm0_cdf__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_dominatedhv_mex__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_filldist_discr_mex__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_gpquadform_matrixx__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_gpquadform_matrixy__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_gpquadform_pairwise__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_isdominated_mex__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_mindist_mex__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_paretofind_mex__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_sampling_sobol_mex__.mex /build/reproducible-path/octave-stk-2.8.1/./src/__stk_sampling_vdc_rr2__.mex /build/reproducible-path/octave-stk-2.8.1/./inst/x86_64-pc-linux-gnu-api-v59 For information about changes from previous versions of the stk package, run 'news stk'. @@ -3124,1223 +3160,357 @@ Checking package... Run the unit tests... Checking m files ... -[inst/sampling/stk_sampling_nesteddesign.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_nesteddesign.m -***** shared x, n, dim, box, niter, levels - n = [23; 14; 5; 2]; dim = 2; box = [0, 0; 4, 4]; niter = 10; - levels = [10.1; 15.2; -9.3; 2.4; 17.5]; -***** error x = stk_sampling_nesteddesign (); -***** test x = stk_sampling_nesteddesign (n); -***** test x = stk_sampling_nesteddesign (n, dim); -***** test x = stk_sampling_nesteddesign (n, dim, box); -***** test x = stk_sampling_nesteddesign (n, dim, box, niter); -***** test x = stk_sampling_nesteddesign (n, dim, box, niter, levels); -***** assert ( isequal(size(x), [sum(n), dim + 1]) ); -***** assert ( isa(x, 'stk_dataframe') ); - cn = [0; cumsum(n)]; - for lev = 1:length(n), - y = x( (cn(lev) + 1):(cn(lev + 1)), 1:dim ); - assert (isequal (size (y), [n(lev) dim])); - if lev > 1 - assert ( isequal(z((end - n(lev) + 1):end, :), y) ); - end - if lev == length(n) - assert (stk_is_lhs (y, n(lev), dim, box)); - end - z = y; - end -***** assert (isequal (x.colnames{dim + 1}, 'Level')); - levels = stk_dataframe(levels, {'t'}); - box = stk_hrect(box, {'x1', 'x2', 'x3', 'x4'}); -***** test x = stk_sampling_nesteddesign (n, [], box, [], levels); -***** assert (isequal(x.colnames, {'x1', 'x2', 'x3', 'x4', 't'}) ); -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m -***** shared F, M, EI - M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); -warning: Something went wrong during the optimization -crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt -***** test F = stk_sampcrit_ei () % ending ";" omitted on purpose, to test disp - -F = -| -| model: -- (not instantiated) -| current_minimum: Inf -| - -***** assert (isempty (F.model)) -***** assert (isempty (get (F, 'model'))) -***** assert (F.current_minimum == +inf) -***** assert (get (F, 'current_minimum') == +inf) -***** error F.toto -***** error get (F, 'toto') -***** error F.current_min = 1.234; % read-only -***** error F = set (F, 'current_min', 1.234); % read-only -***** error F.toto = 1.234; % field does not exist -***** error F = set (F, 'toto', 1.234); % field does not exist -***** error EI = feval (F, 1.0); -***** test F = stk_sampcrit_ei (); F.model = M; - assert (~ isempty (F.model)); -***** test F = stk_sampcrit_ei (); F = set (F, 'model', M); - assert (~ isempty (F.model)); -***** test F.model = []; % remove model - assert (isempty (F.model)); - assert (F.current_minimum == +inf); -***** test F = stk_sampcrit_ei (M) % ending ";" omitted on purpose, to test disp - -F = -| -| model: -| current_minimum: 1.234 -| - -***** assert (isequal (F.model, M)) -***** assert (F.current_minimum == 1.234); -***** test EI = feval (F, [1.0; 1.1; 1.2]); -***** assert (isequal (size (EI), [3 1])) -***** assert (all (EI >= 0)) -***** shared F -***** test F = stk_sampcrit_ei (stk_model ()); -***** assert (F.current_minimum == +inf); -***** error feval (F, 1.0); -24 tests, 24 passed, 0 known failure, 0 skipped -[inst/sampling/stk_halfpintl.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_halfpintl.m -***** test % case #1 - a = 1; - b = 1; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (a_out == 1) - assert (b_out == 1) - assert (isempty (z_out)) -***** test % case #2: two lines, slopes not equal, already sorted - a = [1; -1]; - b = [0; 2]; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (isequal (a_out, [1; -1])) - assert (isequal (b_out, [0; 2])) - assert (z_out == 1) -***** test % case #3: same as #2, but not sorted - a = [-1; 1]; - b = [ 2; 0]; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (isequal (a_out, [1; -1])) - assert (isequal (b_out, [0; 2])) - assert (z_out == 1) -***** test % case #4: two lines, equal slopes, already sorted - a = [0; 0]; - b = [1; 2]; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (a_out == 0) - assert (b_out == 1) - assert (isempty (z_out)) -***** test % case #5: same as #4, but not sorted - a = [0; 0]; - b = [2; 1]; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (a_out == 0) - assert (b_out == 1) - assert (isempty (z_out)) -***** test % case #6: add a dominated line to #2 (the result does not change) - a = [1; -1; 0]; - b = [0; 2; 1]; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (isequal (a_out, [1; -1])) - assert (isequal (b_out, [0; 2])) - assert (z_out == 1) -***** test % case #7: permutation of #6 - a = [1; 0; -1]; - b = [0; 1; 2]; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (isequal (a_out, [1; -1])) - assert (isequal (b_out, [0; 2])) - assert (z_out == 1) -***** test % case #8: another permutation of #6 - a = [0; 1; -1]; - b = [1; 0; 2]; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (isequal (a_out, [1; -1])) - assert (isequal (b_out, [0; 2])) - assert (z_out == 1) -***** test % case #9: same as #8, with some duplicated lines added - a = [0; 1; 0; -1; 0; -1; 1]; - b = [1; 0; 1; 2; 1; 2; 0]; - [a_out, b_out, z_out] = stk_halfpintl (a, b); - assert (isequal (a_out, [1; -1])) - assert (isequal (b_out, [0; 2])) - assert (z_out == 1) -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_nestedlhs.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_nestedlhs.m -***** shared x, n, dim, box, niter, levels - n = [48; 12; 4; 2]; dim = 2; box = [0, 0; 4, 4]; niter = 10; - levels = [10.1; 15.2; -9.3; 2.4; 17.5]; -***** error x = stk_sampling_nestedlhs (); -***** test x = stk_sampling_nestedlhs (n); -***** test x = stk_sampling_nestedlhs (n, dim); -***** test x = stk_sampling_nestedlhs (n, dim, box); -***** test x = stk_sampling_nestedlhs (n, dim, box, niter); -***** test x = stk_sampling_nestedlhs (n, dim, box, niter, levels); -***** assert ( isequal(size(x), [sum(n), dim + 1]) ); -***** assert ( isa(x, 'stk_dataframe') ); - cn = [0; cumsum(n)]; - for lev = 1:length(n), - y = x( (cn(lev) + 1):(cn(lev + 1)), 1:dim ); - assert (isequal (size (y), [n(lev) dim])); - assert (stk_is_lhs (y, n(lev), dim, box)); - if lev > 1 - assert ( isequal(z((end - n(lev) + 1):end, :), y) ); - end - z = y; - end -***** assert (isequal (x.colnames{dim + 1}, 'Level')); - levels = stk_dataframe(levels, {'t'}); - box = stk_hrect(box, {'x1', 'x2', 'x3', 'x4'}); -***** test x = stk_sampling_nestedlhs (n, [], box, [], levels); -***** assert (isequal(x.colnames, {'x1', 'x2', 'x3', 'x4', 't'}) ); -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampcrit_ehvi_eval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampcrit_ehvi_eval.m -***** shared zr, zi - zr = [1 1]; - zi = [0.25 0.75; 0.5 0.5; 0.75 0.25]; -***** test % no improvement (1 computation) - zp_mean = [0.6 0.6]; zp_std = [0 0]; - EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); - assert (stk_isequal_tolabs (EHVI, 0, 1e-12)); -***** test % guaranteed improvement (1 computation) - zp_mean = [0 0]; zp_std = [0 0]; - EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); - assert (stk_isequal_tolabs (EHVI, 10 * 0.25 ^ 2)); -***** test % no improvement again (2 computations) - zp_mean = [0.5 0.5; 0.6 0.6]; zp_std = [0 0; 0 0]; - EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); - assert (stk_isequal_tolabs (EHVI, [0; 0], 1e-12)); -***** test % no observation -> EHVI wrt zr - zp_mean = [0.6 0.6]; zp_std = 0.01 * [1 1]; zi = []; - EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); - assert (stk_isequal_tolabs (EHVI, (1 - 0.6)^2, 1e-12)); -***** test % no observation below zr -> EHVI wrt zr - zp_mean = [0.6 0.6]; zp_std = 0.01 * [1 1]; zi = [2 2]; - EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); - assert (stk_isequal_tolabs (EHVI, (1 - 0.6)^2, 1e-12)); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/sampling/@stk_sampcrit_akg/stk_sampcrit_akg.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/@stk_sampcrit_akg/stk_sampcrit_akg.m -***** shared F, M, AKG - M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); -warning: Something went wrong during the optimization -crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt -***** test F = stk_sampcrit_akg () % ending ";" omitted on purpose, to test disp - -F = -| -| model: -- (not instantiated) -| reference_grid: -- (use current evaluation points) -| - -***** assert (isempty (F.model)) -***** assert (isempty (get (F, 'model'))) -***** assert (isempty (F.reference_grid)) -***** assert (isempty (get (F, 'reference_grid'))) -***** error F.toto -***** error get (F, 'toto') -***** error F.toto = 1.234; % field does not exist -***** error F = set (F, 'toto', 1.234); % field does not exist -***** error AKG = feval (F, 1.0); -***** test F = stk_sampcrit_akg (); F.model = M; - assert (isequal (F.model, M)); -***** test F = stk_sampcrit_akg (); F = set (F, 'model', M); - assert (isequal (F.model, M)); - assert (isequal (size (F.zr_mean), [3 1])) % n x 1 - assert (isequal (size (F.zr_std), [3 1])) % n x 1 - assert (isequal (size (F.zr_lambdamu), [4 3])) % (n+1) x n (constant mean) -***** test F.model = []; % remove model - assert (isempty (F.model)); - assert (isempty (F.zr_mean)) - assert (isempty (F.zr_std)) - assert (isempty (F.zr_lambdamu)) -***** test xr = [1 1.5 2 2.5 3]'; - F.reference_grid = xr % ending ";" omitted on purpose, to test disp - assert (isequal (F.reference_grid, xr)) - assert (isempty (F.zr_mean)) - assert (isempty (F.zr_std)) - assert (isempty (F.zr_lambdamu)) - -F = -| -| model: -- (not instantiated) -| reference_grid: <5x1 double array> -| - -***** test F.reference_grid = []; - assert (isempty (F.reference_grid)) -***** test F = stk_sampcrit_akg (); F.model = M; - assert (isequal (F.model, M)); - xr = [1 1.5 2 2.5 3]'; - F.reference_grid = xr % ending ";" omitted on purpose, to test disp - assert (isequal (F.reference_grid, xr)) - assert (isequal (size (F.zr_mean), [5 1])) % nr x 1 - assert (isequal (size (F.zr_std), [5 1])) % nr x 1 - assert (isequal (size (F.zr_lambdamu), [4 5])) % (n+1) x nr (constant mean) - -F = -| -| model: -| reference_grid: <5x1 double array> -| - -***** test F.reference_grid = []; - assert (isempty (F.reference_grid)) -***** test F = stk_sampcrit_akg (M) % ending ";" omitted on purpose, to test disp - -F = -| -| model: -| reference_grid: -- (use current evaluation points) -| - -***** assert (isequal (F.model, M)) -***** test AKG = feval (F, [1.0; 1.1; 1.2]); -***** assert (isequal (size (AKG), [3 1])) -***** assert (all (AKG >= 0)) -***** test [AKG2, zp] = feval (F, [1.0; 1.1; 1.2]); - assert (isequal (AKG2, AKG)); - assert (isa (zp, 'stk_dataframe') && isequal (size (zp), [3 2])) -***** shared F, xr - xr = [1 1.5 2 2.5 3]'; -***** test F = stk_sampcrit_akg (stk_model ()); -***** assert (isempty (F.reference_grid)) -***** test F.reference_grid = xr; -***** assert (isequal (F.reference_grid, xr)) -***** assert (isempty (F.zr_mean)) -***** assert (isempty (F.zr_std)) -***** assert (isempty (F.zr_lambdamu)) -***** error AKG = feval (F, 1.0); -***** shared F, M, xr - xr = [1 1.5 2 2.5 3]'; - M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); -warning: Something went wrong during the optimization -crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt -***** test F = stk_sampcrit_akg (M, xr); -***** assert (isequal (F.model, M)) -***** assert (isequal (F.reference_grid, xr)) -***** assert (isequal (size (F.zr_mean), [5 1])) % nr x 1 -***** assert (isequal (size (F.zr_std), [5 1])) % nr x 1 -***** assert (isequal (size (F.zr_lambdamu), [4 5])) % (n+1) x nr (constant mean) -37 tests, 37 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampcrit_akg_eval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampcrit_akg_eval.m -***** shared zc_mean, zc_std, zr_mean, zr_std, zcr_cov, AKG, nc - xi = [0; 0.2; 0.7; 0.9]; - zi = [1; 0.9; 0.6; 0.1] - 10; - ni = 4; - - M_prior = stk_model (@stk_materncov32_iso); - M_prior.param = log ([1.0; 2.1]); - M_prior.lognoisevariance = 0.678; - - nc = 20; - xc = stk_sampling_regulargrid (nc, 1, [0; 1]); - [zp, ~, ~, K] = stk_predict (M_prior, xi, zi, [xi; xc]); - - ir = 1:ni; ic = ni + (1:nc); - - zc_mean = zp.mean(ic); - zc_std = sqrt (zp.var(ic)); - - % reference grid: current evaluation points ("KGCP") - zr_mean = zp.mean(ir); - zr_std = sqrt (zp.var(ir)); - - zcr_cov = K(ic, ir); -***** test AKG = stk_sampcrit_akg_eval (zc_mean, zc_std, zr_mean, zr_std, zcr_cov); -***** assert (isequal (size (AKG), [nc 1])) -***** assert (all (AKG >= 0)) -***** error AKG = stk_sampcrit_akg_eval (zc_mean, zc_std, zr_mean, zr_std); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_maximinlhs.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_maximinlhs.m -***** shared x, n, dim, box, niter - n = 20; dim = 2; box = [0, 0; 1, 1]; niter = 1; -***** error x = stk_sampling_maximinlhs (); -***** test x = stk_sampling_maximinlhs (n); -***** test x = stk_sampling_maximinlhs (n, dim); -***** test x = stk_sampling_maximinlhs (n, dim, box); -***** test x = stk_sampling_maximinlhs (n, dim, box, niter); -***** assert (isa (x, 'stk_dataframe')); -***** assert (isequal (x.colnames, {})); -***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_maximinlhs (n, dim, box); - assert (isequal (x.colnames, cn)); -***** test - for dim = 1:5, - x = stk_sampling_randomlhs (n, dim); - assert (isequal (size (x), [n dim])); - u = double (x); u = u(:); - assert (~ any (isnan (u) | isinf (u))); - assert ((min (u) >= 0) && (max (u) <= 1)); - assert (stk_is_lhs (x, n, dim)); - end -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_olhs.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_olhs.m -***** shared x, n, d, box, permut - n = 5; d = 2; box = [0 0; 1, 1]; permut = 1:2; -***** error x = stk_sampling_olhs(); -***** test x = stk_sampling_olhs(n); -***** test x = stk_sampling_olhs(n, d); -***** test x = stk_sampling_olhs(n, d, box); -***** test x = stk_sampling_olhs(n, d, box, permut); -***** error x = stk_sampling_olhs(n, d, box, permut, pi); -***** assert (isa (x, 'stk_dataframe')); -***** assert (isequal (x.colnames, {})); +[inst/utils/stk_generate_samplepaths.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/utils/stk_generate_samplepaths.m +***** shared model, xi, zi, xt, n, nb_paths + dim = 1; n = 50; nb_paths = 5; + model = stk_model (@stk_materncov32_iso, dim); + model.param = log ([1.0; 2.9]); + xt = stk_sampling_regulargrid (n, dim, [-1.0; 1.0]); + xi = [xt(1, :); xt(end, :)]; zi = [0; 0]; +***** error zsim = stk_generate_samplepaths (); +***** error zsim = stk_generate_samplepaths (model); +***** test zsim = stk_generate_samplepaths (model, xt); +***** test zsim = stk_generate_samplepaths (model, xt, nb_paths); +***** test zsim = stk_generate_samplepaths (model, xi, zi, xt); +***** test zsim = stk_generate_samplepaths (model, xi, zi, xt, nb_paths); ***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_olhs (n, d, box); - assert (isequal (x.colnames, cn)); + zsim = stk_generate_samplepaths (model, xt); + assert (isequal (size (zsim), [n, 1])); ***** test - for r = 1:5 - - n = 2 ^ (r + 1) + 1; d = 2 * r; - x = stk_sampling_olhs (n, d); - - assert (isequal (size (x), [n d])); - - box = repmat ([-1; 1], 1, d); - assert (stk_is_lhs (x, n, d, box)); - - x = double (x); w = x' * x; - assert (stk_isequal_tolabs (w / w(1,1), eye (d))); - - end + zsim = stk_generate_samplepaths (model, xt, nb_paths); + assert (isequal (size (zsim), [n, nb_paths])); +***** test % duplicate simulation points + zsim = stk_generate_samplepaths (model, [xt; xt], nb_paths); + assert (isequal (size (zsim), [2 * n, nb_paths])); + assert (isequal (zsim(1:n, :), zsim((n + 1):end, :))); +***** test % simulation points equal to observation points (noiseless model) + % https://sourceforge.net/p/kriging/tickets/14/ + zsim = stk_generate_samplepaths (model, xt, zeros (n, 1), xt); + assert (isequal (zsim, zeros (n, 1))); 10 tests, 10 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_randomlhs.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_randomlhs.m -***** shared x, n, dim, box - n = 10; dim = 2; box = [0, 0; 1, 1]; -***** error x = stk_sampling_randomlhs (); -***** test x = stk_sampling_randomlhs (n); -***** test x = stk_sampling_randomlhs (n, dim); -***** test x = stk_sampling_randomlhs (n, dim, box); -***** assert (isa(x, 'stk_dataframe')); -***** assert (isequal (x.colnames, {})); -***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_randomlhs (n, dim, box); - assert (isequal (x.colnames, cn)); -***** test - for dim = 1:5, - x = stk_sampling_randomlhs(n, dim); - assert(isequal(size(x), [n dim])); - u = double(x); u = u(:); - assert(~any(isnan(u) | isinf(u))); - assert((min(u) >= 0) && (max(u) <= 1)); - assert(stk_is_lhs(x, n, dim)); - end -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_regulargrid.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_regulargrid.m -***** shared x, n, dim, box - n = 9; dim = 2; box = [0, 0; 1, 1]; -***** error x = stk_sampling_regulargrid (); -***** test x = stk_sampling_regulargrid (n); -***** test x = stk_sampling_regulargrid (n, dim); -***** test x = stk_sampling_regulargrid (n, dim, box); -***** assert (isa (x, 'stk_dataframe')); -***** assert (isa (x, 'stk_factorialdesign')); -***** assert (isequal (x.colnames, {})); +[inst/utils/stk_conditioning.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/utils/stk_conditioning.m +***** shared n, m, ni, xi_ind, lambda, zsim, zi + + n = 50; m = 5; ni = 10; xi_ind = 1:ni; + lambda = 1/ni * ones (ni, n); % prediction == averaging + zsim = ones (n, m); % const unconditioned samplepaths + zi = zeros (ni, 1); % conditioning by zeros +***** error zsimc = stk_conditioning (); +***** error zsimc = stk_conditioning (lambda); +***** error zsimc = stk_conditioning (lambda, zi); +***** test zsimc = stk_conditioning (lambda, zi, zsim); +***** test zsimc = stk_conditioning (lambda, zi, zsim, xi_ind); ***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_regulargrid (n, dim, box); - assert (isequal (x.colnames, cn)); + zsimc = stk_conditioning (lambda, zi, zsim, xi_ind); + assert (stk_isequal_tolabs (double (zsimc), zeros (n, m))); ***** test - for dim = 1:3, - n = 3^dim; - x = stk_sampling_regulargrid(n, dim); - assert(isequal(size(x), [n dim])); - u = double(x); u = u(:); - assert(~any(isnan(u) | isinf(u))); - assert((min(u) >= 0) && (max(u) <= 1)); - end + zi = 2 * ones (ni, 1); % conditioning by twos + zsimc = stk_conditioning (lambda, zi, zsim, xi_ind); + assert (stk_isequal_tolabs (double (zsimc), 2 * ones (n, m))); ***** test - nn = [3 4 5]; - for dim = 1:3, - x = stk_sampling_regulargrid(nn(1:dim), dim); - assert(isequal(size(x), [prod(nn(1:dim)) dim])); - u = double(x); u = u(:); - assert(~any(isnan(u) | isinf(u))); - assert((min(u) >= 0) && (max(u) <= 1)); - end -10 tests, 10 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampcrit_ei_eval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampcrit_ei_eval.m -***** error EI = stk_sampcrit_ei_eval () % not enough args -***** error EI = stk_sampcrit_ei_eval (0) % not enough args -***** shared xi, zi, M_prior, xt, zp, EIref, EI1, EI2, EI3 - xi = [0; 0.2; 0.7; 0.9]; - zi = [1; 0.9; 0.6; 0.1]; - M_prior = stk_model (@stk_materncov32_iso); - M_prior.param = log ([1.0; 2.1]); - xt = stk_sampling_regulargrid (20, 1, [0; 1]); - zp = stk_predict (M_prior, xi, zi, xt); - EIref = stk_distrib_normal_ei (min (zi), zp.mean, sqrt (zp.var), true); -***** test % Current syntax (STK 2.4.1 and later) - EI1 = stk_sampcrit_ei_eval (zp.mean, sqrt (zp.var), min (zi)); -***** assert (isequal (EI1, EIref)) -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m -***** shared F, M, EQI - M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); -warning: Something went wrong during the optimization -crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt -***** test F = stk_sampcrit_eqi () % ending ";" omitted on purpose, to test disp - -F = -| -| model: -- (not instantiated) -| quantile_order: 0.5 -| point_batch_size: 1 -| current_minimum: Inf -| - -***** assert (isempty (F.model)) -***** assert (isempty (get (F, 'model'))) -***** assert (F.quantile_order == 0.5) -***** assert (get (F, 'quantile_order') == 0.5) -***** assert (F.current_minimum == +inf) -***** assert (get (F, 'current_minimum') == +inf) -***** error F.toto -***** error get (F, 'toto') -***** error F.current_min = 1.234; % read-only -***** error F = set (F, 'current_min', 1.234); % read-only -***** error F.toto = 1.234; % field does not exist -***** error F = set (F, 'toto', 1.234); % field does not exist -***** test F.quantile_order = 0.9; assert (F.quantile_order == 0.9) -***** test F = set (F, 'quantile_order', 0.8); assert (F.quantile_order == 0.8) -***** error F.quantile_order = 1.1; -***** error F.quantile_order = -0.1; -***** error F.quantile_order = [1 2]; -***** error F.current_minimum = 3.333; % read-only -***** error F.quantile_value = 2.222; % read-only -***** error EQI = feval (F, 1.0); -***** test F = stk_sampcrit_eqi (); F.model = M; - assert (~ isempty (F.model)); -***** test F = stk_sampcrit_eqi (); F = set (F, 'model', M); - assert (~ isempty (F.model)); -***** test F.model = []; % remove model - assert (isempty (F.model)); - assert (F.current_minimum == +inf); -***** test F = stk_sampcrit_eqi (M) % ending ";" omitted on purpose, to test disp - -F = -| -| model: -| quantile_order: 0.5 -| point_batch_size: 1 -| current_minimum: 1.234 -| + DIM = 1; nt = 400; + xt = stk_sampling_regulargrid (nt, DIM, [-1.0; 1.0]); -***** assert (isequal (F.model, M)) -***** assert (stk_isequal_tolrel (F.current_minimum, 1.234, 10 * eps)); -***** test EQI = feval (F, [1.0; 1.1; 1.2]); -***** assert (isequal (size (EQI), [3 1])) -***** assert (all (EQI >= 0)) -***** test F.quantile_order = 0.9; assert (F.quantile_order == 0.9) -***** shared F, M, EQI - prior_model = stk_model (); - prior_model.lognoisevariance = 0.678; - M = stk_model_gpposterior (prior_model, [1 2 3]', [1.234 3 2]'); -***** test F = stk_sampcrit_eqi (M); -***** assert (isequal (F.model, M)) -***** assert (stk_isequal_tolrel (F.current_minimum, 2.077997, 1e-5)); -***** test EQI = feval (F, [1.0; 1.1; 1.2]); -***** assert (isequal (size (EQI), [3 1])) -***** assert (all (EQI >= 0)) -***** test F.quantile_order = 0.9; assert (F.quantile_order == 0.9) -***** shared F -***** test F = stk_sampcrit_eqi (stk_model ()); -***** assert (F.current_minimum == +inf); -***** error feval (F, 1.0); -***** shared F, M - M = stk_model_gpposterior (stk_model (), [1 2 3]', [1.234 3 2]'); -warning: Something went wrong during the optimization -crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt -***** error F = stk_sampcrit_eqi (M, [], 0); -***** error F = stk_sampcrit_eqi (M, [], 1.5); -***** error F = stk_sampcrit_eqi (M, [], nan); -***** error F = stk_sampcrit_eqi (M, [], [10 20]); -***** test F = stk_sampcrit_eqi (M, [], 10); -***** assert (isequal (F.quantile_order, 0.5)); -***** assert (isequal (F.point_batch_size, 10)); -***** error F = stk_sampcrit_eqi (M, 0.8, 0); -***** error F = stk_sampcrit_eqi (M, 0.8, 1.5); -***** error F = stk_sampcrit_eqi (M, 0.8, nan); -***** error F = stk_sampcrit_eqi (M, 0.8, [10 20]); -***** test F = stk_sampcrit_eqi (M, 0.8, 5); -***** assert (isequal (F.quantile_order, 0.8)); -***** assert (isequal (F.point_batch_size, 5)); -***** shared F, M, EQI - prior_model = stk_model (); - prior_model.lognoisevariance = 0.678; - M = stk_model_gpposterior (prior_model, [1 2 3]', [1.234 3 2]'); - F = stk_sampcrit_eqi (M); -***** test F.point_batch_size = 10; % numeric -***** assert (isequal (F.point_batch_size, 10)) -***** test EQI = feval (F, [1.0; 1.1; 1.2]); -***** test F.point_batch_size = @(x, n) 100 - n; % function handle -***** assert (isa (F.point_batch_size, 'function_handle')) -***** test EQI = feval (F, [1.0; 1.1; 1.2]); -***** test F.point_batch_size = 'sin'; % char -***** assert (isa (F.point_batch_size, 'function_handle')) -63 tests, 63 passed, 0 known failure, 0 skipped -[inst/sampling/@stk_function/stk_function.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/@stk_function/stk_function.m -***** shared F -***** test F = stk_function () % ending ";" omitted on purpose, to test disp + NI = 6; xi_ind = [1 20 90 200 300 350]; + xi = xt(xi_ind, 1); + zi = (1:NI)'; % linear response ;-) -F = + % Carry out the kriging prediction at points xt + model = stk_model (@stk_materncov52_iso); + model.param = log ([1.0; 2.9]); + [ignore_zp, lambda] = stk_predict (model, xi, [], xt); -***** error [F F]; % arrays of sampling criterion objects are not supported -***** error [F; F]; % idem -***** error get (F, 'toto'); % field does not exist -***** error y = feval (F, 1.0); % not implemented for "pure" function objects -***** error dummy = F{2}; % illegal indexing -***** error dummy = F(1.0); % feval not implemented -***** error dummy = F.toto; % field does not exist -***** error F{2} = 1.234; % illegal indexing -***** error F(5) = 1.234; % illegal indexing -***** error F.toto = 1.234; % field does not exist -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_randunif.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_randunif.m -***** shared x, n, dim, box - n = 10; dim = 2; box = [0, 0; 2, 2]; -***** error x = stk_sampling_randunif (); -***** test x = stk_sampling_randunif (n); -***** test x = stk_sampling_randunif (n, dim); -***** test x = stk_sampling_randunif (n, dim, box); -***** assert (isa(x, 'stk_dataframe')); -***** assert (isequal (x.colnames, {})); -***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_randunif (n, dim, box); - assert (isequal (x.colnames, cn)); -***** test - for dim = 1:5, - x = stk_sampling_randunif(n, dim); - assert(isequal(size(x), [n dim])); - u = double(x); u = u(:); - assert(~any(isnan(u) | isinf(u))); - assert((min(u) >= 0) && (max(u) <= 1)); - end + % Generate (unconditional) sample paths according to the model + NB_PATHS = 10; + zsim = stk_generate_samplepaths (model, xt, NB_PATHS); + zsimc = stk_conditioning (lambda, zi, zsim, xi_ind); 8 tests, 8 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_halton_rr2.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_halton_rr2.m -***** error stk_sampling_halton_rr2 () % nargin < 1 +[inst/lm/stk_lm_polynomial.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/stk_lm_polynomial.m +***** error lm = stk_lm_polynomial (); ***** test - n = 300; d = 25; - x = stk_sampling_halton_rr2 (n, d); - assert (isequal (size (x), [n d])) + lm = stk_lm_polynomial (-1); + assert (isa (lm, 'stk_lm_null')); ***** test - x = stk_sampling_halton_rr2 (1000, 3); - y = double (x(end, :)); - yref = [0.9052734375 0.028349336991312 0.74848]; - assert (stk_isequal_tolrel (y, yref, 1e-13)); + lm = stk_lm_polynomial (0); + assert (isa (lm, 'stk_lm_constant')); ***** test - dim = 2; box = stk_hrect (dim); - x = stk_sampling_halton_rr2 (5, dim, box); - assert (isequal (x.colnames, {})); + lm = stk_lm_polynomial (1); + assert (isa (lm, 'stk_lm_affine')); ***** test - dim = 2; cn = {'W', 'H'}; box = stk_hrect (dim, cn); - x = stk_sampling_halton_rr2 (5, dim, box); - assert (isequal (x.colnames, cn)); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_vdc_rr2.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_vdc_rr2.m -***** error __stk_sampling_vdc_rr2__() % two inputs required -***** error __stk_sampling_vdc_rr2__(10) % two inputs required -***** error __stk_sampling_vdc_rr2__(10, 3, -1) % two inputs required -***** test - n = 300; j = 25; - x = __stk_sampling_vdc_rr2__(n, j); - assert(isequal(size(x), [n 1])) + lm = stk_lm_polynomial (2); + assert (isa (lm, 'stk_lm_quadratic')); ***** test - x = __stk_sampling_vdc_rr2__(2000, 7); - y = double (x(1998:2000, :)); - yref = [0.849786281294525; 0.085080398941584; 0.555668634235701]; - assert(stk_isequal_tolrel(y, yref, 1e-13)); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/core/stk_make_matcov.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_make_matcov.m -***** shared model, model2, x0, x1, n0, n1, d, Ka, Kb, Kc, Pa, Pb, Pc - n0 = 20; n1 = 10; d = 4; - model = stk_model (@stk_materncov52_aniso, d); - model.lm = stk_lm_affine; - model.param = log ([1.0; 2.1; 2.2; 2.3; 2.4]); - model2 = model; model2.lognoisevariance = log(0.01); - x0 = stk_sampling_randunif (n0, d); - x1 = stk_sampling_randunif (n1, d); -***** error [KK, PP] = stk_make_matcov (); -***** error [KK, PP] = stk_make_matcov (model); -***** test [Ka, Pa] = stk_make_matcov (model, x0); % (1) -***** test [Kb, Pb] = stk_make_matcov (model, x0, x0); % (2) -***** test [Kc, Pc] = stk_make_matcov (model, x0, x1); % (3) -***** error [KK, PP] = stk_make_matcov (model, x0, x1, pi); -***** assert (isequal (size (Ka), [n0 n0])); -***** assert (isequal (size (Kb), [n0 n0])); -***** assert (isequal (size (Kc), [n0 n1])); -***** assert (isequal (size (Pa), [n0 d + 1])); -***** assert (isequal (size (Pb), [n0 d + 1])); -***** assert (isequal (size (Pc), [n0 d + 1])); -***** assert (isequal (Kb, Ka)); -***** test [Ka, Pa] = stk_make_matcov (model2, x0); % (1') -***** test [Kb, Pb] = stk_make_matcov (model2, x0, x0); % (2') -***** error assert (isequal (Kb, Ka)); -***** assert (isequal (Pa, Pb)); -***** assert (isequal (Pa, Pc)); -18 tests, 18 passed, 0 known failure, 0 skipped -[inst/core/@stk_kreq_qr/stk_kreq_qr.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/@stk_kreq_qr/stk_kreq_qr.m -***** test stk_test_class ('stk_kreq_qr') + lm = stk_lm_polynomial (3); + assert (isa (lm, 'stk_lm_cubic')); +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_matrix/stk_lm_matrix.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_matrix/stk_lm_matrix.m +***** test stk_test_class ('stk_lm_matrix') +***** test %%% dim 1 + data = rand (10, 1); idx = 3:7; + lm = stk_lm_matrix (data); + assert (isa (lm, 'stk_lm_matrix')); + assert (isequal (data(idx, :), feval (lm, idx))); +***** test %%% dim 3 + data = rand (10, 3); idx = 3:7; + lm = stk_lm_matrix (data); + assert (isa (lm, 'stk_lm_matrix')); + assert (isequal (data(idx, :), feval (lm, idx))); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_quadratic/stk_lm_quadratic.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_quadratic/stk_lm_quadratic.m +***** test stk_test_class ('stk_lm_quadratic') 1 test, 1 passed, 0 known failure, 0 skipped -[inst/core/stk_predict.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_predict.m -***** shared n, m, model, x0, x_obs, z_obs, x_prd, y_prd1, idx_obs, idx_prd - - n = 10; % number of observations - m = n + 1; % number of predictions - d = 1; % dimension of the input space - - x0 = stk_sampling_regulargrid(n+m, d, [0; pi]); - - idx_obs = (2:2:(n+m-1))'; - idx_prd = (1:2:(n+m))'; - - x_obs = x0(idx_obs); - z_obs = sin (double (x_obs)); - x_prd = x0(idx_prd); - - model = stk_model (@stk_materncov32_iso); - model.param = log ([1.0; 2.1]); -***** error y_prd1 = stk_predict (); -***** error y_prd1 = stk_predict (model); -***** test y_prd1 = stk_predict (model, x_prd); -***** error y_prd1 = stk_predict (model, data, x_prd); -***** test y_prd1 = stk_predict (model, x_obs, z_obs, x_prd); -***** error y_prd1 = stk_predict (model, [x_obs; x_obs], [z_obs; z_obs], x_prd); -***** test % nargout = 2 - [y_prd1, lambda] = stk_predict (model, x_obs, z_obs, x_prd); - assert (isequal (size (lambda), [n m])); -***** test % nargout = 2, compute only variances - [y_prd1, lambda] = stk_predict (model, x_obs, [], x_prd); - assert (isequal (size (lambda), [n m])); - assert (all (isnan (y_prd1.mean))); -***** test % nargout = 3 - [y_prd1, lambda, mu] = stk_predict (model, x_obs, z_obs, x_prd); - assert (isequal (size (lambda), [n m])); - assert (isequal (size (mu), [1 m])); % ordinary kriging -***** test % nargout = 4 - [y_prd1, lambda, mu, K] = stk_predict (model, x_obs, z_obs, x_prd); - assert (isequal (size (lambda), [n m])); - assert (isequal (size (mu), [1 m])); % ordinary kriging - assert (isequal (size (K), [m m])); -***** test % predict on large set of locations - x_prd = stk_sampling_regulargrid (1e5, 1, [0; pi]); - y_prd = stk_predict (model, x_obs, z_obs, x_prd); -***** test % predict on an observation point - % https://sourceforge.net/p/kriging/tickets/49/ - [zp, lambda] = stk_predict (model, x_obs, z_obs, x_obs(4)); - assert (isequal (z_obs(4), zp.mean)) - assert (isequal (zp.var, 0)) - lambda_ref = zeros (n, 1); lambda_ref(4) = 1; - assert (isequal (lambda, lambda_ref)) -12 tests, 12 passed, 0 known failure, 0 skipped -[inst/core/stk_cholcov.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_cholcov.m -***** shared Q, K, L, U, epsi - Q = 0.25 * hadamard(4); -***** test - K = Q * diag ([1, 0.1, 0.01, 1e-7]) * Q'; - [U, epsi] = stk_cholcov (K); -***** assert (istriu (U)) -***** assert (epsi == 0) -***** test - K = Q * diag ([1, 0.1, 0.01, 1e-7]) * Q'; - [L, epsi] = stk_cholcov (K, 'lower'); -***** assert (istril (L)) -***** assert (epsi == 0) -***** test - K = Q * diag ([1, 0.1, 0.01, -1e-7]) * Q'; - [U, epsi] = stk_cholcov (K); -***** assert (istriu (U)) -***** assert (epsi > 0) -***** test - K = Q * diag ([1, 0.1, 0.01, -1e-7]) * Q'; - [L, epsi] = stk_cholcov (K, 'lower'); -***** assert (istril (L)) -***** assert (epsi > 0) -12 tests, 12 passed, 0 known failure, 0 skipped -[inst/core/stk_model_update.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_model_update.m +[inst/lm/@stk_lm_quadratic/feval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_quadratic/feval.m ***** test - x1 = (linspace (0, 1, 15))'; z1 = sin (x1); - x2 = (linspace (2, 3, 15))'; z2 = sin (x2); - xt = (linspace (1, 2, 15))'; zt = sin (xt); - - % Prior model - M0 = stk_model (@stk_materncov32_iso); - M0.param = log ([1.0; 2.1]); - - M1 = stk_model_update (M0, x1, z1); - M1 = stk_model_update (M1, x2, z2); % this calls @stk_model_gpposterior/... - zp1 = stk_predict (M1, xt); - - M2 = stk_model_gpposterior (M0, [x1; x2], [z1; z2]); - zp2 = stk_predict (M2, xt); - - assert (stk_isequal_tolabs (double (zp2 - zp1), zeros (15, 2), 1e-10)) + n = 15; d = 4; + x = stk_sampling_randunif (n, d); + P = feval (stk_lm_quadratic (), x); + assert (isequal (size (P), [n, 1 + d * (d + 3) / 2])); 1 test, 1 passed, 0 known failure, 0 skipped -[inst/core/stk_predict_leaveoneout.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_predict_leaveoneout.m -***** shared n, x_obs, z_obs, model - n = 20; - x_obs = stk_sampling_regulargrid (n, 1, [0; 2*pi]); - z_obs = stk_feval (@sin, x_obs); - model = stk_model (@stk_materncov32_iso); - model.param = log ([1; 5]); -***** test % one output - - loo_pred = stk_predict_leaveoneout (model, x_obs, z_obs); - - assert (isequal (size (loo_pred), [n 2])); - assert (isequal (loo_pred.colnames, {'mean', 'var'})); - assert (all (isfinite (loo_pred(:)))); -***** test % two outputs - - [loo_pred, loo_res] = stk_predict_leaveoneout (model, x_obs, z_obs); - - assert (isequal (size (loo_pred), [n 2])); - assert (isequal (loo_pred.colnames, {'mean', 'var'})); - assert (all (isfinite (loo_pred(:)))); - - assert (isequal (size (loo_res), [n 2])); - assert (isequal (loo_res.colnames, {'residuals', 'norm_res'})); - assert (all (isfinite (loo_res(:)))); -***** test % heteroscedastic noise case - - model.lognoisevariance = (1 + rand (n, 1)) * 1e-6; - [loo_pred, loo_res] = stk_predict_leaveoneout (model, x_obs, z_obs); - - assert (isequal (size (loo_pred), [n 2])); - assert (isequal (loo_pred.colnames, {'mean', 'var'})); - assert (all (isfinite (loo_pred(:)))); - - assert (isequal (size (loo_res), [n 2])); - assert (isequal (loo_res.colnames, {'residuals', 'norm_res'})); - assert (all (isfinite (loo_res(:)))); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_gls.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_gls.m -***** shared xi, zi, model, beta, sigma2 - xi = (1:10)'; zi = sin (xi); - model = stk_model (@stk_materncov52_iso); - model.param = [0.0 0.0]; -***** test - model.lm = stk_lm_constant (); - [beta, sigma2] = stk_param_gls (model, xi, zi); -***** assert (stk_isequal_tolabs (beta, 0.1346064, 1e-6)) -***** assert (stk_isequal_tolabs (sigma2, 0.4295288, 1e-6)) -***** test - model.lm = stk_lm_affine (); - [beta, sigma2] = stk_param_gls (model, xi, zi); -***** assert (stk_isequal_tolabs (beta, [0.4728342; -0.0614960], 1e-6)) -***** assert (stk_isequal_tolabs (sigma2, 0.4559431, 1e-6)) -***** test - model.lm = stk_lm_null (); - [beta, sigma2] = stk_param_gls (model, xi, zi); -***** assert (isequal (beta, zeros (0, 1))) -***** assert (stk_isequal_tolabs (sigma2, 0.3977993, 1e-6)) -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_relik.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_relik.m -***** shared f, xi, zi, NI, model, C, dC1, dC2 - - f = @(x)(- (0.8 * x(:, 1) + sin (5 * x(:, 2) + 1) ... - + 0.1 * sin (10 * x(:, 3)))); - DIM = 3; NI = 20; box = repmat ([-1.0; 1.0], 1, DIM); - xi = stk_sampling_halton_rr2 (NI, DIM, box); - zi = stk_feval (f, xi); - - SIGMA2 = 1.0; % variance parameter - NU = 4.0; % regularity parameter - RHO1 = 0.4; % scale (range) parameter - - model = stk_model (@stk_materncov_aniso); - model.param = log ([SIGMA2; NU; 1/RHO1 * ones(DIM, 1)]); -***** error [C, dC1, dC2] = stk_param_relik (); -***** error [C, dC1, dC2] = stk_param_relik (model); -***** error [C, dC1, dC2] = stk_param_relik (model, xi); -***** test [C, dC1, dC2] = stk_param_relik (model, xi, zi); -***** test - TOL_REL = 0.01; - assert (stk_isequal_tolrel (C, 21.6, TOL_REL)); - assert (stk_isequal_tolrel (dC1, [4.387 -0.1803 0.7917 0.1392 2.580]', TOL_REL)); - assert (isequal (dC2, [])); -***** shared xi, zi, model, TOL_REL - xi = [-1 -.6 -.2 .2 .6 1]'; - zi = [-0.11 1.30 0.23 -1.14 0.36 -0.37]'; - model = stk_model (@stk_materncov_iso); - model.param = log ([1.0 4.0 2.5]); - model.lognoisevariance = log (0.01); - TOL_REL = 0.01; -***** test % Another simple 1D check - [C, dC1, dC2] = stk_param_relik (model, xi, zi); - assert (stk_isequal_tolrel (C, 6.327, TOL_REL)); - assert (stk_isequal_tolrel (dC1, [0.268 0.0149 -0.636]', TOL_REL)); - assert (stk_isequal_tolrel (dC2, -1.581e-04, TOL_REL)); -***** test % Same 1D test with simple kriging - model.lm = stk_lm_null; - [C, dC1, dC2] = stk_param_relik (model, xi, zi); - assert (stk_isequal_tolrel (C, 7.475, TOL_REL)); - assert (stk_isequal_tolrel (dC1, [0.765 0.0238 -1.019]', TOL_REL)); - assert (stk_isequal_tolrel (dC2, 3.0517e-03, TOL_REL)); -***** test % Check the gradient on a 2D test case - - f = @stk_testfun_braninhoo; - DIM = 2; - BOX = [[-5; 10], [0; 15]]; - NI = 20; - TOL_REL = 1e-2; - DELTA = 1e-6; - - model = stk_model (@stk_materncov52_iso, DIM); - model.param = [1 1]; - - xi = stk_sampling_halton_rr2 (NI, DIM, BOX); - zi = stk_feval (f, xi); - - for range = [0.3 2 10] - model.param(2) = - log (range); - for diff = 1:2 - assert (stk_test_critgrad ... - (@stk_param_relik, model, xi, zi, diff, 1e-6)); - end - end -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_init_lnv.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_init_lnv.m -***** test - f = @(x)(- (0.8 * x + sin (5 * x + 1) + 0.1 * sin (10 * x))); - ni = 20; - xi = (linspace (-1, 1, ni))' + 0.2 * (randn (ni, 1)); - zi = stk_feval (f, xi); - - model = stk_model (@stk_materncov_iso); - model.param = log ([1; 5/2; 1/0.4]); - model.lognoisevariance = nan; - lnv = stk_param_init_lnv (model, xi, zi); - - assert ((isscalar (lnv)) && (lnv > -30) && (lnv < 30)); +[inst/lm/@stk_lm_constant/stk_lm_constant.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_constant/stk_lm_constant.m +***** test stk_test_class ('stk_lm_constant') 1 test, 1 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_estim.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_estim.m -***** shared f, xi, zi, NI, param0, param1, model - - f = @(x)(- (0.8 * x + sin (5 * x + 1) + 0.1 * sin (10 * x)) ); - DIM = 1; NI = 20; box = [-1.0; 1.0]; - xi = stk_sampling_regulargrid (NI, DIM, box); - - SIGMA2 = 1.0; % variance parameter - NU = 4.0; % regularity parameter - RHO1 = 0.4; % scale (range) parameter - param0 = log ([SIGMA2; NU; 1/RHO1]); - - model = stk_model (@stk_materncov_iso); -***** test % noiseless - zi = stk_feval (f, xi); - param1 = stk_param_estim (model, xi, zi, param0); - assert (isequal (size (param1), size (param0))) -warning: sqp: QP subproblem is non-convex and unbounded -warning: called from - sqp at line 441 column 9 - stk_minimize_boxconstrained at line 57 column 18 - stk_param_estim_optim at line 70 column 23 - stk_param_estim at line 139 column 15 - __test__ at line 4 column 9 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 222 column 31 - -***** test % same thing, with empty lnv0 (ok) - param2 = stk_param_estim (model, xi, zi, param0, []); - assert (stk_isequal_tolrel (param2, param1, 1e-2)) -warning: sqp: QP subproblem is non-convex and unbounded -warning: called from - sqp at line 441 column 9 - stk_minimize_boxconstrained at line 57 column 18 - stk_param_estim_optim at line 70 column 23 - stk_param_estim at line 139 column 15 - __test__ at line 3 column 9 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 222 column 31 - -***** error % same thing, with lnv0 == NaN (not ok as a starting point) - param2 = stk_param_estim (model, xi, zi, param0, nan); -***** error % same thing, with lnv0 == -inf (not ok as a starting point) - param2 = stk_param_estim (model, xi, zi, param0, -inf); -***** test % same thing, with explicit value for 'criterion' - param2 = stk_param_estim (model, xi, zi, param0, [], @stk_param_relik); - assert (stk_isequal_tolrel (param1, param2, 1e-2)) -warning: sqp: QP subproblem is non-convex and unbounded -warning: called from - sqp at line 441 column 9 - stk_minimize_boxconstrained at line 57 column 18 - stk_param_estim_optim at line 70 column 23 - stk_param_estim at line 139 column 15 - __test__ at line 3 column 9 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 222 column 31 - -***** test % noiseless - zi = stk_feval (f, xi); - param1 = stk_param_estim (model, xi, zi, param0); - param2 = stk_param_estim (model, xi, zi, param0, [], @stk_param_relik); - % We cannot assume a DETERMINISTIC optimization algorithm - % (for some reason, Octave's sqp is not exactly deterministic) - assert (stk_isequal_tolrel (param1, param2, 1e-2)) -warning: sqp: QP subproblem is non-convex and unbounded -warning: called from - sqp at line 441 column 9 - stk_minimize_boxconstrained at line 57 column 18 - stk_param_estim_optim at line 70 column 23 - stk_param_estim at line 139 column 15 - __test__ at line 4 column 9 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 222 column 31 - -warning: sqp: QP subproblem is non-convex and unbounded -warning: called from - sqp at line 441 column 9 - stk_minimize_boxconstrained at line 57 column 18 - stk_param_estim_optim at line 70 column 23 - stk_param_estim at line 139 column 15 - __test__ at line 5 column 9 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 222 column 31 - -***** test % noisy - NOISE_STD_TRUE = 0.1; - NOISE_STD_INIT = 1e-5; - zi = zi + NOISE_STD_TRUE * randn(NI, 1); - model.lognoisevariance = 2 * log(NOISE_STD_INIT); - [param, lnv] = stk_param_estim ... - (model, xi, zi, param0, model.lognoisevariance); -***** error param = stk_param_estim () -***** error param = stk_param_estim (model); -***** error param = stk_param_estim (model, xi); -***** test % Constant response - model = stk_model (@stk_materncov52_iso); - n = 10; x = stk_sampling_regulargrid (n, 1, [0; 1]); z = ones (size (x)); - param = stk_param_estim (model, x, z); - assert ((all (isfinite (param))) && (length (param) == 2)); -warning: Constant-response data: the output of stk_param_estim is likely to be unreliable. -warning: called from - stk_param_estim at line 95 column 5 - __test__ at line 5 column 8 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 222 column 31 - -warning: Parameter estimation is impossible with constant-response data. -warning: called from - stk_param_init>paraminit_ at line 351 column 5 - stk_param_init>stk_param_init_ at line 323 column 14 - stk_param_init at line 87 column 18 - stk_param_estim>provide_starting_point at line 205 column 20 - stk_param_estim at line 110 column 30 - __test__ at line 5 column 8 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 222 column 31 - -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_init.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_init.m -***** test - xi = (1:10)'; zi = sin (xi); - model = stk_model (@stk_materncov52_iso); - model.param = stk_param_init (model, xi, zi, [1; 10], false); - xt = (1:9)' + 0.5; zt = sin (xt); - zp = stk_predict (model, xi, zi, xt); - assert (sum ((zt - zp.mean) .^ 2) < 1e-3); -***** test % check equivariance of parameter estimates - f = @(x) sin (x); - xi = stk_sampling_regulargrid (10, 1); zi = stk_feval (f, xi); - shift = 1000; scale = 0.01; - model = stk_model (@stk_materncov32_iso); - p1 = stk_param_init (model, xi, zi); - p2 = stk_param_init (model, xi, shift + scale .* zi); - assert (stk_isequal_tolabs (p2(1), p1(1) + log (scale^2), 1e-10)) - assert (stk_isequal_tolabs (p2(2), p1(2), eps)) -***** shared xi, zi, BOX, xt, zt - - f = @(x)(- (0.8 * x + sin (5 * x + 1) + 0.1 * sin (10 * x))); - DIM = 1; % Dimension of the factor space - BOX = [-1.0; 1.0]; % Factor space - - xi = stk_sampling_regulargrid (20, DIM, BOX); % Evaluation points - zi = stk_feval (f, xi); % Evaluation results - - NT = 400; % Number of points in the grid - xt = stk_sampling_regulargrid (NT, DIM, BOX); % Generate a regular grid - zt = stk_feval (f, xt); % Values of f on the grid -***** xtest % This test is known to fail in Debian buster i386 - % because of a known problem in Octave's sqp/qp functions - % http://savannah.gnu.org/bugs/?38875 - model = stk_model (@stk_materncov_iso); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) +[inst/lm/@stk_lm_constant/feval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_constant/feval.m ***** test - model = stk_model (@stk_materncov_aniso); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) -warning: sqp: QP subproblem is non-convex and unbounded -warning: called from - sqp at line 441 column 9 - stk_minimize_boxconstrained at line 57 column 18 - stk_param_estim_optim at line 70 column 23 - stk_param_estim at line 139 column 15 - __test__ at line 5 column 14 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 230 column 31 - + n = 15; d = 4; + x = stk_sampling_randunif (n, d); + P = feval (stk_lm_constant (), x); + assert (isequal (size (P), [n, 1])); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_null/stk_lm_null.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_null/stk_lm_null.m +***** test stk_test_class ('stk_lm_null') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_null/feval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_null/feval.m ***** test - model = stk_model (@stk_materncov32_iso); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + n = 15; d = 4; + x = stk_sampling_randunif (n, d); + P = feval (stk_lm_null (), x); + assert (isequal (size (P), [n, 0])); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_cubic/stk_lm_cubic.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_cubic/stk_lm_cubic.m +***** test stk_test_class ('stk_lm_cubic') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_cubic/feval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_cubic/feval.m ***** test - model = stk_model (@stk_materncov32_aniso); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + n = 15; d = 4; + x = stk_sampling_randunif (n, d); + P = feval (stk_lm_cubic (), x); + assert (isequal (size (P), [n, 1 + d * (11 + d * (6 + d)) / 6])) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_affine/stk_lm_affine.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_affine/stk_lm_affine.m +***** test stk_test_class ('stk_lm_affine') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_affine/feval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_affine/feval.m ***** test - model = stk_model (@stk_materncov52_iso); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + n = 15; d = 4; + x = stk_sampling_randunif (n, d); + P = feval (stk_lm_affine (), x); + assert (isequal (size (P), [n, d + 1])); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_noisecov.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_noisecov.m +***** shared ni, lognoisevariance, diff + ni = 5; + lognoisevariance = 0.0; + diff = -1; +***** error K = stk_noisecov (); +***** error K = stk_noisecov (ni); +***** test K = stk_noisecov (ni, lognoisevariance); +***** test K = stk_noisecov (ni, lognoisevariance, diff); +***** test K = stk_noisecov (ni, lognoisevariance, diff, true); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_gausscov_aniso.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_gausscov_aniso.m +***** shared param, x, y, K1, K2, K3 + dim = 1; + param = log ([1.0; 2.5]); + x = stk_sampling_randunif (5, dim); + y = stk_sampling_randunif (6, dim); +***** error K0 = stk_gausscov_aniso (); +***** error K0 = stk_gausscov_aniso (param); +***** error K0 = stk_gausscov_aniso (param, x); +***** test K1 = stk_gausscov_aniso (param, x, y); +***** test K2 = stk_gausscov_aniso (param, x, y, -1); +***** test K3 = stk_gausscov_aniso (param, x, y, -1, false); +***** assert (isequal (K1, K2)); +***** assert (isequal (K1, K3)); +***** test % df versus ordinary array + u = double (x); v = double (y); + K1 = stk_gausscov_aniso (param, u, v, -1); + K2 = stk_gausscov_aniso (param, stk_dataframe (u), stk_dataframe (v), -1); +***** error stk_gausscov_aniso (param, x, y, -2); +***** test stk_gausscov_aniso (param, x, y, -1); +***** error stk_gausscov_aniso (param, x, y, 0); +***** test stk_gausscov_aniso (param, x, y, 1); +***** test stk_gausscov_aniso (param, x, y, 2); +***** error stk_gausscov_aniso (param, x, y, 3); +***** error stk_gausscov_aniso (param, x, y, nan); +***** error stk_gausscov_aniso (param, x, y, inf); +***** shared dim, param, x, y, nx, ny + dim = 3; + param = log ([1.0; 2.5; 2.4; 2.6]); + nx = 4; ny = 10; + x = stk_sampling_randunif (nx, dim); + y = stk_sampling_randunif (ny, dim); ***** test - model = stk_model (@stk_materncov52_aniso); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + K1 = stk_gausscov_aniso (param, x, y); + K2 = stk_gausscov_aniso (param, x, y, -1); + assert (isequal (size (K1), [nx ny])); + assert (stk_isequal_tolabs (K1, K2)); ***** test - model = stk_model (@stk_gausscov_iso); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) -warning: matrix singular to machine precision, rcond = 1.21281e-17 -warning: called from - linsolve at line 113 column 7 - linsolve at line 42 column 3 - stk_set_righthandside at line 44 column 16 - stk_make_kreq at line 35 column 6 - stk_predict_ at line 112 column 10 - stk_predict at line 104 column 16 - __test__ at line 6 column 5 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 230 column 31 - + for i = 1:(dim + 1), + dK = stk_gausscov_aniso (param, x, y, i); + assert (isequal (size (dK), [nx ny])); + end ***** test - model = stk_model (@stk_gausscov_aniso); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) -warning: matrix singular to machine precision, rcond = 3.81374e-18 -warning: called from - linsolve at line 113 column 7 - linsolve at line 42 column 3 - stk_set_righthandside at line 44 column 16 - stk_make_kreq at line 35 column 6 - stk_predict_ at line 112 column 10 - stk_predict at line 104 column 16 - __test__ at line 6 column 5 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 230 column 31 - -***** test % Homoscedastic case / do_estim_lnv = true - model = stk_model (@stk_materncov32_iso); - [model.param, model.lognoisevariance] = ... - stk_param_init (model, xi, zi, BOX, true); - [model.param, model.lognoisevariance] = ... - stk_param_estim (model, xi, zi); - zp = stk_predict (model, xi, zi, xt); - assert (model.lognoisevariance > -inf); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) -warning: This way of setting do_estim_lnv is deprecated -warning: called from - stk_param_init>stk_param_init_ at line 250 column 5 - stk_param_init at line 87 column 18 - __test__ at line 4 column 40 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 230 column 31 - -***** error % Homoscedastic case / do_estim_lnv = false / model.lnv = nan - model = stk_model (@stk_materncov32_iso); - model.lognoisevariance = nan; % not compatible with do_estim_lnv == false - [model.param, model.lognoisevariance] = ... - stk_param_init (model, xi, zi, BOX, false); -***** test % Heteroscedastic case / known noise variance - model = stk_model (@stk_materncov32_iso); - lnv = log ((100 + rand (size (zi))) / 1e6); - model.lognoisevariance = lnv; % here we say that lnv is known - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (isequal (model.lognoisevariance, lnv)); % should be untouched - assert (max ((zp.mean - zt) .^ 2) < 1e-3) -***** shared model, x, z - model = stk_model (@stk_materncov52_iso); - n = 10; x = stk_sampling_regulargrid (n, 1, [0; 1]); z = ones (size (x)); -***** test % Constant response, noiseless model - [param, lnv] = stk_param_init (model, x, z); - assert ((all (isfinite (param))) && (length (param) == 2)); - assert (isequal (lnv, -inf)); -warning: Parameter estimation is impossible with constant-response data. -warning: called from - stk_param_init>paraminit_ at line 351 column 5 - stk_param_init>stk_param_init_ at line 323 column 14 - stk_param_init at line 87 column 18 - __test__ at line 3 column 15 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 230 column 31 + n = 7; + x = stk_sampling_randunif (n, dim); + y = stk_sampling_randunif (n, dim); -***** test % Constant response, noisy model - model.lognoisevariance = nan; - [param, lnv] = stk_param_init (model, x, z); - assert ((all (isfinite (param))) && (length (param) == 2)); - assert (isscalar (lnv) && isfinite (lnv)); -warning: Parameter estimation is impossible with constant-response data. -warning: called from - stk_param_init>paraminit_ at line 351 column 5 - stk_param_init>stk_param_init_ at line 323 column 14 - stk_param_init at line 87 column 18 - __test__ at line 4 column 15 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 230 column 31 + K1 = stk_gausscov_aniso (param, x, y); + K2 = stk_gausscov_aniso (param, x, y, -1, true); + assert (isequal (size (K1), [n n])); + assert (stk_isequal_tolabs (K2, diag (K1))); -15 tests, 15 passed, 0 known failure, 0 skipped + for i = 1:(dim + 1), + dK1 = stk_gausscov_aniso (param, x, y, i); + dK2 = stk_gausscov_aniso (param, x, y, i, true); + assert (isequal (size (dK1), [n n])); + assert (stk_isequal_tolabs (dK2, diag (dK1))); + end +20 tests, 20 passed, 0 known failure, 0 skipped +[inst/covfcs/rbf/stk_rbf_matern52.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_matern52.m +***** shared h, diff + h = 1.0; diff = -1; +***** error stk_rbf_matern52 (); +***** test stk_rbf_matern52 (h); +***** test stk_rbf_matern52 (h, diff); +***** test %% h = 0.0 => correlation = 1.0 + x = stk_rbf_matern52 (0.0); + assert (stk_isequal_tolrel (x, 1.0, 1e-8)); +***** test %% consistency with stk_rbf_matern: function values + for h = 0.1:0.1:2.0, + x = stk_rbf_matern (5/2, h); + y = stk_rbf_matern52 (h); + assert (stk_isequal_tolrel (x, y, 1e-8)); + end +***** test %% consistency with stk_rbf_matern: derivatives + for h = 0.1:0.1:2.0, + x = stk_rbf_matern (5/2, h, 2); + y = stk_rbf_matern52 (h, 1); + assert (stk_isequal_tolrel (x, y, 1e-8)); + end +***** assert (stk_rbf_matern52 (inf) == 0) +7 tests, 7 passed, 0 known failure, 0 skipped +[inst/covfcs/rbf/stk_rbf_matern32.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_matern32.m +***** shared h, diff + h = 1.0; diff = -1; +***** error stk_rbf_matern32 (); +***** test stk_rbf_matern32 (h); +***** test stk_rbf_matern32 (h, diff); +***** test %% h = 0.0 => correlation = 1.0 + x = stk_rbf_matern32 (0.0); + assert (stk_isequal_tolrel (x, 1.0, 1e-8)); +***** test %% consistency with stk_rbf_matern: function values + for h = 0.1:0.1:2.0, + x = stk_rbf_matern (3/2, h); + y = stk_rbf_matern32 (h); + assert (stk_isequal_tolrel (x, y, 1e-8)); + end +***** test %% consistency with stk_rbf_matern: derivatives + for h = 0.1:0.1:2.0, + x = stk_rbf_matern (3/2, h, 2); + y = stk_rbf_matern32 (h, 1); + assert (stk_isequal_tolrel (x, y, 1e-8)); + end +***** assert (stk_rbf_matern32 (inf) == 0) +7 tests, 7 passed, 0 known failure, 0 skipped +[inst/covfcs/rbf/stk_rbf_gauss.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_gauss.m +***** shared h, diff + h = 1.0; diff = -1; +***** error stk_rbf_gauss (); +***** test stk_rbf_gauss (h); +***** test stk_rbf_gauss (h, diff); +***** test % h = 0.0 => correlation = 1.0 + x = stk_rbf_gauss (0.0); + assert (stk_isequal_tolrel (x, 1.0, 1e-8)); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/covfcs/rbf/stk_rbf_matern.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_matern.m +***** shared nu, h, diff + nu = 1.0; h = 1.0; diff = -1; +***** error stk_rbf_matern (); +***** error stk_rbf_matern (nu); +***** test stk_rbf_matern (nu, h); +***** test stk_rbf_matern (nu, h, diff); +***** test %% h = 0.0 => correlation = 1.0 + for nu = 0.1:0.2:5.0, + x = stk_rbf_matern (nu, 0.0); + assert (stk_isequal_tolrel (x, 1.0, 1e-8)); + end +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/covfcs/rbf/stk_rbf_exponential.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_exponential.m +***** shared h, diff + h = 1.0; diff = -1; +***** error stk_rbf_exponential (); +***** test stk_rbf_exponential (h); +***** test stk_rbf_exponential (h, diff); +***** test %% h = 0.0 => correlation = 1.0 + x = stk_rbf_exponential (0.0); + assert (stk_isequal_tolrel (x, 1.0, 1e-8)); +***** test %% check derivative numerically + h = [-1 -0.5 -0.1 0.1 0.5 1]; delta = 1e-9; + d1 = (stk_rbf_exponential (h + delta) - stk_rbf_exponential (h)) / delta; + d2 = stk_rbf_exponential (h, 1); + assert (stk_isequal_tolabs (d1, d2, 1e-4)); +***** test %% consistency with stk_rbf_matern: function values + for h = 0.1:0.1:2.0, + x = stk_rbf_matern (1/2, h); + y = stk_rbf_exponential (h); + assert (stk_isequal_tolrel (x, y, 1e-8)); + end +***** test %% consistency with stk_rbf_matern: derivatives + for h = 0.1:0.1:2.0, + x = stk_rbf_matern (1/2, h, 2); + y = stk_rbf_exponential (h, 1); + assert (stk_isequal_tolrel (x, y, 1e-8)); + end +***** assert (stk_rbf_exponential (inf) == 0) +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/covfcs/rbf/stk_rbf_spherical.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_spherical.m +***** shared h, diff + h = 1.0; diff = -1; +***** error stk_rbf_spherical (); +***** test stk_rbf_spherical (h); +***** test stk_rbf_spherical (h, diff); +***** test %% h = 0.0 => correlation = 1.0 + x = stk_rbf_spherical (0.0); + assert (stk_isequal_tolrel (x, 1.0, 1e-8)); +***** test %% check derivative numerically + h = [-1 -0.5 -0.1 0.1 0.5 1]; delta = 1e-9; + d1 = (stk_rbf_spherical (h + delta) - stk_rbf_spherical (h)) / delta; + d2 = stk_rbf_spherical (h, 1); + assert (stk_isequal_tolabs (d1, d2, 1e-4)); +***** assert (stk_rbf_spherical (inf) == 0) +6 tests, 6 passed, 0 known failure, 0 skipped [inst/covfcs/stk_materncov32_aniso.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov32_aniso.m ***** shared param, x, y, K1, K2, K3 @@ -4402,116 +3572,36 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 20 tests, 20 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_materncov32_iso.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov32_iso.m -***** shared param, x, y - dim = 1; - param = log ([1.0; 2.5]); - x = stk_sampling_randunif (5, dim); - y = stk_sampling_randunif (5, dim); -***** error K = stk_materncov32_iso ([param; 1.234], x, y); -***** error stk_materncov32_iso (); -***** error stk_materncov32_iso (param); -***** error stk_materncov32_iso (param, x); -***** test stk_materncov32_iso (param, x, y); -***** test stk_materncov32_iso (param, x, y, -1); -***** test stk_materncov32_iso (param, x, y, -1, false); -***** error stk_materncov32_iso (param, x, y, -2); -***** test stk_materncov32_iso (param, x, y, -1); -***** error stk_materncov32_iso (param, x, y, 0); -***** test stk_materncov32_iso (param, x, y, 1); -***** test stk_materncov32_iso (param, x, y, 2); -***** error stk_materncov32_iso (param, x, y, 3); -***** error stk_materncov32_iso (param, x, y, nan); -***** error stk_materncov32_iso (param, x, y, inf); -***** shared dim, param, x, y, nx, ny - dim = 3; - param = log ([1.0; 2.5]); - nx = 4; ny = 10; - x = stk_sampling_randunif (nx, dim); - y = stk_sampling_randunif (ny, dim); -***** test - K1 = stk_materncov32_iso (param, x, y); - K2 = stk_materncov32_iso (param, x, y, -1); - assert (isequal (size (K1), [nx ny])); - assert (stk_isequal_tolabs (K1, K2)); -***** test - for i = 1:2, - dK = stk_materncov32_iso (param, x, y, i); - assert (isequal (size (dK), [nx ny])); - end -***** test - n = 7; - x = stk_sampling_randunif (n, dim); - y = stk_sampling_randunif (n, dim); - - K1 = stk_materncov32_iso (param, x, y); - K2 = stk_materncov32_iso (param, x, y, -1, true); - assert (isequal (size (K1), [n n])); - assert (stk_isequal_tolabs (K2, diag (K1))); - - for i = 1:2, - dK1 = stk_materncov32_iso (param, x, y, i); - dK2 = stk_materncov32_iso (param, x, y, i, true); - assert (isequal (size (dK1), [n n])); - assert (stk_isequal_tolabs (dK2, diag (dK1))); - end -18 tests, 18 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_gausscov_iso.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_gausscov_iso.m -***** shared param, x, y - dim = 1; - param = log ([1.0; 2.5]); - x = stk_sampling_randunif (5, dim); - y = stk_sampling_randunif (5, dim); -***** error K = stk_gausscov_iso ([param; 1.234], x, y); -***** error stk_gausscov_iso (); -***** error stk_gausscov_iso (param); -***** error stk_gausscov_iso (param, x); -***** test stk_gausscov_iso (param, x, y); -***** test stk_gausscov_iso (param, x, y, -1); -***** test stk_gausscov_iso (param, x, y, -1, false); -***** error stk_gausscov_iso (param, x, y, -2); -***** test stk_gausscov_iso (param, x, y, -1); -***** error stk_gausscov_iso (param, x, y, 0); -***** test stk_gausscov_iso (param, x, y, 1); -***** test stk_gausscov_iso (param, x, y, 2); -***** error stk_gausscov_iso (param, x, y, 3); -***** error stk_gausscov_iso (param, x, y, nan); -***** error stk_gausscov_iso (param, x, y, inf); -***** shared dim, param, x, y, nx, ny - dim = 3; - param = log ([1.0; 2.5]); - nx = 4; ny = 10; - x = stk_sampling_randunif (nx, dim); - y = stk_sampling_randunif (ny, dim); -***** test - K1 = stk_gausscov_iso (param, x, y); - K2 = stk_gausscov_iso (param, x, y, -1); - assert (isequal (size (K1), [nx ny])); - assert (stk_isequal_tolabs (K1, K2)); -***** test - for i = 1:2, - dK = stk_gausscov_iso (param, x, y, i); - assert (isequal (size (dK), [nx ny])); - end -***** test - n = 7; - x = stk_sampling_randunif (n, dim); - y = stk_sampling_randunif (n, dim); - - K1 = stk_gausscov_iso (param, x, y); - K2 = stk_gausscov_iso (param, x, y, -1, true); - assert (isequal (size (K1), [n n])); - assert (stk_isequal_tolabs (K2, diag (K1))); - - for i = 1:2, - dK1 = stk_gausscov_iso (param, x, y, i); - dK2 = stk_gausscov_iso (param, x, y, i, true); - assert (isequal (size (dK1), [n n])); - assert (stk_isequal_tolabs (dK2, diag (dK1))); - end -18 tests, 18 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_discretecov.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_discretecov.m +***** shared model, model2, x0 + n0 = 20; n1 = 10; dim = 4; + x0 = stk_sampling_randunif (n0, dim); + x1 = stk_sampling_randunif (n1, dim); + model = stk_model (@stk_materncov52_aniso, dim); + model.lm = stk_lm_affine (); + model.param = log ([1.0; 2.1; 2.2; 2.3; 2.4]); +***** test % without noise, pairwise = false + model.lognoisevariance = - inf; + model2 = stk_model (@stk_discretecov, model, x0); + idx = [1 4 9]; + [K1, P1] = stk_make_matcov (model, x0(idx, :)); + [K2, P2] = stk_make_matcov (model2, idx'); + assert (stk_isequal_tolrel (K1, K2)); + assert (stk_isequal_tolrel (P1, P2)); +***** test % without noise, pairwise = true + K1 = stk_make_matcov (model, x0([2 5 6], :), [], true); + K2 = stk_make_matcov (model2, [2 5 6]', [], true); + assert (stk_isequal_tolrel (K1, K2)); +***** test % with noise, pairwise = false + model.lognoisevariance = log (0.01); + model2 = stk_model (@stk_discretecov, model, x0); + idx = [1 4 9]; + [K1, P1] = stk_make_matcov (model, x0(idx, :)); + [K2, P2] = stk_make_matcov (model2, idx'); + assert (stk_isequal_tolrel (K1, K2)); + assert (stk_isequal_tolrel (P1, P2)); +3 tests, 3 passed, 0 known failure, 0 skipped [inst/covfcs/stk_sphcov_iso.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_sphcov_iso.m ***** shared param, x, y @@ -4567,181 +3657,6 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 18 tests, 18 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_exponential.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_exponential.m -***** shared h, diff - h = 1.0; diff = -1; -***** error stk_rbf_exponential (); -***** test stk_rbf_exponential (h); -***** test stk_rbf_exponential (h, diff); -***** test %% h = 0.0 => correlation = 1.0 - x = stk_rbf_exponential (0.0); - assert (stk_isequal_tolrel (x, 1.0, 1e-8)); -***** test %% check derivative numerically - h = [-1 -0.5 -0.1 0.1 0.5 1]; delta = 1e-9; - d1 = (stk_rbf_exponential (h + delta) - stk_rbf_exponential (h)) / delta; - d2 = stk_rbf_exponential (h, 1); - assert (stk_isequal_tolabs (d1, d2, 1e-4)); -***** test %% consistency with stk_rbf_matern: function values - for h = 0.1:0.1:2.0, - x = stk_rbf_matern (1/2, h); - y = stk_rbf_exponential (h); - assert (stk_isequal_tolrel (x, y, 1e-8)); - end -***** test %% consistency with stk_rbf_matern: derivatives - for h = 0.1:0.1:2.0, - x = stk_rbf_matern (1/2, h, 2); - y = stk_rbf_exponential (h, 1); - assert (stk_isequal_tolrel (x, y, 1e-8)); - end -***** assert (stk_rbf_exponential (inf) == 0) -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_spherical.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_spherical.m -***** shared h, diff - h = 1.0; diff = -1; -***** error stk_rbf_spherical (); -***** test stk_rbf_spherical (h); -***** test stk_rbf_spherical (h, diff); -***** test %% h = 0.0 => correlation = 1.0 - x = stk_rbf_spherical (0.0); - assert (stk_isequal_tolrel (x, 1.0, 1e-8)); -***** test %% check derivative numerically - h = [-1 -0.5 -0.1 0.1 0.5 1]; delta = 1e-9; - d1 = (stk_rbf_spherical (h + delta) - stk_rbf_spherical (h)) / delta; - d2 = stk_rbf_spherical (h, 1); - assert (stk_isequal_tolabs (d1, d2, 1e-4)); -***** assert (stk_rbf_spherical (inf) == 0) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_matern32.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_matern32.m -***** shared h, diff - h = 1.0; diff = -1; -***** error stk_rbf_matern32 (); -***** test stk_rbf_matern32 (h); -***** test stk_rbf_matern32 (h, diff); -***** test %% h = 0.0 => correlation = 1.0 - x = stk_rbf_matern32 (0.0); - assert (stk_isequal_tolrel (x, 1.0, 1e-8)); -***** test %% consistency with stk_rbf_matern: function values - for h = 0.1:0.1:2.0, - x = stk_rbf_matern (3/2, h); - y = stk_rbf_matern32 (h); - assert (stk_isequal_tolrel (x, y, 1e-8)); - end -***** test %% consistency with stk_rbf_matern: derivatives - for h = 0.1:0.1:2.0, - x = stk_rbf_matern (3/2, h, 2); - y = stk_rbf_matern32 (h, 1); - assert (stk_isequal_tolrel (x, y, 1e-8)); - end -***** assert (stk_rbf_matern32 (inf) == 0) -7 tests, 7 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_gauss.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_gauss.m -***** shared h, diff - h = 1.0; diff = -1; -***** error stk_rbf_gauss (); -***** test stk_rbf_gauss (h); -***** test stk_rbf_gauss (h, diff); -***** test % h = 0.0 => correlation = 1.0 - x = stk_rbf_gauss (0.0); - assert (stk_isequal_tolrel (x, 1.0, 1e-8)); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_matern52.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_matern52.m -***** shared h, diff - h = 1.0; diff = -1; -***** error stk_rbf_matern52 (); -***** test stk_rbf_matern52 (h); -***** test stk_rbf_matern52 (h, diff); -***** test %% h = 0.0 => correlation = 1.0 - x = stk_rbf_matern52 (0.0); - assert (stk_isequal_tolrel (x, 1.0, 1e-8)); -***** test %% consistency with stk_rbf_matern: function values - for h = 0.1:0.1:2.0, - x = stk_rbf_matern (5/2, h); - y = stk_rbf_matern52 (h); - assert (stk_isequal_tolrel (x, y, 1e-8)); - end -***** test %% consistency with stk_rbf_matern: derivatives - for h = 0.1:0.1:2.0, - x = stk_rbf_matern (5/2, h, 2); - y = stk_rbf_matern52 (h, 1); - assert (stk_isequal_tolrel (x, y, 1e-8)); - end -***** assert (stk_rbf_matern52 (inf) == 0) -7 tests, 7 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_matern.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/rbf/stk_rbf_matern.m -***** shared nu, h, diff - nu = 1.0; h = 1.0; diff = -1; -***** error stk_rbf_matern (); -***** error stk_rbf_matern (nu); -***** test stk_rbf_matern (nu, h); -***** test stk_rbf_matern (nu, h, diff); -***** test %% h = 0.0 => correlation = 1.0 - for nu = 0.1:0.2:5.0, - x = stk_rbf_matern (nu, 0.0); - assert (stk_isequal_tolrel (x, 1.0, 1e-8)); - end -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_materncov_iso.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov_iso.m -***** shared param, x, y - dim = 1; - param = log ([1.0; 1.5; 2.9]); - x = stk_sampling_randunif(5, dim); - y = stk_sampling_randunif(5, dim); -***** error K = stk_materncov_iso ([param; 1.234], x, y); -***** error stk_materncov_iso(); -***** error stk_materncov_iso(param); -***** error stk_materncov_iso(param, x); -***** test stk_materncov_iso(param, x, y); -***** test stk_materncov_iso(param, x, y, -1); -***** test stk_materncov_iso(param, x, y, -1, false); -***** error stk_materncov_iso(param, x, y, -2); -***** test stk_materncov_iso(param, x, y, -1); -***** error stk_materncov_iso(param, x, y, 0); -***** test stk_materncov_iso(param, x, y, 1); -***** test stk_materncov_iso(param, x, y, 2); -***** test stk_materncov_iso(param, x, y, 3); -***** error stk_materncov_iso(param, x, y, 4); -***** error stk_materncov_iso(param, x, y, nan); -***** error stk_materncov_iso(param, x, y, inf); -***** shared dim, param, x, y, nx, ny - dim = 3; - param = log ([1.0; 1.5; 2.9]); - nx = 4; ny = 10; - x = stk_sampling_randunif (nx, dim); - y = stk_sampling_randunif (ny, dim); -***** test - K1 = stk_materncov_iso (param, x, y); - K2 = stk_materncov_iso (param, x, y, -1); - assert (isequal (size (K1), [nx ny])); - assert (stk_isequal_tolabs (K1, K2)); -***** test - for i = 1:3, - dK = stk_materncov_iso (param, x, y, i); - assert (isequal (size (dK), [nx ny])); - end -***** test - n = 7; - x = stk_sampling_randunif(n, dim); - y = stk_sampling_randunif(n, dim); - - K1 = stk_materncov_iso(param, x, y); - K2 = stk_materncov_iso(param, x, y, -1, true); - assert(isequal(size(K1), [n n])); - assert(stk_isequal_tolabs(K2, diag(K1))); - - for i = 1:3, - dK1 = stk_materncov_iso(param, x, y, i); - dK2 = stk_materncov_iso(param, x, y, i, true); - assert(isequal(size(dK1), [n n])); - assert(stk_isequal_tolabs(dK2, diag(dK1))); - end -19 tests, 19 passed, 0 known failure, 0 skipped [inst/covfcs/stk_expcov_iso.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_expcov_iso.m ***** shared param, x, y @@ -4797,67 +3712,6 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 18 tests, 18 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_sphcov_aniso.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_sphcov_aniso.m -***** shared param, x, y, K1, K2, K3 - dim = 1; - param = log ([1.0; 2.5]); - x = stk_sampling_randunif (5, dim); - y = stk_sampling_randunif (6, dim); -***** error K0 = stk_sphcov_aniso (); -***** error K0 = stk_sphcov_aniso (param); -***** error K0 = stk_sphcov_aniso (param, x); -***** test K1 = stk_sphcov_aniso (param, x, y); -***** test K2 = stk_sphcov_aniso (param, x, y, -1); -***** test K3 = stk_sphcov_aniso (param, x, y, -1, false); -***** assert (isequal (K1, K2)); -***** assert (isequal (K1, K3)); -***** test % df versus ordinary array - u = double (x); v = double (y); - K1 = stk_sphcov_aniso (param, u, v, -1); - K2 = stk_sphcov_aniso (param, stk_dataframe (u), stk_dataframe (v), -1); - assert (isequal (K1, K2)); -***** error stk_sphcov_aniso (param, x, y, -2); -***** test stk_sphcov_aniso (param, x, y, -1); -***** error stk_sphcov_aniso (param, x, y, 0); -***** test stk_sphcov_aniso (param, x, y, 1); -***** test stk_sphcov_aniso (param, x, y, 2); -***** error stk_sphcov_aniso (param, x, y, 3); -***** error stk_sphcov_aniso (param, x, y, nan); -***** error stk_sphcov_aniso (param, x, y, inf); -***** shared dim, param, x, y, nx, ny - dim = 3; - param = log ([1.0; 2.5; 2.4; 2.6]); - nx = 4; ny = 10; - x = stk_sampling_randunif (nx, dim); - y = stk_sampling_randunif (ny, dim); -***** test - K1 = stk_sphcov_aniso (param, x, y); - K2 = stk_sphcov_aniso (param, x, y, -1); - assert (isequal (size(K1), [nx ny])); - assert (stk_isequal_tolabs (K1, K2)); -***** test - for i = 1:(dim + 1), - dK = stk_sphcov_aniso (param, x, y, i); - assert (isequal (size (dK), [nx ny])); - end -***** test - n = 7; - x = stk_sampling_randunif (n, dim); - y = stk_sampling_randunif (n, dim); - - K1 = stk_sphcov_aniso (param, x, y); - K2 = stk_sphcov_aniso (param, x, y, -1, true); - assert (isequal (size (K1), [n n])); - assert (stk_isequal_tolabs (K2, diag (K1))); - - for i = 1:(dim + 1), - dK1 = stk_sphcov_aniso (param, x, y, i); - dK2 = stk_sphcov_aniso (param, x, y, i, true); - assert (isequal (size (dK1), [n n])); - assert (stk_isequal_tolabs (dK2, diag (dK1))); - end -20 tests, 20 passed, 0 known failure, 0 skipped [inst/covfcs/stk_materncov52_aniso.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov52_aniso.m ***** shared param, x, y @@ -4912,6 +3766,61 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 17 tests, 17 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_materncov_aniso.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov_aniso.m +***** shared param, x, y + dim = 1; + param = log ([1.0; 1.5; 2.8]); + x = stk_sampling_randunif(5, dim); + y = stk_sampling_randunif(5, dim); +***** error stk_materncov_aniso(); +***** error stk_materncov_aniso(param); +***** error stk_materncov_aniso(param, x); +***** test stk_materncov_aniso(param, x, y); +***** test stk_materncov_aniso(param, x, y, -1); +***** test stk_materncov_aniso(param, x, y, -1, false); +***** error stk_materncov_aniso(param, x, y, -2); +***** test stk_materncov_aniso(param, x, y, -1); +***** error stk_materncov_aniso(param, x, y, 0); +***** test stk_materncov_aniso(param, x, y, 1); +***** test stk_materncov_aniso(param, x, y, 2); +***** test stk_materncov_aniso(param, x, y, 3); +***** error stk_materncov_aniso(param, x, y, 4); +***** error stk_materncov_aniso(param, x, y, nan); +***** error stk_materncov_aniso(param, x, y, inf); +***** shared dim, param, x, y, nx, ny + dim = 3; + param = log ([1.0; 1.5; 2.8; 2.7; 2.9]); + nx = 4; ny = 10; + x = stk_sampling_randunif(nx, dim); + y = stk_sampling_randunif(ny, dim); +***** test + K1 = stk_materncov_aniso(param, x, y); + K2 = stk_materncov_aniso(param, x, y, -1); + assert(isequal(size(K1), [nx ny])); + assert(stk_isequal_tolabs(K1, K2)); +***** test + for i = 1:(dim+2), + dK = stk_materncov_aniso(param, x, y, i); + assert(isequal(size(dK), [nx ny])); + end +***** test + n = 7; + x = stk_sampling_randunif(n, dim); + y = stk_sampling_randunif(n, dim); + + K1 = stk_materncov_aniso(param, x, y); + K2 = stk_materncov_aniso(param, x, y, -1, true); + assert(isequal(size(K1), [n n])); + assert(stk_isequal_tolabs(K2, diag(K1))); + + for i = 1:(dim+2), + dK1 = stk_materncov_aniso(param, x, y, i); + dK2 = stk_materncov_aniso(param, x, y, i, true); + assert(isequal(size(dK1), [n n])); + assert(stk_isequal_tolabs(dK2, diag(dK1))); + end +18 tests, 18 passed, 0 known failure, 0 skipped [inst/covfcs/stk_materncov52_iso.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov52_iso.m ***** shared param, x, y @@ -4967,6 +3876,116 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 18 tests, 18 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_gausscov_iso.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_gausscov_iso.m +***** shared param, x, y + dim = 1; + param = log ([1.0; 2.5]); + x = stk_sampling_randunif (5, dim); + y = stk_sampling_randunif (5, dim); +***** error K = stk_gausscov_iso ([param; 1.234], x, y); +***** error stk_gausscov_iso (); +***** error stk_gausscov_iso (param); +***** error stk_gausscov_iso (param, x); +***** test stk_gausscov_iso (param, x, y); +***** test stk_gausscov_iso (param, x, y, -1); +***** test stk_gausscov_iso (param, x, y, -1, false); +***** error stk_gausscov_iso (param, x, y, -2); +***** test stk_gausscov_iso (param, x, y, -1); +***** error stk_gausscov_iso (param, x, y, 0); +***** test stk_gausscov_iso (param, x, y, 1); +***** test stk_gausscov_iso (param, x, y, 2); +***** error stk_gausscov_iso (param, x, y, 3); +***** error stk_gausscov_iso (param, x, y, nan); +***** error stk_gausscov_iso (param, x, y, inf); +***** shared dim, param, x, y, nx, ny + dim = 3; + param = log ([1.0; 2.5]); + nx = 4; ny = 10; + x = stk_sampling_randunif (nx, dim); + y = stk_sampling_randunif (ny, dim); +***** test + K1 = stk_gausscov_iso (param, x, y); + K2 = stk_gausscov_iso (param, x, y, -1); + assert (isequal (size (K1), [nx ny])); + assert (stk_isequal_tolabs (K1, K2)); +***** test + for i = 1:2, + dK = stk_gausscov_iso (param, x, y, i); + assert (isequal (size (dK), [nx ny])); + end +***** test + n = 7; + x = stk_sampling_randunif (n, dim); + y = stk_sampling_randunif (n, dim); + + K1 = stk_gausscov_iso (param, x, y); + K2 = stk_gausscov_iso (param, x, y, -1, true); + assert (isequal (size (K1), [n n])); + assert (stk_isequal_tolabs (K2, diag (K1))); + + for i = 1:2, + dK1 = stk_gausscov_iso (param, x, y, i); + dK2 = stk_gausscov_iso (param, x, y, i, true); + assert (isequal (size (dK1), [n n])); + assert (stk_isequal_tolabs (dK2, diag (dK1))); + end +18 tests, 18 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_materncov32_iso.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov32_iso.m +***** shared param, x, y + dim = 1; + param = log ([1.0; 2.5]); + x = stk_sampling_randunif (5, dim); + y = stk_sampling_randunif (5, dim); +***** error K = stk_materncov32_iso ([param; 1.234], x, y); +***** error stk_materncov32_iso (); +***** error stk_materncov32_iso (param); +***** error stk_materncov32_iso (param, x); +***** test stk_materncov32_iso (param, x, y); +***** test stk_materncov32_iso (param, x, y, -1); +***** test stk_materncov32_iso (param, x, y, -1, false); +***** error stk_materncov32_iso (param, x, y, -2); +***** test stk_materncov32_iso (param, x, y, -1); +***** error stk_materncov32_iso (param, x, y, 0); +***** test stk_materncov32_iso (param, x, y, 1); +***** test stk_materncov32_iso (param, x, y, 2); +***** error stk_materncov32_iso (param, x, y, 3); +***** error stk_materncov32_iso (param, x, y, nan); +***** error stk_materncov32_iso (param, x, y, inf); +***** shared dim, param, x, y, nx, ny + dim = 3; + param = log ([1.0; 2.5]); + nx = 4; ny = 10; + x = stk_sampling_randunif (nx, dim); + y = stk_sampling_randunif (ny, dim); +***** test + K1 = stk_materncov32_iso (param, x, y); + K2 = stk_materncov32_iso (param, x, y, -1); + assert (isequal (size (K1), [nx ny])); + assert (stk_isequal_tolabs (K1, K2)); +***** test + for i = 1:2, + dK = stk_materncov32_iso (param, x, y, i); + assert (isequal (size (dK), [nx ny])); + end +***** test + n = 7; + x = stk_sampling_randunif (n, dim); + y = stk_sampling_randunif (n, dim); + + K1 = stk_materncov32_iso (param, x, y); + K2 = stk_materncov32_iso (param, x, y, -1, true); + assert (isequal (size (K1), [n n])); + assert (stk_isequal_tolabs (K2, diag (K1))); + + for i = 1:2, + dK1 = stk_materncov32_iso (param, x, y, i); + dK2 = stk_materncov32_iso (param, x, y, i, true); + assert (isequal (size (dK1), [n n])); + assert (stk_isequal_tolabs (dK2, diag (dK1))); + end +18 tests, 18 passed, 0 known failure, 0 skipped [inst/covfcs/stk_expcov_aniso.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_expcov_aniso.m ***** shared param, x, y, K1, K2, K3 @@ -5027,47 +4046,48 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 20 tests, 20 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_gausscov_aniso.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_gausscov_aniso.m +[inst/covfcs/stk_sphcov_aniso.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_sphcov_aniso.m ***** shared param, x, y, K1, K2, K3 dim = 1; param = log ([1.0; 2.5]); x = stk_sampling_randunif (5, dim); y = stk_sampling_randunif (6, dim); -***** error K0 = stk_gausscov_aniso (); -***** error K0 = stk_gausscov_aniso (param); -***** error K0 = stk_gausscov_aniso (param, x); -***** test K1 = stk_gausscov_aniso (param, x, y); -***** test K2 = stk_gausscov_aniso (param, x, y, -1); -***** test K3 = stk_gausscov_aniso (param, x, y, -1, false); +***** error K0 = stk_sphcov_aniso (); +***** error K0 = stk_sphcov_aniso (param); +***** error K0 = stk_sphcov_aniso (param, x); +***** test K1 = stk_sphcov_aniso (param, x, y); +***** test K2 = stk_sphcov_aniso (param, x, y, -1); +***** test K3 = stk_sphcov_aniso (param, x, y, -1, false); ***** assert (isequal (K1, K2)); ***** assert (isequal (K1, K3)); ***** test % df versus ordinary array u = double (x); v = double (y); - K1 = stk_gausscov_aniso (param, u, v, -1); - K2 = stk_gausscov_aniso (param, stk_dataframe (u), stk_dataframe (v), -1); -***** error stk_gausscov_aniso (param, x, y, -2); -***** test stk_gausscov_aniso (param, x, y, -1); -***** error stk_gausscov_aniso (param, x, y, 0); -***** test stk_gausscov_aniso (param, x, y, 1); -***** test stk_gausscov_aniso (param, x, y, 2); -***** error stk_gausscov_aniso (param, x, y, 3); -***** error stk_gausscov_aniso (param, x, y, nan); -***** error stk_gausscov_aniso (param, x, y, inf); + K1 = stk_sphcov_aniso (param, u, v, -1); + K2 = stk_sphcov_aniso (param, stk_dataframe (u), stk_dataframe (v), -1); + assert (isequal (K1, K2)); +***** error stk_sphcov_aniso (param, x, y, -2); +***** test stk_sphcov_aniso (param, x, y, -1); +***** error stk_sphcov_aniso (param, x, y, 0); +***** test stk_sphcov_aniso (param, x, y, 1); +***** test stk_sphcov_aniso (param, x, y, 2); +***** error stk_sphcov_aniso (param, x, y, 3); +***** error stk_sphcov_aniso (param, x, y, nan); +***** error stk_sphcov_aniso (param, x, y, inf); ***** shared dim, param, x, y, nx, ny dim = 3; param = log ([1.0; 2.5; 2.4; 2.6]); - nx = 4; ny = 10; + nx = 4; ny = 10; x = stk_sampling_randunif (nx, dim); y = stk_sampling_randunif (ny, dim); ***** test - K1 = stk_gausscov_aniso (param, x, y); - K2 = stk_gausscov_aniso (param, x, y, -1); - assert (isequal (size (K1), [nx ny])); + K1 = stk_sphcov_aniso (param, x, y); + K2 = stk_sphcov_aniso (param, x, y, -1); + assert (isequal (size(K1), [nx ny])); assert (stk_isequal_tolabs (K1, K2)); ***** test for i = 1:(dim + 1), - dK = stk_gausscov_aniso (param, x, y, i); + dK = stk_sphcov_aniso (param, x, y, i); assert (isequal (size (dK), [nx ny])); end ***** test @@ -5075,123 +4095,948 @@ x = stk_sampling_randunif (n, dim); y = stk_sampling_randunif (n, dim); - K1 = stk_gausscov_aniso (param, x, y); - K2 = stk_gausscov_aniso (param, x, y, -1, true); + K1 = stk_sphcov_aniso (param, x, y); + K2 = stk_sphcov_aniso (param, x, y, -1, true); assert (isequal (size (K1), [n n])); assert (stk_isequal_tolabs (K2, diag (K1))); for i = 1:(dim + 1), - dK1 = stk_gausscov_aniso (param, x, y, i); - dK2 = stk_gausscov_aniso (param, x, y, i, true); + dK1 = stk_sphcov_aniso (param, x, y, i); + dK2 = stk_sphcov_aniso (param, x, y, i, true); assert (isequal (size (dK1), [n n])); assert (stk_isequal_tolabs (dK2, diag (dK1))); end 20 tests, 20 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_discretecov.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_discretecov.m -***** shared model, model2, x0 - n0 = 20; n1 = 10; dim = 4; - x0 = stk_sampling_randunif (n0, dim); - x1 = stk_sampling_randunif (n1, dim); - model = stk_model (@stk_materncov52_aniso, dim); - model.lm = stk_lm_affine (); - model.param = log ([1.0; 2.1; 2.2; 2.3; 2.4]); -***** test % without noise, pairwise = false - model.lognoisevariance = - inf; - model2 = stk_model (@stk_discretecov, model, x0); - idx = [1 4 9]; - [K1, P1] = stk_make_matcov (model, x0(idx, :)); - [K2, P2] = stk_make_matcov (model2, idx'); - assert (stk_isequal_tolrel (K1, K2)); - assert (stk_isequal_tolrel (P1, P2)); -***** test % without noise, pairwise = true - K1 = stk_make_matcov (model, x0([2 5 6], :), [], true); - K2 = stk_make_matcov (model2, [2 5 6]', [], true); - assert (stk_isequal_tolrel (K1, K2)); -***** test % with noise, pairwise = false - model.lognoisevariance = log (0.01); - model2 = stk_model (@stk_discretecov, model, x0); - idx = [1 4 9]; - [K1, P1] = stk_make_matcov (model, x0(idx, :)); - [K2, P2] = stk_make_matcov (model2, idx'); - assert (stk_isequal_tolrel (K1, K2)); - assert (stk_isequal_tolrel (P1, P2)); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_noisecov.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_noisecov.m -***** shared ni, lognoisevariance, diff - ni = 5; - lognoisevariance = 0.0; - diff = -1; -***** error K = stk_noisecov (); -***** error K = stk_noisecov (ni); -***** test K = stk_noisecov (ni, lognoisevariance); -***** test K = stk_noisecov (ni, lognoisevariance, diff); -***** test K = stk_noisecov (ni, lognoisevariance, diff, true); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_materncov_aniso.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov_aniso.m +[inst/covfcs/stk_materncov_iso.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov_iso.m ***** shared param, x, y dim = 1; - param = log ([1.0; 1.5; 2.8]); + param = log ([1.0; 1.5; 2.9]); x = stk_sampling_randunif(5, dim); y = stk_sampling_randunif(5, dim); -***** error stk_materncov_aniso(); -***** error stk_materncov_aniso(param); -***** error stk_materncov_aniso(param, x); -***** test stk_materncov_aniso(param, x, y); -***** test stk_materncov_aniso(param, x, y, -1); -***** test stk_materncov_aniso(param, x, y, -1, false); -***** error stk_materncov_aniso(param, x, y, -2); -***** test stk_materncov_aniso(param, x, y, -1); -***** error stk_materncov_aniso(param, x, y, 0); -***** test stk_materncov_aniso(param, x, y, 1); -***** test stk_materncov_aniso(param, x, y, 2); -***** test stk_materncov_aniso(param, x, y, 3); -***** error stk_materncov_aniso(param, x, y, 4); -***** error stk_materncov_aniso(param, x, y, nan); -***** error stk_materncov_aniso(param, x, y, inf); +***** error K = stk_materncov_iso ([param; 1.234], x, y); +***** error stk_materncov_iso(); +***** error stk_materncov_iso(param); +***** error stk_materncov_iso(param, x); +***** test stk_materncov_iso(param, x, y); +***** test stk_materncov_iso(param, x, y, -1); +***** test stk_materncov_iso(param, x, y, -1, false); +***** error stk_materncov_iso(param, x, y, -2); +***** test stk_materncov_iso(param, x, y, -1); +***** error stk_materncov_iso(param, x, y, 0); +***** test stk_materncov_iso(param, x, y, 1); +***** test stk_materncov_iso(param, x, y, 2); +***** test stk_materncov_iso(param, x, y, 3); +***** error stk_materncov_iso(param, x, y, 4); +***** error stk_materncov_iso(param, x, y, nan); +***** error stk_materncov_iso(param, x, y, inf); ***** shared dim, param, x, y, nx, ny dim = 3; - param = log ([1.0; 1.5; 2.8; 2.7; 2.9]); - nx = 4; ny = 10; - x = stk_sampling_randunif(nx, dim); - y = stk_sampling_randunif(ny, dim); + param = log ([1.0; 1.5; 2.9]); + nx = 4; ny = 10; + x = stk_sampling_randunif (nx, dim); + y = stk_sampling_randunif (ny, dim); ***** test - K1 = stk_materncov_aniso(param, x, y); - K2 = stk_materncov_aniso(param, x, y, -1); - assert(isequal(size(K1), [nx ny])); - assert(stk_isequal_tolabs(K1, K2)); + K1 = stk_materncov_iso (param, x, y); + K2 = stk_materncov_iso (param, x, y, -1); + assert (isequal (size (K1), [nx ny])); + assert (stk_isequal_tolabs (K1, K2)); ***** test - for i = 1:(dim+2), - dK = stk_materncov_aniso(param, x, y, i); - assert(isequal(size(dK), [nx ny])); + for i = 1:3, + dK = stk_materncov_iso (param, x, y, i); + assert (isequal (size (dK), [nx ny])); end ***** test n = 7; x = stk_sampling_randunif(n, dim); y = stk_sampling_randunif(n, dim); - K1 = stk_materncov_aniso(param, x, y); - K2 = stk_materncov_aniso(param, x, y, -1, true); + K1 = stk_materncov_iso(param, x, y); + K2 = stk_materncov_iso(param, x, y, -1, true); assert(isequal(size(K1), [n n])); assert(stk_isequal_tolabs(K2, diag(K1))); - for i = 1:(dim+2), - dK1 = stk_materncov_aniso(param, x, y, i); - dK2 = stk_materncov_aniso(param, x, y, i, true); + for i = 1:3, + dK1 = stk_materncov_iso(param, x, y, i); + dK2 = stk_materncov_iso(param, x, y, i, true); assert(isequal(size(dK1), [n n])); assert(stk_isequal_tolabs(dK2, diag(dK1))); end +19 tests, 19 passed, 0 known failure, 0 skipped +[inst/core/stk_cholcov.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_cholcov.m +***** shared Q, K, L, U, epsi + Q = 0.25 * hadamard(4); +***** test + K = Q * diag ([1, 0.1, 0.01, 1e-7]) * Q'; + [U, epsi] = stk_cholcov (K); +***** assert (istriu (U)) +***** assert (epsi == 0) +***** test + K = Q * diag ([1, 0.1, 0.01, 1e-7]) * Q'; + [L, epsi] = stk_cholcov (K, 'lower'); +***** assert (istril (L)) +***** assert (epsi == 0) +***** test + K = Q * diag ([1, 0.1, 0.01, -1e-7]) * Q'; + [U, epsi] = stk_cholcov (K); +***** assert (istriu (U)) +***** assert (epsi > 0) +***** test + K = Q * diag ([1, 0.1, 0.01, -1e-7]) * Q'; + [L, epsi] = stk_cholcov (K, 'lower'); +***** assert (istril (L)) +***** assert (epsi > 0) +12 tests, 12 passed, 0 known failure, 0 skipped +[inst/core/@stk_kreq_qr/stk_kreq_qr.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/@stk_kreq_qr/stk_kreq_qr.m +***** test stk_test_class ('stk_kreq_qr') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/core/stk_make_matcov.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_make_matcov.m +***** shared model, model2, x0, x1, n0, n1, d, Ka, Kb, Kc, Pa, Pb, Pc + n0 = 20; n1 = 10; d = 4; + model = stk_model (@stk_materncov52_aniso, d); + model.lm = stk_lm_affine; + model.param = log ([1.0; 2.1; 2.2; 2.3; 2.4]); + model2 = model; model2.lognoisevariance = log(0.01); + x0 = stk_sampling_randunif (n0, d); + x1 = stk_sampling_randunif (n1, d); +***** error [KK, PP] = stk_make_matcov (); +***** error [KK, PP] = stk_make_matcov (model); +***** test [Ka, Pa] = stk_make_matcov (model, x0); % (1) +***** test [Kb, Pb] = stk_make_matcov (model, x0, x0); % (2) +***** test [Kc, Pc] = stk_make_matcov (model, x0, x1); % (3) +***** error [KK, PP] = stk_make_matcov (model, x0, x1, pi); +***** assert (isequal (size (Ka), [n0 n0])); +***** assert (isequal (size (Kb), [n0 n0])); +***** assert (isequal (size (Kc), [n0 n1])); +***** assert (isequal (size (Pa), [n0 d + 1])); +***** assert (isequal (size (Pb), [n0 d + 1])); +***** assert (isequal (size (Pc), [n0 d + 1])); +***** assert (isequal (Kb, Ka)); +***** test [Ka, Pa] = stk_make_matcov (model2, x0); % (1') +***** test [Kb, Pb] = stk_make_matcov (model2, x0, x0); % (2') +***** error assert (isequal (Kb, Ka)); +***** assert (isequal (Pa, Pb)); +***** assert (isequal (Pa, Pc)); 18 tests, 18 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_factorialdesign/stk_dataframe.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_dataframe.m +[inst/core/stk_predict_leaveoneout.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_predict_leaveoneout.m +***** shared n, x_obs, z_obs, model + n = 20; + x_obs = stk_sampling_regulargrid (n, 1, [0; 2*pi]); + z_obs = stk_feval (@sin, x_obs); + model = stk_model (@stk_materncov32_iso); + model.param = log ([1; 5]); +***** test % one output + + loo_pred = stk_predict_leaveoneout (model, x_obs, z_obs); + + assert (isequal (size (loo_pred), [n 2])); + assert (isequal (loo_pred.colnames, {'mean', 'var'})); + assert (all (isfinite (loo_pred(:)))); +***** test % two outputs + + [loo_pred, loo_res] = stk_predict_leaveoneout (model, x_obs, z_obs); + + assert (isequal (size (loo_pred), [n 2])); + assert (isequal (loo_pred.colnames, {'mean', 'var'})); + assert (all (isfinite (loo_pred(:)))); + + assert (isequal (size (loo_res), [n 2])); + assert (isequal (loo_res.colnames, {'residuals', 'norm_res'})); + assert (all (isfinite (loo_res(:)))); +***** test % heteroscedastic noise case + + model.lognoisevariance = (1 + rand (n, 1)) * 1e-6; + [loo_pred, loo_res] = stk_predict_leaveoneout (model, x_obs, z_obs); + + assert (isequal (size (loo_pred), [n 2])); + assert (isequal (loo_pred.colnames, {'mean', 'var'})); + assert (all (isfinite (loo_pred(:)))); + + assert (isequal (size (loo_res), [n 2])); + assert (isequal (loo_res.colnames, {'residuals', 'norm_res'})); + assert (all (isfinite (loo_res(:)))); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/core/stk_model_update.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_model_update.m +***** test + x1 = (linspace (0, 1, 15))'; z1 = sin (x1); + x2 = (linspace (2, 3, 15))'; z2 = sin (x2); + xt = (linspace (1, 2, 15))'; zt = sin (xt); + + % Prior model + M0 = stk_model (@stk_materncov32_iso); + M0.param = log ([1.0; 2.1]); + + M1 = stk_model_update (M0, x1, z1); + M1 = stk_model_update (M1, x2, z2); % this calls @stk_model_gpposterior/... + zp1 = stk_predict (M1, xt); + + M2 = stk_model_gpposterior (M0, [x1; x2], [z1; z2]); + zp2 = stk_predict (M2, xt); + + assert (stk_isequal_tolabs (double (zp2 - zp1), zeros (15, 2), 1e-10)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/core/stk_predict.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_predict.m +***** shared n, m, model, x0, x_obs, z_obs, x_prd, y_prd1, idx_obs, idx_prd + + n = 10; % number of observations + m = n + 1; % number of predictions + d = 1; % dimension of the input space + + x0 = stk_sampling_regulargrid(n+m, d, [0; pi]); + + idx_obs = (2:2:(n+m-1))'; + idx_prd = (1:2:(n+m))'; + + x_obs = x0(idx_obs); + z_obs = sin (double (x_obs)); + x_prd = x0(idx_prd); + + model = stk_model (@stk_materncov32_iso); + model.param = log ([1.0; 2.1]); +***** error y_prd1 = stk_predict (); +***** error y_prd1 = stk_predict (model); +***** test y_prd1 = stk_predict (model, x_prd); +***** error y_prd1 = stk_predict (model, data, x_prd); +***** test y_prd1 = stk_predict (model, x_obs, z_obs, x_prd); +***** error y_prd1 = stk_predict (model, [x_obs; x_obs], [z_obs; z_obs], x_prd); +***** test % nargout = 2 + [y_prd1, lambda] = stk_predict (model, x_obs, z_obs, x_prd); + assert (isequal (size (lambda), [n m])); +***** test % nargout = 2, compute only variances + [y_prd1, lambda] = stk_predict (model, x_obs, [], x_prd); + assert (isequal (size (lambda), [n m])); + assert (all (isnan (y_prd1.mean))); +***** test % nargout = 3 + [y_prd1, lambda, mu] = stk_predict (model, x_obs, z_obs, x_prd); + assert (isequal (size (lambda), [n m])); + assert (isequal (size (mu), [1 m])); % ordinary kriging +***** test % nargout = 4 + [y_prd1, lambda, mu, K] = stk_predict (model, x_obs, z_obs, x_prd); + assert (isequal (size (lambda), [n m])); + assert (isequal (size (mu), [1 m])); % ordinary kriging + assert (isequal (size (K), [m m])); +***** test % predict on large set of locations + x_prd = stk_sampling_regulargrid (1e5, 1, [0; pi]); + y_prd = stk_predict (model, x_obs, z_obs, x_prd); +***** test % predict on an observation point + % https://sourceforge.net/p/kriging/tickets/49/ + [zp, lambda] = stk_predict (model, x_obs, z_obs, x_obs(4)); + assert (isequal (z_obs(4), zp.mean)) + assert (isequal (zp.var, 0)) + lambda_ref = zeros (n, 1); lambda_ref(4) = 1; + assert (isequal (lambda, lambda_ref)) +12 tests, 12 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampcrit_ei_eval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampcrit_ei_eval.m +***** error EI = stk_sampcrit_ei_eval () % not enough args +***** error EI = stk_sampcrit_ei_eval (0) % not enough args +***** shared xi, zi, M_prior, xt, zp, EIref, EI1, EI2, EI3 + xi = [0; 0.2; 0.7; 0.9]; + zi = [1; 0.9; 0.6; 0.1]; + M_prior = stk_model (@stk_materncov32_iso); + M_prior.param = log ([1.0; 2.1]); + xt = stk_sampling_regulargrid (20, 1, [0; 1]); + zp = stk_predict (M_prior, xi, zi, xt); + EIref = stk_distrib_normal_ei (min (zi), zp.mean, sqrt (zp.var), true); +***** test % Current syntax (STK 2.4.1 and later) + EI1 = stk_sampcrit_ei_eval (zp.mean, sqrt (zp.var), min (zi)); +***** assert (isequal (EI1, EIref)) +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampcrit_akg_eval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampcrit_akg_eval.m +***** shared zc_mean, zc_std, zr_mean, zr_std, zcr_cov, AKG, nc + xi = [0; 0.2; 0.7; 0.9]; + zi = [1; 0.9; 0.6; 0.1] - 10; + ni = 4; + + M_prior = stk_model (@stk_materncov32_iso); + M_prior.param = log ([1.0; 2.1]); + M_prior.lognoisevariance = 0.678; + + nc = 20; + xc = stk_sampling_regulargrid (nc, 1, [0; 1]); + [zp, ~, ~, K] = stk_predict (M_prior, xi, zi, [xi; xc]); + + ir = 1:ni; ic = ni + (1:nc); + + zc_mean = zp.mean(ic); + zc_std = sqrt (zp.var(ic)); + + % reference grid: current evaluation points ("KGCP") + zr_mean = zp.mean(ir); + zr_std = sqrt (zp.var(ir)); + + zcr_cov = K(ic, ir); +***** test AKG = stk_sampcrit_akg_eval (zc_mean, zc_std, zr_mean, zr_std, zcr_cov); +***** assert (isequal (size (AKG), [nc 1])) +***** assert (all (AKG >= 0)) +***** error AKG = stk_sampcrit_akg_eval (zc_mean, zc_std, zr_mean, zr_std); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/sampling/stk_halfpintl.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_halfpintl.m +***** test % case #1 + a = 1; + b = 1; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (a_out == 1) + assert (b_out == 1) + assert (isempty (z_out)) +***** test % case #2: two lines, slopes not equal, already sorted + a = [1; -1]; + b = [0; 2]; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (isequal (a_out, [1; -1])) + assert (isequal (b_out, [0; 2])) + assert (z_out == 1) +***** test % case #3: same as #2, but not sorted + a = [-1; 1]; + b = [ 2; 0]; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (isequal (a_out, [1; -1])) + assert (isequal (b_out, [0; 2])) + assert (z_out == 1) +***** test % case #4: two lines, equal slopes, already sorted + a = [0; 0]; + b = [1; 2]; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (a_out == 0) + assert (b_out == 1) + assert (isempty (z_out)) +***** test % case #5: same as #4, but not sorted + a = [0; 0]; + b = [2; 1]; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (a_out == 0) + assert (b_out == 1) + assert (isempty (z_out)) +***** test % case #6: add a dominated line to #2 (the result does not change) + a = [1; -1; 0]; + b = [0; 2; 1]; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (isequal (a_out, [1; -1])) + assert (isequal (b_out, [0; 2])) + assert (z_out == 1) +***** test % case #7: permutation of #6 + a = [1; 0; -1]; + b = [0; 1; 2]; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (isequal (a_out, [1; -1])) + assert (isequal (b_out, [0; 2])) + assert (z_out == 1) +***** test % case #8: another permutation of #6 + a = [0; 1; -1]; + b = [1; 0; 2]; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (isequal (a_out, [1; -1])) + assert (isequal (b_out, [0; 2])) + assert (z_out == 1) +***** test % case #9: same as #8, with some duplicated lines added + a = [0; 1; 0; -1; 0; -1; 1]; + b = [1; 0; 1; 2; 1; 2; 0]; + [a_out, b_out, z_out] = stk_halfpintl (a, b); + assert (isequal (a_out, [1; -1])) + assert (isequal (b_out, [0; 2])) + assert (z_out == 1) +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/sampling/@stk_sampcrit_akg/stk_sampcrit_akg.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/@stk_sampcrit_akg/stk_sampcrit_akg.m +***** shared F, M, AKG + M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); +warning: Something went wrong during the optimization +crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt +***** test F = stk_sampcrit_akg () % ending ";" omitted on purpose, to test disp + +F = +| +| model: -- (not instantiated) +| reference_grid: -- (use current evaluation points) +| + +***** assert (isempty (F.model)) +***** assert (isempty (get (F, 'model'))) +***** assert (isempty (F.reference_grid)) +***** assert (isempty (get (F, 'reference_grid'))) +***** error F.toto +***** error get (F, 'toto') +***** error F.toto = 1.234; % field does not exist +***** error F = set (F, 'toto', 1.234); % field does not exist +***** error AKG = feval (F, 1.0); +***** test F = stk_sampcrit_akg (); F.model = M; + assert (isequal (F.model, M)); +***** test F = stk_sampcrit_akg (); F = set (F, 'model', M); + assert (isequal (F.model, M)); + assert (isequal (size (F.zr_mean), [3 1])) % n x 1 + assert (isequal (size (F.zr_std), [3 1])) % n x 1 + assert (isequal (size (F.zr_lambdamu), [4 3])) % (n+1) x n (constant mean) +***** test F.model = []; % remove model + assert (isempty (F.model)); + assert (isempty (F.zr_mean)) + assert (isempty (F.zr_std)) + assert (isempty (F.zr_lambdamu)) +***** test xr = [1 1.5 2 2.5 3]'; + F.reference_grid = xr % ending ";" omitted on purpose, to test disp + assert (isequal (F.reference_grid, xr)) + assert (isempty (F.zr_mean)) + assert (isempty (F.zr_std)) + assert (isempty (F.zr_lambdamu)) + +F = +| +| model: -- (not instantiated) +| reference_grid: <5x1 double array> +| + +***** test F.reference_grid = []; + assert (isempty (F.reference_grid)) +***** test F = stk_sampcrit_akg (); F.model = M; + assert (isequal (F.model, M)); + xr = [1 1.5 2 2.5 3]'; + F.reference_grid = xr % ending ";" omitted on purpose, to test disp + assert (isequal (F.reference_grid, xr)) + assert (isequal (size (F.zr_mean), [5 1])) % nr x 1 + assert (isequal (size (F.zr_std), [5 1])) % nr x 1 + assert (isequal (size (F.zr_lambdamu), [4 5])) % (n+1) x nr (constant mean) + +F = +| +| model: +| reference_grid: <5x1 double array> +| + +***** test F.reference_grid = []; + assert (isempty (F.reference_grid)) +***** test F = stk_sampcrit_akg (M) % ending ";" omitted on purpose, to test disp + +F = +| +| model: +| reference_grid: -- (use current evaluation points) +| + +***** assert (isequal (F.model, M)) +***** test AKG = feval (F, [1.0; 1.1; 1.2]); +***** assert (isequal (size (AKG), [3 1])) +***** assert (all (AKG >= 0)) +***** test [AKG2, zp] = feval (F, [1.0; 1.1; 1.2]); + assert (isequal (AKG2, AKG)); + assert (isa (zp, 'stk_dataframe') && isequal (size (zp), [3 2])) +***** shared F, xr + xr = [1 1.5 2 2.5 3]'; +***** test F = stk_sampcrit_akg (stk_model ()); +***** assert (isempty (F.reference_grid)) +***** test F.reference_grid = xr; +***** assert (isequal (F.reference_grid, xr)) +***** assert (isempty (F.zr_mean)) +***** assert (isempty (F.zr_std)) +***** assert (isempty (F.zr_lambdamu)) +***** error AKG = feval (F, 1.0); +***** shared F, M, xr + xr = [1 1.5 2 2.5 3]'; + M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); +warning: Something went wrong during the optimization +crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt +***** test F = stk_sampcrit_akg (M, xr); +***** assert (isequal (F.model, M)) +***** assert (isequal (F.reference_grid, xr)) +***** assert (isequal (size (F.zr_mean), [5 1])) % nr x 1 +***** assert (isequal (size (F.zr_std), [5 1])) % nr x 1 +***** assert (isequal (size (F.zr_lambdamu), [4 5])) % (n+1) x nr (constant mean) +37 tests, 37 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_vdc_rr2.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_vdc_rr2.m +***** error __stk_sampling_vdc_rr2__() % two inputs required +***** error __stk_sampling_vdc_rr2__(10) % two inputs required +***** error __stk_sampling_vdc_rr2__(10, 3, -1) % two inputs required +***** test + n = 300; j = 25; + x = __stk_sampling_vdc_rr2__(n, j); + assert(isequal(size(x), [n 1])) +***** test + x = __stk_sampling_vdc_rr2__(2000, 7); + y = double (x(1998:2000, :)); + yref = [0.849786281294525; 0.085080398941584; 0.555668634235701]; + assert(stk_isequal_tolrel(y, yref, 1e-13)); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampcrit_ehvi_eval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampcrit_ehvi_eval.m +***** shared zr, zi + zr = [1 1]; + zi = [0.25 0.75; 0.5 0.5; 0.75 0.25]; +***** test % no improvement (1 computation) + zp_mean = [0.6 0.6]; zp_std = [0 0]; + EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); + assert (stk_isequal_tolabs (EHVI, 0, 1e-12)); +***** test % guaranteed improvement (1 computation) + zp_mean = [0 0]; zp_std = [0 0]; + EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); + assert (stk_isequal_tolabs (EHVI, 10 * 0.25 ^ 2)); +***** test % no improvement again (2 computations) + zp_mean = [0.5 0.5; 0.6 0.6]; zp_std = [0 0; 0 0]; + EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); + assert (stk_isequal_tolabs (EHVI, [0; 0], 1e-12)); +***** test % no observation -> EHVI wrt zr + zp_mean = [0.6 0.6]; zp_std = 0.01 * [1 1]; zi = []; + EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); + assert (stk_isequal_tolabs (EHVI, (1 - 0.6)^2, 1e-12)); +***** test % no observation below zr -> EHVI wrt zr + zp_mean = [0.6 0.6]; zp_std = 0.01 * [1 1]; zi = [2 2]; + EHVI = stk_sampcrit_ehvi_eval (zp_mean, zp_std, zi, zr); + assert (stk_isequal_tolabs (EHVI, (1 - 0.6)^2, 1e-12)); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_randunif.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_randunif.m +***** shared x, n, dim, box + n = 10; dim = 2; box = [0, 0; 2, 2]; +***** error x = stk_sampling_randunif (); +***** test x = stk_sampling_randunif (n); +***** test x = stk_sampling_randunif (n, dim); +***** test x = stk_sampling_randunif (n, dim, box); +***** assert (isa(x, 'stk_dataframe')); +***** assert (isequal (x.colnames, {})); +***** test + cn = {'W', 'H'}; box = stk_hrect (box, cn); + x = stk_sampling_randunif (n, dim, box); + assert (isequal (x.colnames, cn)); +***** test + for dim = 1:5, + x = stk_sampling_randunif(n, dim); + assert(isequal(size(x), [n dim])); + u = double(x); u = u(:); + assert(~any(isnan(u) | isinf(u))); + assert((min(u) >= 0) && (max(u) <= 1)); + end +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_randomlhs.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_randomlhs.m +***** shared x, n, dim, box + n = 10; dim = 2; box = [0, 0; 1, 1]; +***** error x = stk_sampling_randomlhs (); +***** test x = stk_sampling_randomlhs (n); +***** test x = stk_sampling_randomlhs (n, dim); +***** test x = stk_sampling_randomlhs (n, dim, box); +***** assert (isa(x, 'stk_dataframe')); +***** assert (isequal (x.colnames, {})); +***** test + cn = {'W', 'H'}; box = stk_hrect (box, cn); + x = stk_sampling_randomlhs (n, dim, box); + assert (isequal (x.colnames, cn)); +***** test + for dim = 1:5, + x = stk_sampling_randomlhs(n, dim); + assert(isequal(size(x), [n dim])); + u = double(x); u = u(:); + assert(~any(isnan(u) | isinf(u))); + assert((min(u) >= 0) && (max(u) <= 1)); + assert(stk_is_lhs(x, n, dim)); + end +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m +***** shared F, M, EI + M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); +warning: Something went wrong during the optimization +crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt +***** test F = stk_sampcrit_ei () % ending ";" omitted on purpose, to test disp + +F = +| +| model: -- (not instantiated) +| current_minimum: Inf +| + +***** assert (isempty (F.model)) +***** assert (isempty (get (F, 'model'))) +***** assert (F.current_minimum == +inf) +***** assert (get (F, 'current_minimum') == +inf) +***** error F.toto +***** error get (F, 'toto') +***** error F.current_min = 1.234; % read-only +***** error F = set (F, 'current_min', 1.234); % read-only +***** error F.toto = 1.234; % field does not exist +***** error F = set (F, 'toto', 1.234); % field does not exist +***** error EI = feval (F, 1.0); +***** test F = stk_sampcrit_ei (); F.model = M; + assert (~ isempty (F.model)); +***** test F = stk_sampcrit_ei (); F = set (F, 'model', M); + assert (~ isempty (F.model)); +***** test F.model = []; % remove model + assert (isempty (F.model)); + assert (F.current_minimum == +inf); +***** test F = stk_sampcrit_ei (M) % ending ";" omitted on purpose, to test disp + +F = +| +| model: +| current_minimum: 1.234 +| + +***** assert (isequal (F.model, M)) +***** assert (F.current_minimum == 1.234); +***** test EI = feval (F, [1.0; 1.1; 1.2]); +***** assert (isequal (size (EI), [3 1])) +***** assert (all (EI >= 0)) +***** shared F +***** test F = stk_sampcrit_ei (stk_model ()); +***** assert (F.current_minimum == +inf); +***** error feval (F, 1.0); +24 tests, 24 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_maximinlhs.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_maximinlhs.m +***** shared x, n, dim, box, niter + n = 20; dim = 2; box = [0, 0; 1, 1]; niter = 1; +***** error x = stk_sampling_maximinlhs (); +***** test x = stk_sampling_maximinlhs (n); +***** test x = stk_sampling_maximinlhs (n, dim); +***** test x = stk_sampling_maximinlhs (n, dim, box); +***** test x = stk_sampling_maximinlhs (n, dim, box, niter); +***** assert (isa (x, 'stk_dataframe')); +***** assert (isequal (x.colnames, {})); +***** test + cn = {'W', 'H'}; box = stk_hrect (box, cn); + x = stk_sampling_maximinlhs (n, dim, box); + assert (isequal (x.colnames, cn)); +***** test + for dim = 1:5, + x = stk_sampling_randomlhs (n, dim); + assert (isequal (size (x), [n dim])); + u = double (x); u = u(:); + assert (~ any (isnan (u) | isinf (u))); + assert ((min (u) >= 0) && (max (u) <= 1)); + assert (stk_is_lhs (x, n, dim)); + end +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_nesteddesign.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_nesteddesign.m +***** shared x, n, dim, box, niter, levels + n = [23; 14; 5; 2]; dim = 2; box = [0, 0; 4, 4]; niter = 10; + levels = [10.1; 15.2; -9.3; 2.4; 17.5]; +***** error x = stk_sampling_nesteddesign (); +***** test x = stk_sampling_nesteddesign (n); +***** test x = stk_sampling_nesteddesign (n, dim); +***** test x = stk_sampling_nesteddesign (n, dim, box); +***** test x = stk_sampling_nesteddesign (n, dim, box, niter); +***** test x = stk_sampling_nesteddesign (n, dim, box, niter, levels); +***** assert ( isequal(size(x), [sum(n), dim + 1]) ); +***** assert ( isa(x, 'stk_dataframe') ); + cn = [0; cumsum(n)]; + for lev = 1:length(n), + y = x( (cn(lev) + 1):(cn(lev + 1)), 1:dim ); + assert (isequal (size (y), [n(lev) dim])); + if lev > 1 + assert ( isequal(z((end - n(lev) + 1):end, :), y) ); + end + if lev == length(n) + assert (stk_is_lhs (y, n(lev), dim, box)); + end + z = y; + end +***** assert (isequal (x.colnames{dim + 1}, 'Level')); + levels = stk_dataframe(levels, {'t'}); + box = stk_hrect(box, {'x1', 'x2', 'x3', 'x4'}); +***** test x = stk_sampling_nesteddesign (n, [], box, [], levels); +***** assert (isequal(x.colnames, {'x1', 'x2', 'x3', 'x4', 't'}) ); +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_halton_rr2.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_halton_rr2.m +***** error stk_sampling_halton_rr2 () % nargin < 1 +***** test + n = 300; d = 25; + x = stk_sampling_halton_rr2 (n, d); + assert (isequal (size (x), [n d])) +***** test + x = stk_sampling_halton_rr2 (1000, 3); + y = double (x(end, :)); + yref = [0.9052734375 0.028349336991312 0.74848]; + assert (stk_isequal_tolrel (y, yref, 1e-13)); +***** test + dim = 2; box = stk_hrect (dim); + x = stk_sampling_halton_rr2 (5, dim, box); + assert (isequal (x.colnames, {})); +***** test + dim = 2; cn = {'W', 'H'}; box = stk_hrect (dim, cn); + x = stk_sampling_halton_rr2 (5, dim, box); + assert (isequal (x.colnames, cn)); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/sampling/@stk_function/stk_function.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/@stk_function/stk_function.m +***** shared F +***** test F = stk_function () % ending ";" omitted on purpose, to test disp + +F = + +***** error [F F]; % arrays of sampling criterion objects are not supported +***** error [F; F]; % idem +***** error get (F, 'toto'); % field does not exist +***** error y = feval (F, 1.0); % not implemented for "pure" function objects +***** error dummy = F{2}; % illegal indexing +***** error dummy = F(1.0); % feval not implemented +***** error dummy = F.toto; % field does not exist +***** error F{2} = 1.234; % illegal indexing +***** error F(5) = 1.234; % illegal indexing +***** error F.toto = 1.234; % field does not exist +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_nestedlhs.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_nestedlhs.m +***** shared x, n, dim, box, niter, levels + n = [48; 12; 4; 2]; dim = 2; box = [0, 0; 4, 4]; niter = 10; + levels = [10.1; 15.2; -9.3; 2.4; 17.5]; +***** error x = stk_sampling_nestedlhs (); +***** test x = stk_sampling_nestedlhs (n); +***** test x = stk_sampling_nestedlhs (n, dim); +***** test x = stk_sampling_nestedlhs (n, dim, box); +***** test x = stk_sampling_nestedlhs (n, dim, box, niter); +***** test x = stk_sampling_nestedlhs (n, dim, box, niter, levels); +***** assert ( isequal(size(x), [sum(n), dim + 1]) ); +***** assert ( isa(x, 'stk_dataframe') ); + cn = [0; cumsum(n)]; + for lev = 1:length(n), + y = x( (cn(lev) + 1):(cn(lev + 1)), 1:dim ); + assert (isequal (size (y), [n(lev) dim])); + assert (stk_is_lhs (y, n(lev), dim, box)); + if lev > 1 + assert ( isequal(z((end - n(lev) + 1):end, :), y) ); + end + z = y; + end +***** assert (isequal (x.colnames{dim + 1}, 'Level')); + levels = stk_dataframe(levels, {'t'}); + box = stk_hrect(box, {'x1', 'x2', 'x3', 'x4'}); +***** test x = stk_sampling_nestedlhs (n, [], box, [], levels); +***** assert (isequal(x.colnames, {'x1', 'x2', 'x3', 'x4', 't'}) ); +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m +***** shared F, M, EQI + M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); +warning: Something went wrong during the optimization +crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt +***** test F = stk_sampcrit_eqi () % ending ";" omitted on purpose, to test disp + +F = +| +| model: -- (not instantiated) +| quantile_order: 0.5 +| point_batch_size: 1 +| current_minimum: Inf +| + +***** assert (isempty (F.model)) +***** assert (isempty (get (F, 'model'))) +***** assert (F.quantile_order == 0.5) +***** assert (get (F, 'quantile_order') == 0.5) +***** assert (F.current_minimum == +inf) +***** assert (get (F, 'current_minimum') == +inf) +***** error F.toto +***** error get (F, 'toto') +***** error F.current_min = 1.234; % read-only +***** error F = set (F, 'current_min', 1.234); % read-only +***** error F.toto = 1.234; % field does not exist +***** error F = set (F, 'toto', 1.234); % field does not exist +***** test F.quantile_order = 0.9; assert (F.quantile_order == 0.9) +***** test F = set (F, 'quantile_order', 0.8); assert (F.quantile_order == 0.8) +***** error F.quantile_order = 1.1; +***** error F.quantile_order = -0.1; +***** error F.quantile_order = [1 2]; +***** error F.current_minimum = 3.333; % read-only +***** error F.quantile_value = 2.222; % read-only +***** error EQI = feval (F, 1.0); +***** test F = stk_sampcrit_eqi (); F.model = M; + assert (~ isempty (F.model)); +***** test F = stk_sampcrit_eqi (); F = set (F, 'model', M); + assert (~ isempty (F.model)); +***** test F.model = []; % remove model + assert (isempty (F.model)); + assert (F.current_minimum == +inf); +***** test F = stk_sampcrit_eqi (M) % ending ";" omitted on purpose, to test disp + +F = +| +| model: +| quantile_order: 0.5 +| point_batch_size: 1 +| current_minimum: 1.234 +| + +***** assert (isequal (F.model, M)) +***** assert (stk_isequal_tolrel (F.current_minimum, 1.234, 10 * eps)); +***** test EQI = feval (F, [1.0; 1.1; 1.2]); +***** assert (isequal (size (EQI), [3 1])) +***** assert (all (EQI >= 0)) +***** test F.quantile_order = 0.9; assert (F.quantile_order == 0.9) +***** shared F, M, EQI + prior_model = stk_model (); + prior_model.lognoisevariance = 0.678; + M = stk_model_gpposterior (prior_model, [1 2 3]', [1.234 3 2]'); +***** test F = stk_sampcrit_eqi (M); +***** assert (isequal (F.model, M)) +***** assert (stk_isequal_tolrel (F.current_minimum, 2.077997, 1e-5)); +***** test EQI = feval (F, [1.0; 1.1; 1.2]); +***** assert (isequal (size (EQI), [3 1])) +***** assert (all (EQI >= 0)) +***** test F.quantile_order = 0.9; assert (F.quantile_order == 0.9) +***** shared F +***** test F = stk_sampcrit_eqi (stk_model ()); +***** assert (F.current_minimum == +inf); +***** error feval (F, 1.0); +***** shared F, M + M = stk_model_gpposterior (stk_model (), [1 2 3]', [1.234 3 2]'); +warning: Something went wrong during the optimization +crit0 = 2.594852, crit_opt = 2.594852: crit0 < crit_opt +***** error F = stk_sampcrit_eqi (M, [], 0); +***** error F = stk_sampcrit_eqi (M, [], 1.5); +***** error F = stk_sampcrit_eqi (M, [], nan); +***** error F = stk_sampcrit_eqi (M, [], [10 20]); +***** test F = stk_sampcrit_eqi (M, [], 10); +***** assert (isequal (F.quantile_order, 0.5)); +***** assert (isequal (F.point_batch_size, 10)); +***** error F = stk_sampcrit_eqi (M, 0.8, 0); +***** error F = stk_sampcrit_eqi (M, 0.8, 1.5); +***** error F = stk_sampcrit_eqi (M, 0.8, nan); +***** error F = stk_sampcrit_eqi (M, 0.8, [10 20]); +***** test F = stk_sampcrit_eqi (M, 0.8, 5); +***** assert (isequal (F.quantile_order, 0.8)); +***** assert (isequal (F.point_batch_size, 5)); +***** shared F, M, EQI + prior_model = stk_model (); + prior_model.lognoisevariance = 0.678; + M = stk_model_gpposterior (prior_model, [1 2 3]', [1.234 3 2]'); + F = stk_sampcrit_eqi (M); +***** test F.point_batch_size = 10; % numeric +***** assert (isequal (F.point_batch_size, 10)) +***** test EQI = feval (F, [1.0; 1.1; 1.2]); +***** test F.point_batch_size = @(x, n) 100 - n; % function handle +***** assert (isa (F.point_batch_size, 'function_handle')) +***** test EQI = feval (F, [1.0; 1.1; 1.2]); +***** test F.point_batch_size = 'sin'; % char +***** assert (isa (F.point_batch_size, 'function_handle')) +63 tests, 63 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_regulargrid.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_regulargrid.m +***** shared x, n, dim, box + n = 9; dim = 2; box = [0, 0; 1, 1]; +***** error x = stk_sampling_regulargrid (); +***** test x = stk_sampling_regulargrid (n); +***** test x = stk_sampling_regulargrid (n, dim); +***** test x = stk_sampling_regulargrid (n, dim, box); +***** assert (isa (x, 'stk_dataframe')); +***** assert (isa (x, 'stk_factorialdesign')); +***** assert (isequal (x.colnames, {})); +***** test + cn = {'W', 'H'}; box = stk_hrect (box, cn); + x = stk_sampling_regulargrid (n, dim, box); + assert (isequal (x.colnames, cn)); +***** test + for dim = 1:3, + n = 3^dim; + x = stk_sampling_regulargrid(n, dim); + assert(isequal(size(x), [n dim])); + u = double(x); u = u(:); + assert(~any(isnan(u) | isinf(u))); + assert((min(u) >= 0) && (max(u) <= 1)); + end +***** test + nn = [3 4 5]; + for dim = 1:3, + x = stk_sampling_regulargrid(nn(1:dim), dim); + assert(isequal(size(x), [prod(nn(1:dim)) dim])); + u = double(x); u = u(:); + assert(~any(isnan(u) | isinf(u))); + assert((min(u) >= 0) && (max(u) <= 1)); + end +10 tests, 10 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_olhs.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/sampling/stk_sampling_olhs.m +***** shared x, n, d, box, permut + n = 5; d = 2; box = [0 0; 1, 1]; permut = 1:2; +***** error x = stk_sampling_olhs(); +***** test x = stk_sampling_olhs(n); +***** test x = stk_sampling_olhs(n, d); +***** test x = stk_sampling_olhs(n, d, box); +***** test x = stk_sampling_olhs(n, d, box, permut); +***** error x = stk_sampling_olhs(n, d, box, permut, pi); +***** assert (isa (x, 'stk_dataframe')); +***** assert (isequal (x.colnames, {})); +***** test + cn = {'W', 'H'}; box = stk_hrect (box, cn); + x = stk_sampling_olhs (n, d, box); + assert (isequal (x.colnames, cn)); +***** test + for r = 1:5 + + n = 2 ^ (r + 1) + 1; d = 2 * r; + x = stk_sampling_olhs (n, d); + + assert (isequal (size (x), [n d])); + + box = repmat ([-1; 1], 1, d); + assert (stk_is_lhs (x, n, d, box)); + + x = double (x); w = x' * x; + assert (stk_isequal_tolabs (w / w(1,1), eye (d))); + + end +10 tests, 10 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/vertcat.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/vertcat.m +***** shared d, x, y + d = 10; + x = stk_hrect (d); + y = double (x); +***** test + z = vertcat (x, x); + assert (isequal (size (z), [4 d])); + assert (strcmp (class (z), 'stk_dataframe')); +***** test + z = vertcat (x, y); + assert (isequal (size (z), [4 d])); + assert (strcmp (class (z), 'stk_dataframe')); +***** test + z = vertcat (y, x); + assert (isequal (size (z), [4 d])); + assert (strcmp (class (z), 'stk_dataframe')); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/stk_hrect.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_hrect.m +***** test stk_test_class ('stk_hrect') +***** shared dom +***** test dom = stk_hrect ([-1; 1], {'x'}); +***** assert (isequal (dom.colnames, {'x'})) +***** assert (isequal (dom.rownames, {'lower_bounds'; 'upper_bounds'})) +***** assert (isequal (dom.data, [-1; 1])) +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/stk_rescale.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_rescale.m +***** shared x + x = rand (10, 4); + y = stk_rescale (x, [], []); + assert (stk_isequal_tolabs (x, y)); +***** test + y = stk_rescale(0.5, [], [0; 2]); + assert (stk_isequal_tolabs (y, 1.0)); +***** test + y = stk_rescale (0.5, [0; 1], [0; 2]); + assert (stk_isequal_tolabs (y, 1.0)); +***** test + y = stk_rescale (0.5, [0; 2], []); + assert (stk_isequal_tolabs (y, 0.25)); +***** test + y = stk_rescale (0.5, [0; 2], [0; 1]); + assert (stk_isequal_tolabs (y, 0.25)); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/stk_dataframe.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_dataframe.m ***** shared x, cn, rn, y, cn2, rn2 cn = {'x' 'y'}; - rn = {'a'; 'b'; 'c'; 'd'}; - x = stk_factorialdesign ({1:2, 1:2}, cn, rn); + rn = {'lower_bounds'; 'upper_bounds'}; + x = stk_hrect ([0 0; 1 1], cn); cn2 = {'xx' 'yy'}; - rn2 = {'aa'; 'bb'; 'cc'; 'dd'}; + rn2 = {'aa'; 'bb'}; ***** test y = stk_dataframe (x); ***** assert (strcmp (class (y), 'stk_dataframe')) ***** assert (isequal (y.colnames, cn)) @@ -5213,40 +5058,89 @@ ***** assert (isequal (y.colnames, {})) ***** assert (isequal (y.rownames, rn2)) 20 tests, 20 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_factorialdesign/stk_boundingbox.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_boundingbox.m -***** shared x, y, cn - cn = {'a', 'b', 'c'}; - x = stk_factorialdesign ({[1 2], [3 4 5], [0 2 8]}, cn); -***** error y = stk_boundingbox (); -***** test y = stk_boundingbox (x); -***** assert (isequal (y, stk_hrect ([1 3 0; 2 5 8], cn))); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_factorialdesign/stk_normalize.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_normalize.m +[inst/arrays/@stk_hrect/ismember.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/ismember.m +***** shared n, box + n = 5; + box = stk_hrect (n); +***** assert (ismember (box(1, :), box)) +***** assert (ismember (box(2, :), box)) +***** assert (ismember (.5 * ones (1, 5), box)) +***** assert (~ ismember (box(1, :) - 1, box)) +***** assert (~ ismember (box(2, :) + 1, box)) ***** test - x = stk_factorialdesign ({[1 2], [5 6]}); - y = stk_factorialdesign ({[0 1], [0 1]}); - assert (stk_isequal_tolabs (stk_normalize (x), y)) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_factorialdesign/ismember.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/ismember.m -***** shared A, B, BB, b - - i_max = 10; n = 100; d = 5; - - A = randi (i_max, n, d); - - levels = repmat ({1:i_max}, 1, d); - levels{4} = 1:2:i_max; - B = stk_factorialdesign (levels); + y = double (box); y = [y; y + 2]; + assert (isequal (ismember (y, box), [1; 1; 0; 0])) +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/stk_normalize.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_normalize.m +***** shared x, box, y1, y2, y3, y4 + n = 5; box = stk_hrect ([2; 3]); + x = 2 + rand (n, 1); +***** error y1 = stk_normalize (); +***** test y2 = stk_normalize (x); +***** test y3 = stk_normalize (x, box); +***** test assert (~ any ((y2 < -10 * eps) | (y2 > 1 + 10 * eps))); +***** test assert (~ any ((y3 < -10 * eps) | (y3 > 1 + 10 * eps))); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/subsref.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/subsref.m +***** test + B = stk_hrect ([0 0 0 0; 1 2 3 4]); + B = B(:, [1 3 4]); + assert (strcmp (class (B), 'stk_hrect')); + assert (isequal (double (B), [0 0 0; 1 3 4])); +***** test + B = stk_hrect ([0 0 0 0; 1 2 3 4]); + B = B(1, :); + assert (strcmp (class (B), 'stk_dataframe')); + assert (isequal (double (B), [0 0 0 0])); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/horzcat.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/horzcat.m +***** shared d, x1, x2, x3 + d = 10; + x1 = stk_hrect (d); + x2 = double (x1); + x3 = [1:d; 0:(d-1)]; % illegal bounds +***** test + y1 = horzcat (x1, x1); + assert (isequal (size (y1), [2 2*d])); + assert (strcmp (class (y1), 'stk_hrect')); +***** test + y2 = horzcat (x1, x2); + assert (isequal (size (y2), [2 2*d])); + assert (strcmp (class (y2), 'stk_hrect')); +***** test + y3 = horzcat (x2, x1); + assert (isequal (size (y3), [2 2*d])); + assert (strcmp (class (y3), 'stk_hrect')); +***** test + lastwarn ('') + y4 = horzcat (x1, x3); + assert (isequal (size (y4), [2 2*d])); + assert (strcmp (class (y4), 'stk_dataframe')); + [warn_msg, warn_id] = lastwarn (); + assert (strcmp (warn_id, 'STK:stk_hrect:horzcat:IllegalBounds')) +warning: Illegal bounds, the result is not an stk_hrect object. +warning: called from + horzcat at line 47 column 9 + __test__ at line 4 column 5 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 526 column 31 - BB = double (B); -***** test b = ismember (A, B); -***** assert (isequal (b, ismember (A, BB))); -***** test b = ismember (A, B, 'rows'); -***** assert (isequal (b, ismember (A, BB, 'rows'))); 4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/stk_boundingbox.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_boundingbox.m +***** shared x, y + lb = rand (1, 5); + ub = lb + 1; + cn = {'a', 'b', 'c', 'd', 'e'}; + x = stk_hrect ([lb; ub], cn); +***** error y = stk_boundingbox (); +***** test y = stk_boundingbox (x); +***** assert (isequal (y, x)); +3 tests, 3 passed, 0 known failure, 0 skipped [inst/arrays/@stk_factorialdesign/uminus.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/uminus.m ***** test @@ -5254,15 +5148,43 @@ y = stk_factorialdesign ({-(1:3), -(1:2)}); assert (isequal (-x, y)) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_factorialdesign/fieldnames.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/fieldnames.m +[inst/arrays/@stk_factorialdesign/stk_rescale.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_rescale.m ***** test - x = stk_factorialdesign ({0:1, 3:5}, {'u' 'v'}); - fn1 = sort (fieldnames (x)); - fn2 = {'colnames'; 'data'; 'info'; 'levels'; ... - 'rownames'; 'sample_size'; 'stk_dataframe'; 'u'; 'v'}; - assert (isequal (fn1, fn2)); + x = stk_factorialdesign ({[1 2], [5 6]}); + y = stk_factorialdesign ({[0 3], [0 3]}); + z = stk_rescale (x, [1 5; 2 6], [0 0; 3 3]); + assert (stk_isequal_tolabs (y, z)) 1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/stk_dataframe.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_dataframe.m +***** shared x, cn, rn, y, cn2, rn2 + cn = {'x' 'y'}; + rn = {'a'; 'b'; 'c'; 'd'}; + x = stk_factorialdesign ({1:2, 1:2}, cn, rn); + cn2 = {'xx' 'yy'}; + rn2 = {'aa'; 'bb'; 'cc'; 'dd'}; +***** test y = stk_dataframe (x); +***** assert (strcmp (class (y), 'stk_dataframe')) +***** assert (isequal (y.colnames, cn)) +***** assert (isequal (y.rownames, rn)) +***** test y = stk_dataframe (x, cn2); +***** assert (strcmp (class (y), 'stk_dataframe')) +***** assert (isequal (y.colnames, cn2)) +***** assert (isequal (y.rownames, rn)) +***** test y = stk_dataframe (x, cn2, rn2); +***** assert (strcmp (class (y), 'stk_dataframe')) +***** assert (isequal (y.colnames, cn2)) +***** assert (isequal (y.rownames, rn2)) +***** test y = stk_dataframe (x, [], rn2); +***** assert (strcmp (class (y), 'stk_dataframe')) +***** assert (isequal (y.colnames, cn)) +***** assert (isequal (y.rownames, rn2)) +***** test y = stk_dataframe (x, {}, rn2); +***** assert (strcmp (class (y), 'stk_dataframe')) +***** assert (isequal (y.colnames, {})) +***** assert (isequal (y.rownames, rn2)) +20 tests, 20 passed, 0 known failure, 0 skipped [inst/arrays/@stk_factorialdesign/ndgrid.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/ndgrid.m ***** shared data @@ -5287,6 +5209,40 @@ x = ndgrid (data); assert (isequal (x, [1; 2; 3])); 6 tests, 6 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/ismember.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/ismember.m +***** shared A, B, BB, b + + i_max = 10; n = 100; d = 5; + + A = randi (i_max, n, d); + + levels = repmat ({1:i_max}, 1, d); + levels{4} = 1:2:i_max; + B = stk_factorialdesign (levels); + + BB = double (B); +***** test b = ismember (A, B); +***** assert (isequal (b, ismember (A, BB))); +***** test b = ismember (A, B, 'rows'); +***** assert (isequal (b, ismember (A, BB, 'rows'))); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/stk_normalize.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_normalize.m +***** test + x = stk_factorialdesign ({[1 2], [5 6]}); + y = stk_factorialdesign ({[0 1], [0 1]}); + assert (stk_isequal_tolabs (stk_normalize (x), y)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/fieldnames.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/fieldnames.m +***** test + x = stk_factorialdesign ({0:1, 3:5}, {'u' 'v'}); + fn1 = sort (fieldnames (x)); + fn2 = {'colnames'; 'data'; 'info'; 'levels'; ... + 'rownames'; 'sample_size'; 'stk_dataframe'; 'u'; 'v'}; + assert (isequal (fn1, fn2)); +1 test, 1 passed, 0 known failure, 0 skipped [inst/arrays/@stk_factorialdesign/stk_factorialdesign.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_factorialdesign.m ***** test stk_test_class ('stk_factorialdesign') @@ -5434,18 +5390,15 @@ ***** assert (strcmp (class (x'), 'stk_dataframe')) ***** assert (strcmp (class (x.'), 'stk_dataframe')) 60 tests, 60 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_factorialdesign/stk_rescale.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_rescale.m -***** test - x = stk_factorialdesign ({[1 2], [5 6]}); - y = stk_factorialdesign ({[0 3], [0 3]}); - z = stk_rescale (x, [1 5; 2 6], [0 0; 3 3]); - assert (stk_isequal_tolabs (y, z)) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/generic/stk_get_sample_size.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_get_sample_size.m -***** assert (stk_get_sample_size ([1 2; 3 4; 5 6]) == 3); -1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/stk_boundingbox.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_boundingbox.m +***** shared x, y, cn + cn = {'a', 'b', 'c'}; + x = stk_factorialdesign ({[1 2], [3 4 5], [0 2 8]}, cn); +***** error y = stk_boundingbox (); +***** test y = stk_boundingbox (x); +***** assert (isequal (y, stk_hrect ([1 3 0; 2 5 8], cn))); +3 tests, 3 passed, 0 known failure, 0 skipped [inst/arrays/generic/stk_feval.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_feval.m ***** shared f, xt @@ -5497,29 +5450,6 @@ z = stk_feval ({@sin, @cos, G, F, 'tan'}, t, [], [], false); assert (isequal (z.colnames, {'sin' 'cos' 'F3' 'F4_1' 'F4_2' 'tan'})); 13 tests, 13 passed, 0 known failure, 0 skipped -[inst/arrays/generic/stk_boundingbox.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_boundingbox.m -***** shared x, y, cn - cn = {'a', 'b', 'c'}; - x = [0 3 2; 1 4 1; 7 0 2]; -***** error y = stk_boundingbox (); -***** test y = stk_boundingbox (x); -***** assert (isequal (y.data, [0 0 1; 7 4 2])); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/generic/stk_normalize.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_normalize.m -***** shared x, box, y1, y2, y3, y4 - n = 5; box = [2; 3]; x = box(1) + diff (box) * rand (n, 1); -***** error y1 = stk_normalize (); -***** test y2 = stk_normalize (x); -***** test y3 = stk_normalize (x, box); -***** test assert (~ any ((y2 < -10 * eps) | (y2 > 1 + 10 * eps))); -***** test assert (~ any ((y3 < -10 * eps) | (y3 > 1 + 10 * eps))); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/arrays/generic/stk_length.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_length.m -***** assert (isequal (stk_length ([1 2; 3 4; 5 6]), 3)); -1 test, 1 passed, 0 known failure, 0 skipped [inst/arrays/generic/stk_rescale.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_rescale.m ***** shared x @@ -5539,29 +5469,312 @@ y = stk_rescale (0.5, [0; 2], [0; 1]); assert (stk_isequal_tolabs (y, 0.25)); 4 tests, 4 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/log2.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log2.m +[inst/arrays/generic/stk_normalize.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_normalize.m +***** shared x, box, y1, y2, y3, y4 + n = 5; box = [2; 3]; x = box(1) + diff (box) * rand (n, 1); +***** error y1 = stk_normalize (); +***** test y2 = stk_normalize (x); +***** test y3 = stk_normalize (x, box); +***** test assert (~ any ((y2 < -10 * eps) | (y2 > 1 + 10 * eps))); +***** test assert (~ any ((y3 < -10 * eps) | (y3 > 1 + 10 * eps))); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/arrays/generic/stk_get_sample_size.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_get_sample_size.m +***** assert (stk_get_sample_size ([1 2; 3 4; 5 6]) == 3); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/generic/stk_boundingbox.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_boundingbox.m +***** shared x, y, cn + cn = {'a', 'b', 'c'}; + x = [0 3 2; 1 4 1; 7 0 2]; +***** error y = stk_boundingbox (); +***** test y = stk_boundingbox (x); +***** assert (isequal (y.data, [0 0 1; 7 4 2])); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/generic/stk_length.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_length.m +***** assert (isequal (stk_length ([1 2; 3 4; 5 6]), 3)); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/isfinite.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/isfinite.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = log2 (x); - assert (strcmp (class (v), class (u)) && isequal (v, log2 (u))) + u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isfinite (x); + assert (islogical (v) && isequal (v, isfinite (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/double.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/double.m +[inst/arrays/@stk_dataframe/atanh.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/atanh.m ***** test - u = rand(4, 3); + u = rand (4, 3); x = stk_dataframe (u); v = atanh (x); + assert (strcmp (class (v), class (u)) && isequal (v, atanh (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/var.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/var.m +***** shared x1, df1 + x1 = rand(9, 3); + df1 = stk_dataframe(x1, {'a', 'b', 'c'}); +***** assert (isequal (var(df1), var(x1))) +***** assert (isequal (var(df1, 0, 1), var(x1))) +***** assert (isequal (var(df1, 0, 2), var(x1, 0, 2))) +***** assert (isequal (var(df1, 1), var(x1, 1))) +***** assert (isequal (var(df1, 1, 1), var(x1, 1))) +***** assert (isequal (var(df1, 1, 2), var(x1, 1, 2))) +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/cat.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cat.m +***** shared u, v, x, y + u = rand(3, 2); + v = rand(3, 2); x = stk_dataframe(u); - v = double(x); - assert (strcmp(class(v), 'double') && isequal(v, u)) + y = stk_dataframe(v); +***** test % vertical + z = cat(1, x, y); + assert(isa(z, 'stk_dataframe')); + assert(isequal(double(z), [u; v])); +***** error z = cat(3, x, y); +***** test % horizontal + y = stk_dataframe(v, {'y1' 'y2'}); + z = cat(2, x, y); + assert(isa(z, 'stk_dataframe')); + assert(isequal(double(z), [u v])); + assert(all(strcmp(z.colnames, {'' '' 'y1' 'y2'}))); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/std.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/std.m +***** shared x1, df1 + x1 = rand(9, 3); + df1 = stk_dataframe(x1, {'a', 'b', 'c'}); +***** assert (isequal (std(df1), std(x1))) +***** assert (isequal (std(df1, 0, 1), std(x1))) +***** assert (isequal (std(df1, 0, 2), std(x1, 0, 2))) +***** assert (isequal (std(df1, 1), std(x1, 1))) +***** assert (isequal (std(df1, 1, 1), std(x1, 1))) +***** assert (isequal (std(df1, 1, 2), std(x1, 1, 2))) +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/realpow.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/realpow.m +***** test stk_test_dfbinaryop(@realpow, rand(7, 2), .1 + rand(7, 2)); +***** test stk_test_dfbinaryop(@realpow, rand(7, 2), .1); +***** error stk_test_dfbinaryop(@realpow, rand(7, 2), .1 + rand(7, 3)); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/log.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log.m ***** test - u = (rand(4, 3) < 0.5); - x = stk_dataframe(u); - v = double(x); - assert (strcmp(class(v), 'double') && isequal(v, double(u))) + u = rand (4, 3); x = stk_dataframe (u); v = log (x); + assert (strcmp (class (v), class (u)) && isequal (v, log (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/acosd.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/acosd.m ***** test - u = uint8 (rand (4, 3) * 5); - x = stk_dataframe(u); - v = double(x); - assert (strcmp(class(v), 'double') && isequal(v, double(u))) + u = rand (4, 3); x = stk_dataframe (u); v = acosd (x); + assert (strcmp (class (v), class (u)) && isequal (v, acosd (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/cosh.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cosh.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = cosh (x); + assert (strcmp (class (v), class (u)) && isequal (v, cosh (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/minus.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/minus.m +***** test stk_test_dfbinaryop(@minus, rand(7, 2), rand(7, 2)); +***** test stk_test_dfbinaryop(@minus, rand(7, 2), pi); +***** error stk_test_dfbinaryop(@minus, rand(7, 2), rand(7, 3)); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/stk_sprintf.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_sprintf.m +***** shared x, fmt + fmt = stk_disp_getformat (); + x = stk_dataframe (rand (3, 2)); +***** test format rat; disp (x); + : -------- -------- + * : 0.535672 0.066005 + * : 0.176443 0.689288 + * : 0.379983 0.059900 +***** test format long; disp (x); + : ---------------- ---------------- + * : 0.53567221395513 0.06600462772327 + * : 0.17644306840613 0.68928806388515 + * : 0.37998323179723 0.05990019894080 +***** test format short; disp (x); format (fmt); + : -------- -------- + * : 0.535672 0.066005 + * : 0.176443 0.689288 + * : 0.379983 0.059900 +***** test disp (stk_dataframe (zeros (0, 1))) + Empty data frame with 0 rows and 0 columns +***** test disp (stk_dataframe (zeros (0, 2))) + Empty data frame with 0 rows and 0 columns +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/ldivide.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/ldivide.m +***** test stk_test_dfbinaryop(@ldivide, 1 + rand(7, 2), rand(7, 2)); +***** test stk_test_dfbinaryop(@ldivide, 1 + rand(7, 2), pi); +***** error stk_test_dfbinaryop(@ldivide, 1 + rand(7, 2), rand(7, 3)); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/vertcat.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/vertcat.m +***** shared u, v + u = rand (3, 2); + v = rand (3, 2); +***** test + x = stk_dataframe (u); + y = stk_dataframe (v); + z = vertcat (x, y); + assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); +***** test % the same, with row names this time + x = stk_dataframe (u, {}, {'a'; 'b'; 'c'}); + y = stk_dataframe (v, {}, {'d'; 'e'; 'f'}); + z = vertcat (x, y); + assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); + assert (all (strcmp (z.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'}))); +***** test % the same, with row names only for the first argument + x = stk_dataframe (u, {}, {'a'; 'b'; 'c'}); + y = stk_dataframe (v); + z = vertcat (x, y); + assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); +***** test % incompatible variable names + u = rand (3, 1); x = stk_dataframe (u, {'x'}); + v = rand (3, 1); y = stk_dataframe (v, {'y'}); + z = vertcat (x, y); + assert (isequal (z.colnames, {})); +warning: Incompatible column names ! +The output of vertcat will have no column names. +warning: called from + vertcat at line 82 column 9 + __test__ at line 5 column 4 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 758 column 31 + +***** test + x = stk_dataframe (u); + z = vertcat (x, v); + assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); +***** test % the same, with row names for the first argument + x = stk_dataframe (u, {}, {'a'; 'b'; 'c'}); + z = vertcat (x, v); + assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); +***** test + y = stk_dataframe (v); + z = vertcat (u, y); + assert (isa (z, 'stk_dataframe') && (isequal (double (z), [u; v]))); +***** test + x = stk_dataframe (u); + y = stk_dataframe (v); + z = vertcat (x, y, u, v); + assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v; u; v])); +***** shared x, y + x = stk_dataframe (rand (2, 3), {'a', 'b', 'c'}); + y = stk_dataframe (rand (3, 2), {'a', 'b'}); + y = horzcat (y, rand(3, 1)); % last column name is missing +***** test + z = vertcat (x, y); + assert (isequal (z.colnames, {'a' 'b' 'c'})) +***** test + z = vertcat (y, x); + assert (isequal (z.colnames, {'a' 'b' 'c'})) +10 tests, 10 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/plot.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/plot.m +***** test % plot with x as a vector and z as a (univariate) dataframe + x = linspace(0, 2*pi, 30)'; + z = stk_dataframe(sin(x)); + figure; plot(x, z); close(gcf); +warning: using the gnuplot graphics toolkit is discouraged + +The gnuplot graphics toolkit is not actively maintained and has a number +of limitations that are unlikely to be fixed. Communication with gnuplot +uses a one-directional pipe and limited information is passed back to the +Octave interpreter so most changes made interactively in the plot window +will not be reflected in the graphics properties managed by Octave. For +example, if the plot window is closed with a mouse click, Octave will not +be notified and will not update its internal list of open figure windows. +The qt toolkit is recommended instead. +***** test % plot with x as a vector and z as a (multivariate) dataframe + x = linspace(0, 2*pi, 30)'; + z = stk_dataframe([sin(x) cos(x)], {'sin' 'cos'}); + figure; plot(x, z); close(gcf); +***** test % plot with x as a dataframe and z as a vector + x = stk_dataframe(linspace(0, 2*pi, 30)'); + z = sin(double(x)); + figure; plot(x, z); close(gcf); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/sqrt.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sqrt.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = sqrt (x); + assert (strcmp (class (v), class (u)) && isequal (v, sqrt (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/length.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/length.m +***** error length (stk_dataframe ([1 2; 3 4; 5 6])) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/tanh.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/tanh.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = tanh (x); + assert (strcmp (class (v), class (u)) && isequal (v, tanh (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/min.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/min.m +***** test stk_test_dfbinaryop ('min', rand(7, 2), rand(7, 2)); +***** test stk_test_dfbinaryop ('min', rand(7, 2), pi); +***** error stk_test_dfbinaryop ('min', rand(7, 2), rand(7, 3)); +***** shared x1, df1 + x1 = rand(9, 3); + df1 = stk_dataframe(x1, {'a', 'b', 'c'}); +***** assert (isequal (min(df1), min(x1))) +***** assert (isequal (min(df1, [], 1), min(x1))) +***** assert (isequal (min(df1, [], 2), min(x1, [], 2))) +***** error (min(df1, df1, 2)) +***** test + x = stk_dataframe ([5; 2; 4]); + [M, k] = min (x); + assert ((M == 2) && (k == 2)); +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/asind.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/asind.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = asind (x); + assert (strcmp (class (v), class (u)) && isequal (v, asind (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/mldivide.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mldivide.m +***** test + x1_data = [57 7; 2 0]; + x1 = stk_dataframe (x1_data, {'x' 'y'}, {'a'; 'b'}); + x2_data = [8 7; 2 0]; + x2 = stk_dataframe (x2_data, {'w' 'z'}, {'a'; 'b'}); + y = x2 \ x1; + assert (stk_isequal_tolabs (y, ... + stk_dataframe ([1 0; 7 1], {'x'; 'y'}, {'w'; 'z'}))); +***** shared x_data, x, y_data, y + x_data = [3 3; 6 3; 9 12]; + y_data = [1 1; 2 1; 3 4]; + x = stk_dataframe (x_data, {'x' 'y'}, {'a'; 'b'; 'c'}); +***** test y = 3 \ x; +***** assert (isequal (y, stk_dataframe (y_data, {'x' 'y'}, {'a'; 'b'; 'c'}))); +***** error y = x \ 3; +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/acos.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/acos.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = acos (x); + assert (strcmp (class (v), class (u)) && isequal (v, acos (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/unique.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/unique.m +***** test + cn = {'u' 'v' 'w'}; x = stk_dataframe (rand (4, 3), cn); + y = [x; x]; z = unique (y, 'rows'); + assert (isequal (z.colnames, cn)); + assert (isequal (z.data, unique (x.data, 'rows'))); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/power.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/power.m +***** test stk_test_dfbinaryop(@power, rand(7, 2), .1 + rand(7, 2)); +***** test stk_test_dfbinaryop(@power, rand(7, 2), .1); +***** error stk_test_dfbinaryop(@power, rand(7, 2), .1 + rand(7, 3)); 3 tests, 3 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/subsasgn.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/subsasgn.m @@ -5703,101 +5916,45 @@ ***** test x.rownames{2} = 'b'; ***** assert (isequal (x.rownames, {''; 'b'; ''})); 37 tests, 37 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/power.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/power.m -***** test stk_test_dfbinaryop(@power, rand(7, 2), .1 + rand(7, 2)); -***** test stk_test_dfbinaryop(@power, rand(7, 2), .1); -***** error stk_test_dfbinaryop(@power, rand(7, 2), .1 + rand(7, 3)); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/horzcat.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/horzcat.m -***** shared u, v - u = rand(3, 2); - v = rand(3, 2); -***** test - x = stk_dataframe(u, {'x1' 'x2'}); - y = stk_dataframe(v, {'y1' 'y2'}); - z = horzcat (x, y); - assert(isa(z, 'stk_dataframe') && isequal(double(z), [u v])); - assert(all(strcmp(z.colnames, {'x1' 'x2' 'y1' 'y2'}))); -***** test - x = stk_dataframe(u, {'x1' 'x2'}, {'a'; 'b'; 'c'}); - y = stk_dataframe(v, {'y1' 'y2'}); - z = horzcat (x, y); - assert(isa(z, 'stk_dataframe') && isequal(double(z), [u v])); - assert(all(strcmp(z.colnames, {'x1' 'x2' 'y1' 'y2'}))); - assert(all(strcmp(z.rownames, {'a'; 'b'; 'c'}))); -***** test - x = stk_dataframe(u, {'x1' 'x2'}); - y = stk_dataframe(v, {'y1' 'y2'}, {'a'; 'b'; 'c'}); - z = horzcat (x, y); - assert(isa(z, 'stk_dataframe') && isequal(double(z), [u v])); - assert(all(strcmp(z.colnames, {'x1' 'x2' 'y1' 'y2'}))); - assert(all(strcmp(z.rownames, {'a'; 'b'; 'c'}))); -***** test % incompatible row names - x = stk_dataframe (u, {'x1' 'x2'}, {'a'; 'b'; 'c'}); - y = stk_dataframe (v, {'y1' 'y2'}, {'a'; 'b'; 'd'}); - z = horzcat (x, y); - assert (isequal (z.rownames, {})); -warning: Incompatible row names ! -The output of horzcat will have no row names. -warning: called from - horzcat at line 73 column 9 - __test__ at line 5 column 4 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 550 column 31 - -***** test - x = stk_dataframe (u); - z = horzcat (x, v); - assert (isa (z, 'stk_dataframe') && isequal (double (z), [u v])); -***** test - y = stk_dataframe (v); - z = horzcat (u, y); - assert (isa (z, 'stk_dataframe') && isequal (double (z), [u v])); -***** test - x = stk_dataframe(u, {'x1' 'x2'}); - y = stk_dataframe(v, {'y1' 'y2'}); - z = horzcat (x, y, u, v); - assert(isa(z, 'stk_dataframe') && isequal(double(z), [u v u v])); -7 tests, 7 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/disp.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/disp.m -***** shared x, fmt - fmt = stk_disp_getformat (); - x = stk_dataframe (rand (3, 2)); -***** test format rat; disp (x); - : -------- -------- - * : 0.399389 0.974391 - * : 0.596866 0.465000 - * : 0.079898 0.040732 -***** test format long; disp (x); - : ---------------- ---------------- - * : 0.39938875821243 0.97439063615854 - * : 0.59686622292816 0.46500039284149 - * : 0.07989829918595 0.04073177607578 -***** test format short; disp (x); format (fmt); - : -------- -------- - * : 0.399389 0.974391 - * : 0.596866 0.465000 - * : 0.079898 0.040732 -***** test disp (stk_dataframe (zeros (0, 1))) - Empty data frame with 0 rows and 0 columns -***** test disp (stk_dataframe (zeros (0, 2))) - Empty data frame with 0 rows and 0 columns -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/log10.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log10.m +[inst/arrays/@stk_dataframe/abs.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/abs.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = log10 (x); - assert (strcmp (class (v), class (u)) && isequal (v, log10 (u))) + u = rand (4, 3); x = stk_dataframe (u); v = abs (x); + assert (strcmp (class (v), class (u)) && isequal (v, abs (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/cosd.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cosd.m +[inst/arrays/@stk_dataframe/asinh.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/asinh.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = cosd (x); - assert (strcmp (class (v), class (u)) && isequal (v, cosd (u))) + u = rand (4, 3); x = stk_dataframe (u); v = asinh (x); + assert (strcmp (class (v), class (u)) && isequal (v, asinh (u))) 1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/mrdivide.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mrdivide.m +***** test + x1_data = [8 7; 58 49]; + x1 = stk_dataframe (x1_data, {'x' 'y'}, {'a'; 'b'}); + x2_data = [8 7; 2 0]; + x2 = stk_dataframe (x2_data, {'x' 'y'}, {'u'; 'v'}); + y = x1 / x2; + assert (stk_isequal_tolabs (y, ... + stk_dataframe ([1 0; 7 1], {'u'; 'v'}, {'a'; 'b'}))); +***** shared x_data, x, y_data, y + x_data = [3 3; 6 3; 9 12]; + y_data = [1 1; 2 1; 3 4]; + x = stk_dataframe (x_data, {'x' 'y'}, {'a'; 'b'; 'c'}); +***** test y = x / 3; +***** assert (isequal (y, stk_dataframe ([1 1; 2 1; 3 4], {'x' 'y'}, {'a'; 'b'; 'c'}))); +***** error y = 3 / x; +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/size.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/size.m +***** shared x + x = stk_dataframe([1 2; 3 4; 5 6]); +***** assert (isequal (size(x), [3 2])) +***** assert (numel(x) == 1) +***** assert (ndims(x) == 2) +***** test size(x); % force exploration of branch nargout == 0 +4 tests, 4 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/quantile.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/quantile.m ***** shared x1, df1, p @@ -5808,6 +5965,78 @@ ***** assert (isequal (quantile (df1, p, 1), quantile (x1, p))) ***** assert (isequal (quantile (df1, p, 2), quantile (x1, p, 2))) 3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/stk_rescale.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_rescale.m +***** test + u = rand(5, 1) * 2; + x = stk_dataframe(u); + y = stk_rescale(x, [0; 2], [0; 3]); + assert (isa (y, 'stk_dataframe') && isequal(double(y), u * 3/2)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/plus.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/plus.m +***** test stk_test_dfbinaryop(@plus, rand(7, 2), rand(7, 2)); +***** test stk_test_dfbinaryop(@plus, rand(7, 2), pi); +***** error stk_test_dfbinaryop(@plus, rand(7, 2), rand(7, 3)); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/apply.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/apply.m +***** shared x, t, u + t = rand (3, 2); + x = stk_dataframe (t); +***** test u = apply (x, 1, @sum); +***** assert (isequal (u, sum (t, 1))) +***** test u = apply (x, 2, @sum); +***** assert (isequal (u, sum (t, 2))) +***** error u = apply (x, 3, @sum); +***** test u = apply (x, 1, @min, []); +***** assert (isequal (u, min (t, [], 1))) +***** test u = apply (x, 2, @min, []); +***** assert (isequal (u, min (t, [], 2))) +***** error u = apply (x, 3, @min, []); +***** test + t = [1; 3; 2]; + x = stk_dataframe (t); + [M, k] = apply (x, 1, @max, []); + assert ((M == 3) && (k == 2)); +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/reshape.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/reshape.m +***** test + x = stk_dataframe (randn (10, 3)); + y = reshape (x, 5, 6); + assert (isa (y, 'stk_dataframe') && isequal (size (y), [5 6])) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/sin.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sin.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = sin (x); + assert (strcmp (class (v), class (u)) && isequal (v, sin (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/display.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/display.m +***** test display (stk_dataframe (rand (3, 2))); + + = <3x2 stk_dataframe array> + + : -------- -------- + * : 0.951774 0.106822 + * : 0.972052 0.643756 + * : 0.293101 0.362499 + +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/tand.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/tand.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = tand (x); + assert (strcmp (class (v), class (u)) && isequal (v, tand (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/asin.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/asin.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = asin (x); + assert (strcmp (class (v), class (u)) && isequal (v, asin (u))) +1 test, 1 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/stk_dataframe.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_dataframe.m ***** test stk_test_class ('stk_dataframe') @@ -5913,66 +6142,97 @@ y = stk_dataframe (x, {}, 'tata'); assert (isequal (y.rownames, {'tata'})); 24 tests, 24 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/acos.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/acos.m +[inst/arrays/@stk_dataframe/tan.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/tan.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = acos (x); - assert (strcmp (class (v), class (u)) && isequal (v, acos (u))) + u = rand (4, 3); x = stk_dataframe (u); v = tan (x); + assert (strcmp (class (v), class (u)) && isequal (v, tan (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/logical.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/logical.m +[inst/arrays/@stk_dataframe/max.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/max.m +***** test stk_test_dfbinaryop ('max', rand(7, 2), rand(7, 2)); +***** test stk_test_dfbinaryop ('max', rand(7, 2), pi); +***** error stk_test_dfbinaryop ('max', rand(7, 2), rand(7, 3)); +***** shared x1, df1 + x1 = rand(9, 3); + df1 = stk_dataframe(x1, {'a', 'b', 'c'}); +***** assert (isequal (max(df1), max(x1))) +***** assert (isequal (max(df1, [], 1), max(x1))) +***** assert (isequal (max(df1, [], 2), max(x1, [], 2))) +***** error (max(df1, df1, 2)) ***** test - u = rand (4, 3); + x = stk_dataframe ([1; 3; 2]); + [M, k] = max (x); + assert ((M == 3) && (k == 2)); +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/mode.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mode.m +***** shared x1, df1 + x1 = floor(3 * rand(9, 3)); + df1 = stk_dataframe(x1, {'a', 'b', 'c'}); +***** assert (isequal (mode(df1), mode(x1))) +***** assert (isequal (mode(df1, 1), mode(x1))) +***** assert (isequal (mode(df1, 2), mode(x1, 2))) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/ismember.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/ismember.m +***** shared u, x, u1, x1, u2, x2 + u = rand (10, 4); x = stk_dataframe (u); - v = logical (x); - assert (strcmp (class(v), 'logical') && isequal (v, logical (u))) + x1 = x(1, :); + u1 = double (x1); + u2 = - ones (1, 4); + x2 = stk_dataframe (u2); +***** assert (ismember (u1, x, 'rows')) +***** assert (ismember (x1, u, 'rows')) +***** assert (ismember (x1, x, 'rows')) +***** assert (~ ismember (u2, x, 'rows')) +***** assert (~ ismember (x2, u, 'rows')) +***** assert (~ ismember (x2, x, 'rows')) ***** test - u = (rand (4, 3) < 0.5); - x = stk_dataframe (u); - v = logical (x); - assert (strcmp (class (v), 'logical') && isequal (v, u)) + [b, idx] = ismember ([x2; x1; x1], x, 'rows'); + assert (isequal (b, [false; true; true])); + assert (isequal (idx, [0; 1; 1])) +7 tests, 7 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/disp.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/disp.m +***** shared x, fmt + fmt = stk_disp_getformat (); + x = stk_dataframe (rand (3, 2)); +***** test format rat; disp (x); + : -------- -------- + * : 0.702957 0.923288 + * : 0.814216 0.157562 + * : 0.189992 0.105840 +***** test format long; disp (x); + : ---------------- ---------------- + * : 0.70295681388430 0.92328805231892 + * : 0.81421574115748 0.15756205179439 + * : 0.18999224816972 0.10583996650353 +***** test format short; disp (x); format (fmt); + : -------- -------- + * : 0.702957 0.923288 + * : 0.814216 0.157562 + * : 0.189992 0.105840 +***** test disp (stk_dataframe (zeros (0, 1))) + Empty data frame with 0 rows and 0 columns +***** test disp (stk_dataframe (zeros (0, 2))) + Empty data frame with 0 rows and 0 columns +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/stk_normalize.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_normalize.m ***** test - u = uint8 (rand (4, 3) * 5); + u = rand (6, 2) * 2; x = stk_dataframe (u); - v = logical (x); - assert (strcmp (class (v), 'logical') && isequal (v, logical (u))) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/transpose.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/transpose.m -***** test - u = rand(3, 2) + 1i * rand(3, 2); - data = stk_dataframe(u, {'x' 'y'}, {'obs1'; 'obs2'; 'obs3'}); - data = data.'; - assert (isa(data, 'stk_dataframe') && isequal(double(data), u.')); - assert (isequal(data.rownames, {'x'; 'y'})); - assert (isequal(data.colnames, {'obs1' 'obs2' 'obs3'})); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/stk_get_sample_size.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_get_sample_size.m -***** test - x = stk_dataframe ([1 2; 3 4; 5 6]); - assert (isequal (stk_get_sample_size (x), 3)); + y = stk_normalize (x); + assert (isa (y, 'stk_dataframe') ... + && stk_isequal_tolabs (double (y), stk_normalize (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/end.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/end.m -***** shared x - x = stk_dataframe ([1; 2; 3]); -***** assert (isequal (double (x(2:end, :)), [2; 3])) -***** assert (isequal (double (x(2:end)), [2; 3])) -***** assert (isequal (double (x(2, 1:end)), 2)) -***** assert (isequal (double (x(end)), 3)) -***** shared x - x = stk_dataframe ([1 2; 3 4; 5 6]); -***** assert (isequal (x(2:end, :), x(2:3, :))) -***** assert (isequal (x(2, 1:end), x(2, :))) -***** assert (isequal (x(2:end, 2:end), x(2:3, 2))) -***** error x(1:end, 1:end, 1:end) -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/sin.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sin.m +[inst/arrays/@stk_dataframe/log10.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log10.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = sin (x); - assert (strcmp (class (v), class (u)) && isequal (v, sin (u))) + u = rand (4, 3); x = stk_dataframe (u); v = log10 (x); + assert (strcmp (class (v), class (u)) && isequal (v, log10 (u))) 1 test, 1 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/subsref.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/subsref.m @@ -6021,110 +6281,142 @@ assert (isequal (size (y), [2 0])); assert (isequal (y.rownames, {'a'; 'b'})); 16 tests, 16 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/isnan.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/isnan.m +[inst/arrays/@stk_dataframe/fieldnames.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/fieldnames.m ***** test - u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isnan (x); - assert (islogical (v) && isequal (v, isnan (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/times.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/times.m -***** test stk_test_dfbinaryop(@times, rand(7, 2), rand(7, 2)); -***** test stk_test_dfbinaryop(@times, rand(7, 2), pi); -***** error stk_test_dfbinaryop(@times, rand(7, 2), rand(7, 3)); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/sqrt.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sqrt.m + x = stk_dataframe (rand (3, 2), {'u' 'v'}); + assert (isequal (sort (fieldnames (x)), ... + {'colnames'; 'data'; 'info'; 'rownames'; 'sample_size'; 'u'; 'v'})); ***** test - u = rand (4, 3); x = stk_dataframe (u); v = sqrt (x); - assert (strcmp (class (v), class (u)) && isequal (v, sqrt (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/cos.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cos.m + x = stk_dataframe (rand (3, 2)); + x.rownames(2:3) = {'aa', 'bb'}; + x.colnames{2} = 'toto'; + assert (isequal (fieldnames (x), ... + {'toto'; 'aa'; 'bb'; 'data'; 'info'; ... + 'rownames'; 'colnames'; 'sample_size'})); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/ctranspose.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/ctranspose.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = cos (x); - assert (strcmp (class (v), class (u)) && isequal (v, cos (u))) + u = rand(3, 2) + 1i * rand(3, 2); + data = stk_dataframe(u, {'x' 'y'}, {'obs1'; 'obs2'; 'obs3'}); + data = data'; + assert (isa(data, 'stk_dataframe') && isequal(double(data), u')); + assert (isequal(data.rownames, {'x'; 'y'})); + assert (isequal(data.colnames, {'obs1' 'obs2' 'obs3'})); 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/vertcat.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/vertcat.m +[inst/arrays/@stk_dataframe/horzcat.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/horzcat.m ***** shared u, v - u = rand (3, 2); - v = rand (3, 2); + u = rand(3, 2); + v = rand(3, 2); ***** test - x = stk_dataframe (u); - y = stk_dataframe (v); - z = vertcat (x, y); - assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); -***** test % the same, with row names this time - x = stk_dataframe (u, {}, {'a'; 'b'; 'c'}); - y = stk_dataframe (v, {}, {'d'; 'e'; 'f'}); - z = vertcat (x, y); - assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); - assert (all (strcmp (z.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'}))); -***** test % the same, with row names only for the first argument - x = stk_dataframe (u, {}, {'a'; 'b'; 'c'}); - y = stk_dataframe (v); - z = vertcat (x, y); - assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); -***** test % incompatible variable names - u = rand (3, 1); x = stk_dataframe (u, {'x'}); - v = rand (3, 1); y = stk_dataframe (v, {'y'}); - z = vertcat (x, y); - assert (isequal (z.colnames, {})); -warning: Incompatible column names ! -The output of vertcat will have no column names. + x = stk_dataframe(u, {'x1' 'x2'}); + y = stk_dataframe(v, {'y1' 'y2'}); + z = horzcat (x, y); + assert(isa(z, 'stk_dataframe') && isequal(double(z), [u v])); + assert(all(strcmp(z.colnames, {'x1' 'x2' 'y1' 'y2'}))); +***** test + x = stk_dataframe(u, {'x1' 'x2'}, {'a'; 'b'; 'c'}); + y = stk_dataframe(v, {'y1' 'y2'}); + z = horzcat (x, y); + assert(isa(z, 'stk_dataframe') && isequal(double(z), [u v])); + assert(all(strcmp(z.colnames, {'x1' 'x2' 'y1' 'y2'}))); + assert(all(strcmp(z.rownames, {'a'; 'b'; 'c'}))); +***** test + x = stk_dataframe(u, {'x1' 'x2'}); + y = stk_dataframe(v, {'y1' 'y2'}, {'a'; 'b'; 'c'}); + z = horzcat (x, y); + assert(isa(z, 'stk_dataframe') && isequal(double(z), [u v])); + assert(all(strcmp(z.colnames, {'x1' 'x2' 'y1' 'y2'}))); + assert(all(strcmp(z.rownames, {'a'; 'b'; 'c'}))); +***** test % incompatible row names + x = stk_dataframe (u, {'x1' 'x2'}, {'a'; 'b'; 'c'}); + y = stk_dataframe (v, {'y1' 'y2'}, {'a'; 'b'; 'd'}); + z = horzcat (x, y); + assert (isequal (z.rownames, {})); +warning: Incompatible row names ! +The output of horzcat will have no row names. warning: called from - vertcat at line 82 column 9 + horzcat at line 73 column 9 __test__ at line 5 column 4 test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 686 column 31 + /tmp/tmp.RY4F3ddEUf at line 1046 column 31 ***** test x = stk_dataframe (u); - z = vertcat (x, v); - assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); -***** test % the same, with row names for the first argument - x = stk_dataframe (u, {}, {'a'; 'b'; 'c'}); - z = vertcat (x, v); - assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v])); + z = horzcat (x, v); + assert (isa (z, 'stk_dataframe') && isequal (double (z), [u v])); ***** test y = stk_dataframe (v); - z = vertcat (u, y); - assert (isa (z, 'stk_dataframe') && (isequal (double (z), [u; v]))); + z = horzcat (u, y); + assert (isa (z, 'stk_dataframe') && isequal (double (z), [u v])); ***** test - x = stk_dataframe (u); - y = stk_dataframe (v); - z = vertcat (x, y, u, v); - assert (isa (z, 'stk_dataframe') && isequal (double (z), [u; v; u; v])); -***** shared x, y - x = stk_dataframe (rand (2, 3), {'a', 'b', 'c'}); - y = stk_dataframe (rand (3, 2), {'a', 'b'}); - y = horzcat (y, rand(3, 1)); % last column name is missing + x = stk_dataframe(u, {'x1' 'x2'}); + y = stk_dataframe(v, {'y1' 'y2'}); + z = horzcat (x, y, u, v); + assert(isa(z, 'stk_dataframe') && isequal(double(z), [u v u v])); +7 tests, 7 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/isinf.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/isinf.m ***** test - z = vertcat (x, y); - assert (isequal (z.colnames, {'a' 'b' 'c'})) + u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isinf (x); + assert (islogical (v) && isequal (v, isinf (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/sinh.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sinh.m ***** test - z = vertcat (y, x); - assert (isequal (z.colnames, {'a' 'b' 'c'})) -10 tests, 10 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/mrdivide.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mrdivide.m + u = rand (4, 3); x = stk_dataframe (u); v = sinh (x); + assert (strcmp (class (v), class (u)) && isequal (v, sinh (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/log2.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log2.m ***** test - x1_data = [8 7; 58 49]; - x1 = stk_dataframe (x1_data, {'x' 'y'}, {'a'; 'b'}); - x2_data = [8 7; 2 0]; - x2 = stk_dataframe (x2_data, {'x' 'y'}, {'u'; 'v'}); - y = x1 / x2; - assert (stk_isequal_tolabs (y, ... - stk_dataframe ([1 0; 7 1], {'u'; 'v'}, {'a'; 'b'}))); -***** shared x_data, x, y_data, y - x_data = [3 3; 6 3; 9 12]; - y_data = [1 1; 2 1; 3 4]; - x = stk_dataframe (x_data, {'x' 'y'}, {'a'; 'b'; 'c'}); -***** test y = x / 3; -***** assert (isequal (y, stk_dataframe ([1 1; 2 1; 3 4], {'x' 'y'}, {'a'; 'b'; 'c'}))); -***** error y = 3 / x; -4 tests, 4 passed, 0 known failure, 0 skipped + u = rand (4, 3); x = stk_dataframe (u); v = log2 (x); + assert (strcmp (class (v), class (u)) && isequal (v, log2 (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/cosd.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cosd.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = cosd (x); + assert (strcmp (class (v), class (u)) && isequal (v, cosd (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/acosh.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/acosh.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = acosh (x); + assert (strcmp (class (v), class (u)) && isequal (v, acosh (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/rdivide.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/rdivide.m +***** test stk_test_dfbinaryop(@rdivide, rand(7, 2), 1 + rand(7, 2)); +***** test stk_test_dfbinaryop(@rdivide, rand(7, 2), pi); +***** error stk_test_dfbinaryop(@rdivide, rand(7, 2), 1 + rand(7, 3)); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/exp.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/exp.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = exp (x); + assert (strcmp (class (v), class (u)) && isequal (v, exp (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/logical.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/logical.m +***** test + u = rand (4, 3); + x = stk_dataframe (u); + v = logical (x); + assert (strcmp (class(v), 'logical') && isequal (v, logical (u))) +***** test + u = (rand (4, 3) < 0.5); + x = stk_dataframe (u); + v = logical (x); + assert (strcmp (class (v), 'logical') && isequal (v, u)) +***** test + u = uint8 (rand (4, 3) * 5); + x = stk_dataframe (u); + v = logical (x); + assert (strcmp (class (v), 'logical') && isequal (v, logical (u))) +3 tests, 3 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/mean.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mean.m ***** shared x1, df1 @@ -6134,46 +6426,84 @@ ***** assert (isequal (mean(df1, 1), mean(x1))) ***** assert (isequal (mean(df1, 2), mean(x1, 2))) 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/atan.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/atan.m +[inst/arrays/@stk_dataframe/stk_get_sample_size.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_get_sample_size.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = atan (x); - assert (strcmp (class (v), class (u)) && isequal (v, atan (u))) + x = stk_dataframe ([1 2; 3 4; 5 6]); + assert (isequal (stk_get_sample_size (x), 3)); 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/log1p.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log1p.m +[inst/arrays/@stk_dataframe/end.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/end.m +***** shared x + x = stk_dataframe ([1; 2; 3]); +***** assert (isequal (double (x(2:end, :)), [2; 3])) +***** assert (isequal (double (x(2:end)), [2; 3])) +***** assert (isequal (double (x(2, 1:end)), 2)) +***** assert (isequal (double (x(end)), 3)) +***** shared x + x = stk_dataframe ([1 2; 3 4; 5 6]); +***** assert (isequal (x(2:end, :), x(2:3, :))) +***** assert (isequal (x(2, 1:end), x(2, :))) +***** assert (isequal (x(2:end, 2:end), x(2:3, 2))) +***** error x(1:end, 1:end, 1:end) +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/times.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/times.m +***** test stk_test_dfbinaryop(@times, rand(7, 2), rand(7, 2)); +***** test stk_test_dfbinaryop(@times, rand(7, 2), pi); +***** error stk_test_dfbinaryop(@times, rand(7, 2), rand(7, 3)); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/double.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/double.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = log1p (x); - assert (strcmp (class (v), class (u)) && isequal (v, log1p (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/ctranspose.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/ctranspose.m + u = rand(4, 3); + x = stk_dataframe(u); + v = double(x); + assert (strcmp(class(v), 'double') && isequal(v, u)) ***** test - u = rand(3, 2) + 1i * rand(3, 2); - data = stk_dataframe(u, {'x' 'y'}, {'obs1'; 'obs2'; 'obs3'}); - data = data'; - assert (isa(data, 'stk_dataframe') && isequal(double(data), u')); - assert (isequal(data.rownames, {'x'; 'y'})); - assert (isequal(data.colnames, {'obs1' 'obs2' 'obs3'})); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/size.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/size.m -***** shared x - x = stk_dataframe([1 2; 3 4; 5 6]); -***** assert (isequal (size(x), [3 2])) -***** assert (numel(x) == 1) -***** assert (ndims(x) == 2) -***** test size(x); % force exploration of branch nargout == 0 -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/asind.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/asind.m + u = (rand(4, 3) < 0.5); + x = stk_dataframe(u); + v = double(x); + assert (strcmp(class(v), 'double') && isequal(v, double(u))) ***** test - u = rand (4, 3); x = stk_dataframe (u); v = asind (x); - assert (strcmp (class (v), class (u)) && isequal (v, asind (u))) + u = uint8 (rand (4, 3) * 5); + x = stk_dataframe(u); + v = double(x); + assert (strcmp(class(v), 'double') && isequal(v, double(u))) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/mtimes.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mtimes.m +***** shared x, y, z, w + + u = [1 3 4; 2 7 6]; % 2 x 3 + v = [6 2; 1 7; 9 4]; % 3 x 2 + w = [45 39; 73 77]; % u * v + + x = stk_dataframe (u, {}, {'a'; 'b'}); + y = stk_dataframe (v, {'c' 'd'}); + z = x * y; +***** assert (isa (z, 'stk_dataframe')); +***** assert (isequal (z.data, w)); +***** assert (isequal (z.rownames, x.rownames)); +***** assert (isequal (z.colnames, y.colnames)); +***** shared x, y + x = stk_dataframe (rand (3, 2), {'x' 'y'}, {'a'; 'b'; 'c'}); +***** test y = 3 * x; +***** assert (isequal (y, stk_dataframe (3 * x.data, {'x' 'y'}, {'a'; 'b'; 'c'}))); +***** test y = x * 3; +***** assert (isequal (y, stk_dataframe (3 * x.data, {'x' 'y'}, {'a'; 'b'; 'c'}))); +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/sind.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sind.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = sind (x); + assert (strcmp (class (v), class (u)) && isequal (v, sind (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/length.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/length.m -***** error length (stk_dataframe ([1 2; 3 4; 5 6])) +[inst/arrays/@stk_dataframe/atand.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/atand.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = atand (x); + assert (strcmp (class (v), class (u)) && isequal (v, atand (u))) 1 test, 1 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/bsxfun.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/bsxfun.m @@ -6199,63 +6529,11 @@ assert (isequal (z.colnames, y.colnames)); assert (isequal (z.rownames, y.rownames)); 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/display.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/display.m -***** test display (stk_dataframe (rand (3, 2))); - - = <3x2 stk_dataframe array> - - : -------- -------- - * : 0.513996 0.171927 - * : 0.208462 0.061992 - * : 0.219853 0.736032 - -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/tand.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/tand.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = tand (x); - assert (strcmp (class (v), class (u)) && isequal (v, tand (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/plus.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/plus.m -***** test stk_test_dfbinaryop(@plus, rand(7, 2), rand(7, 2)); -***** test stk_test_dfbinaryop(@plus, rand(7, 2), pi); -***** error stk_test_dfbinaryop(@plus, rand(7, 2), rand(7, 3)); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/abs.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/abs.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = abs (x); - assert (strcmp (class (v), class (u)) && isequal (v, abs (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/mtimes.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mtimes.m -***** shared x, y, z, w - - u = [1 3 4; 2 7 6]; % 2 x 3 - v = [6 2; 1 7; 9 4]; % 3 x 2 - w = [45 39; 73 77]; % u * v - - x = stk_dataframe (u, {}, {'a'; 'b'}); - y = stk_dataframe (v, {'c' 'd'}); - z = x * y; -***** assert (isa (z, 'stk_dataframe')); -***** assert (isequal (z.data, w)); -***** assert (isequal (z.rownames, x.rownames)); -***** assert (isequal (z.colnames, y.colnames)); -***** shared x, y - x = stk_dataframe (rand (3, 2), {'x' 'y'}, {'a'; 'b'; 'c'}); -***** test y = 3 * x; -***** assert (isequal (y, stk_dataframe (3 * x.data, {'x' 'y'}, {'a'; 'b'; 'c'}))); -***** test y = x * 3; -***** assert (isequal (y, stk_dataframe (3 * x.data, {'x' 'y'}, {'a'; 'b'; 'c'}))); -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/exp.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/exp.m +[inst/arrays/@stk_dataframe/isnan.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/isnan.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = exp (x); - assert (strcmp (class (v), class (u)) && isequal (v, exp (u))) + u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isnan (x); + assert (islogical (v) && isequal (v, isnan (u))) 1 test, 1 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/stk_boundingbox.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_boundingbox.m @@ -6266,55 +6544,21 @@ ***** test y = stk_boundingbox (x); ***** assert (isequal (y, stk_hrect ([0 0 1; 7 4 2], cn))); 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/asin.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/asin.m +[inst/arrays/@stk_dataframe/transpose.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/transpose.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = asin (x); - assert (strcmp (class (v), class (u)) && isequal (v, asin (u))) + u = rand(3, 2) + 1i * rand(3, 2); + data = stk_dataframe(u, {'x' 'y'}, {'obs1'; 'obs2'; 'obs3'}); + data = data.'; + assert (isa(data, 'stk_dataframe') && isequal(double(data), u.')); + assert (isequal(data.rownames, {'x'; 'y'})); + assert (isequal(data.colnames, {'obs1' 'obs2' 'obs3'})); 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/min.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/min.m -***** test stk_test_dfbinaryop ('min', rand(7, 2), rand(7, 2)); -***** test stk_test_dfbinaryop ('min', rand(7, 2), pi); -***** error stk_test_dfbinaryop ('min', rand(7, 2), rand(7, 3)); -***** shared x1, df1 - x1 = rand(9, 3); - df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (min(df1), min(x1))) -***** assert (isequal (min(df1, [], 1), min(x1))) -***** assert (isequal (min(df1, [], 2), min(x1, [], 2))) -***** error (min(df1, df1, 2)) -***** test - x = stk_dataframe ([5; 2; 4]); - [M, k] = min (x); - assert ((M == 2) && (k == 2)); -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/apply.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/apply.m -***** shared x, t, u - t = rand (3, 2); - x = stk_dataframe (t); -***** test u = apply (x, 1, @sum); -***** assert (isequal (u, sum (t, 1))) -***** test u = apply (x, 2, @sum); -***** assert (isequal (u, sum (t, 2))) -***** error u = apply (x, 3, @sum); -***** test u = apply (x, 1, @min, []); -***** assert (isequal (u, min (t, [], 1))) -***** test u = apply (x, 2, @min, []); -***** assert (isequal (u, min (t, [], 2))) -***** error u = apply (x, 3, @min, []); -***** test - t = [1; 3; 2]; - x = stk_dataframe (t); - [M, k] = apply (x, 1, @max, []); - assert ((M == 3) && (k == 2)); -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/log.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log.m +[inst/arrays/@stk_dataframe/stk_length.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_length.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = log (x); - assert (strcmp (class (v), class (u)) && isequal (v, log (u))) + x = stk_dataframe ([1 2; 3 4; 5 6]); + assert (isequal (stk_length (x), 3)); 1 test, 1 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/expm1.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/expm1.m @@ -6322,90 +6566,14 @@ u = rand (4, 3); x = stk_dataframe (u); v = expm1 (x); assert (strcmp (class (v), class (u)) && isequal (v, expm1 (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/median.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/median.m -***** shared x1, df1 - x1 = rand(9, 3); - df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (median(df1), median(x1))) -***** assert (isequal (median(df1, 1), median(x1))) -***** assert (isequal (median(df1, 2), median(x1, 2))) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/mode.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mode.m -***** shared x1, df1 - x1 = floor(3 * rand(9, 3)); - df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (mode(df1), mode(x1))) -***** assert (isequal (mode(df1, 1), mode(x1))) -***** assert (isequal (mode(df1, 2), mode(x1, 2))) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/acosd.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/acosd.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = acosd (x); - assert (strcmp (class (v), class (u)) && isequal (v, acosd (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/stk_normalize.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_normalize.m -***** test - u = rand (6, 2) * 2; - x = stk_dataframe (u); - y = stk_normalize (x); - assert (isa (y, 'stk_dataframe') ... - && stk_isequal_tolabs (double (y), stk_normalize (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/ldivide.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/ldivide.m -***** test stk_test_dfbinaryop(@ldivide, 1 + rand(7, 2), rand(7, 2)); -***** test stk_test_dfbinaryop(@ldivide, 1 + rand(7, 2), pi); -***** error stk_test_dfbinaryop(@ldivide, 1 + rand(7, 2), rand(7, 3)); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/minus.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/minus.m -***** test stk_test_dfbinaryop(@minus, rand(7, 2), rand(7, 2)); -***** test stk_test_dfbinaryop(@minus, rand(7, 2), pi); -***** error stk_test_dfbinaryop(@minus, rand(7, 2), rand(7, 3)); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/std.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/std.m -***** shared x1, df1 - x1 = rand(9, 3); - df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (std(df1), std(x1))) -***** assert (isequal (std(df1, 0, 1), std(x1))) -***** assert (isequal (std(df1, 0, 2), std(x1, 0, 2))) -***** assert (isequal (std(df1, 1), std(x1, 1))) -***** assert (isequal (std(df1, 1, 1), std(x1, 1))) -***** assert (isequal (std(df1, 1, 2), std(x1, 1, 2))) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/prod.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/prod.m +[inst/arrays/@stk_dataframe/sum.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sum.m ***** shared x1, df1 x1 = rand(9, 3); df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (prod(df1), prod(x1))) -***** assert (isequal (prod(df1, 1), prod(x1))) -***** assert (isequal (prod(df1, 2), prod(x1, 2))) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/cat.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cat.m -***** shared u, v, x, y - u = rand(3, 2); - v = rand(3, 2); - x = stk_dataframe(u); - y = stk_dataframe(v); -***** test % vertical - z = cat(1, x, y); - assert(isa(z, 'stk_dataframe')); - assert(isequal(double(z), [u; v])); -***** error z = cat(3, x, y); -***** test % horizontal - y = stk_dataframe(v, {'y1' 'y2'}); - z = cat(2, x, y); - assert(isa(z, 'stk_dataframe')); - assert(isequal(double(z), [u v])); - assert(all(strcmp(z.colnames, {'' '' 'y1' 'y2'}))); +***** assert (isequal (sum(df1), sum(x1))) +***** assert (isequal (sum(df1, 1), sum(x1))) +***** assert (isequal (sum(df1, 2), sum(x1, 2))) 3 tests, 3 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/sort.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sort.m @@ -6428,424 +6596,450 @@ ***** assert (isequal (sort (x, 2, 'descend'), x)) ***** error sort (x, 3, 'descend') 15 tests, 15 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/max.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/max.m -***** test stk_test_dfbinaryop ('max', rand(7, 2), rand(7, 2)); -***** test stk_test_dfbinaryop ('max', rand(7, 2), pi); -***** error stk_test_dfbinaryop ('max', rand(7, 2), rand(7, 3)); -***** shared x1, df1 - x1 = rand(9, 3); - df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (max(df1), max(x1))) -***** assert (isequal (max(df1, [], 1), max(x1))) -***** assert (isequal (max(df1, [], 2), max(x1, [], 2))) -***** error (max(df1, df1, 2)) -***** test - x = stk_dataframe ([1; 3; 2]); - [M, k] = max (x); - assert ((M == 3) && (k == 2)); -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/mldivide.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mldivide.m -***** test - x1_data = [57 7; 2 0]; - x1 = stk_dataframe (x1_data, {'x' 'y'}, {'a'; 'b'}); - x2_data = [8 7; 2 0]; - x2 = stk_dataframe (x2_data, {'w' 'z'}, {'a'; 'b'}); - y = x2 \ x1; - assert (stk_isequal_tolabs (y, ... - stk_dataframe ([1 0; 7 1], {'x'; 'y'}, {'w'; 'z'}))); -***** shared x_data, x, y_data, y - x_data = [3 3; 6 3; 9 12]; - y_data = [1 1; 2 1; 3 4]; - x = stk_dataframe (x_data, {'x' 'y'}, {'a'; 'b'; 'c'}); -***** test y = 3 \ x; -***** assert (isequal (y, stk_dataframe (y_data, {'x' 'y'}, {'a'; 'b'; 'c'}))); -***** error y = x \ 3; -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/tan.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/tan.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = tan (x); - assert (strcmp (class (v), class (u)) && isequal (v, tan (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/sinh.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sinh.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = sinh (x); - assert (strcmp (class (v), class (u)) && isequal (v, sinh (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/ismember.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/ismember.m -***** shared u, x, u1, x1, u2, x2 - u = rand (10, 4); - x = stk_dataframe (u); - x1 = x(1, :); - u1 = double (x1); - u2 = - ones (1, 4); - x2 = stk_dataframe (u2); -***** assert (ismember (u1, x, 'rows')) -***** assert (ismember (x1, u, 'rows')) -***** assert (ismember (x1, x, 'rows')) -***** assert (~ ismember (u2, x, 'rows')) -***** assert (~ ismember (x2, u, 'rows')) -***** assert (~ ismember (x2, x, 'rows')) -***** test - [b, idx] = ismember ([x2; x1; x1], x, 'rows'); - assert (isequal (b, [false; true; true])); - assert (isequal (idx, [0; 1; 1])) -7 tests, 7 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/realpow.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/realpow.m -***** test stk_test_dfbinaryop(@realpow, rand(7, 2), .1 + rand(7, 2)); -***** test stk_test_dfbinaryop(@realpow, rand(7, 2), .1); -***** error stk_test_dfbinaryop(@realpow, rand(7, 2), .1 + rand(7, 3)); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/asinh.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/asinh.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = asinh (x); - assert (strcmp (class (v), class (u)) && isequal (v, asinh (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/cosh.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cosh.m +[inst/arrays/@stk_dataframe/atan.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/atan.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = cosh (x); - assert (strcmp (class (v), class (u)) && isequal (v, cosh (u))) + u = rand (4, 3); x = stk_dataframe (u); v = atan (x); + assert (strcmp (class (v), class (u)) && isequal (v, atan (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/var.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/var.m +[inst/arrays/@stk_dataframe/prod.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/prod.m ***** shared x1, df1 x1 = rand(9, 3); df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (var(df1), var(x1))) -***** assert (isequal (var(df1, 0, 1), var(x1))) -***** assert (isequal (var(df1, 0, 2), var(x1, 0, 2))) -***** assert (isequal (var(df1, 1), var(x1, 1))) -***** assert (isequal (var(df1, 1, 1), var(x1, 1))) -***** assert (isequal (var(df1, 1, 2), var(x1, 1, 2))) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/acosh.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/acosh.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = acosh (x); - assert (strcmp (class (v), class (u)) && isequal (v, acosh (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/atand.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/atand.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = atand (x); - assert (strcmp (class (v), class (u)) && isequal (v, atand (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/isfinite.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/isfinite.m -***** test - u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isfinite (x); - assert (islogical (v) && isequal (v, isfinite (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/stk_length.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_length.m -***** test - x = stk_dataframe ([1 2; 3 4; 5 6]); - assert (isequal (stk_length (x), 3)); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/plot.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/plot.m -***** test % plot with x as a vector and z as a (univariate) dataframe - x = linspace(0, 2*pi, 30)'; - z = stk_dataframe(sin(x)); - figure; plot(x, z); close(gcf); -warning: using the gnuplot graphics toolkit is discouraged - -The gnuplot graphics toolkit is not actively maintained and has a number -of limitations that are unlikely to be fixed. Communication with gnuplot -uses a one-directional pipe and limited information is passed back to the -Octave interpreter so most changes made interactively in the plot window -will not be reflected in the graphics properties managed by Octave. For -example, if the plot window is closed with a mouse click, Octave will not -be notified and will not update its internal list of open figure windows. -The qt toolkit is recommended instead. -***** test % plot with x as a vector and z as a (multivariate) dataframe - x = linspace(0, 2*pi, 30)'; - z = stk_dataframe([sin(x) cos(x)], {'sin' 'cos'}); - figure; plot(x, z); close(gcf); -***** test % plot with x as a dataframe and z as a vector - x = stk_dataframe(linspace(0, 2*pi, 30)'); - z = sin(double(x)); - figure; plot(x, z); close(gcf); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/atanh.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/atanh.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = atanh (x); - assert (strcmp (class (v), class (u)) && isequal (v, atanh (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/rdivide.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/rdivide.m -***** test stk_test_dfbinaryop(@rdivide, rand(7, 2), 1 + rand(7, 2)); -***** test stk_test_dfbinaryop(@rdivide, rand(7, 2), pi); -***** error stk_test_dfbinaryop(@rdivide, rand(7, 2), 1 + rand(7, 3)); +***** assert (isequal (prod(df1), prod(x1))) +***** assert (isequal (prod(df1, 1), prod(x1))) +***** assert (isequal (prod(df1, 2), prod(x1, 2))) 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/sind.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sind.m +[inst/arrays/@stk_dataframe/log1p.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log1p.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = sind (x); - assert (strcmp (class (v), class (u)) && isequal (v, sind (u))) + u = rand (4, 3); x = stk_dataframe (u); v = log1p (x); + assert (strcmp (class (v), class (u)) && isequal (v, log1p (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/fieldnames.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/fieldnames.m -***** test - x = stk_dataframe (rand (3, 2), {'u' 'v'}); - assert (isequal (sort (fieldnames (x)), ... - {'colnames'; 'data'; 'info'; 'rownames'; 'sample_size'; 'u'; 'v'})); -***** test - x = stk_dataframe (rand (3, 2)); - x.rownames(2:3) = {'aa', 'bb'}; - x.colnames{2} = 'toto'; - assert (isequal (fieldnames (x), ... - {'toto'; 'aa'; 'bb'; 'data'; 'info'; ... - 'rownames'; 'colnames'; 'sample_size'})); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/reshape.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/reshape.m +[inst/arrays/@stk_dataframe/cos.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cos.m ***** test - x = stk_dataframe (randn (10, 3)); - y = reshape (x, 5, 6); - assert (isa (y, 'stk_dataframe') && isequal (size (y), [5 6])) + u = rand (4, 3); x = stk_dataframe (u); v = cos (x); + assert (strcmp (class (v), class (u)) && isequal (v, cos (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/sum.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sum.m +[inst/arrays/@stk_dataframe/median.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/median.m ***** shared x1, df1 x1 = rand(9, 3); df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (sum(df1), sum(x1))) -***** assert (isequal (sum(df1, 1), sum(x1))) -***** assert (isequal (sum(df1, 2), sum(x1, 2))) +***** assert (isequal (median(df1), median(x1))) +***** assert (isequal (median(df1, 1), median(x1))) +***** assert (isequal (median(df1, 2), median(x1, 2))) 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/tanh.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/tanh.m -***** test - u = rand (4, 3); x = stk_dataframe (u); v = tanh (x); - assert (strcmp (class (v), class (u)) && isequal (v, tanh (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/stk_sprintf.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_sprintf.m -***** shared x, fmt - fmt = stk_disp_getformat (); - x = stk_dataframe (rand (3, 2)); -***** test format rat; disp (x); - : -------- -------- - * : 0.752461 0.022038 - * : 0.536558 0.678246 - * : 0.192683 0.134219 -***** test format long; disp (x); - : ---------------- ---------------- - * : 0.75246109261581 0.02203784457444 - * : 0.53655796323189 0.67824576201027 - * : 0.19268298222075 0.13421892103280 -***** test format short; disp (x); format (fmt); - : -------- -------- - * : 0.752461 0.022038 - * : 0.536558 0.678246 - * : 0.192683 0.134219 -***** test disp (stk_dataframe (zeros (0, 1))) - Empty data frame with 0 rows and 0 columns -***** test disp (stk_dataframe (zeros (0, 2))) - Empty data frame with 0 rows and 0 columns -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/unique.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/unique.m -***** test - cn = {'u' 'v' 'w'}; x = stk_dataframe (rand (4, 3), cn); - y = [x; x]; z = unique (y, 'rows'); - assert (isequal (z.colnames, cn)); - assert (isequal (z.data, unique (x.data, 'rows'))); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/isinf.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/isinf.m -***** test - u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isinf (x); - assert (islogical (v) && isequal (v, isinf (u))) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/stk_rescale.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_rescale.m +[inst/param/estim/stk_param_estim.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_estim.m +***** shared f, xi, zi, NI, param0, param1, model + + f = @(x)(- (0.8 * x + sin (5 * x + 1) + 0.1 * sin (10 * x)) ); + DIM = 1; NI = 20; box = [-1.0; 1.0]; + xi = stk_sampling_regulargrid (NI, DIM, box); + + SIGMA2 = 1.0; % variance parameter + NU = 4.0; % regularity parameter + RHO1 = 0.4; % scale (range) parameter + param0 = log ([SIGMA2; NU; 1/RHO1]); + + model = stk_model (@stk_materncov_iso); +***** test % noiseless + zi = stk_feval (f, xi); + param1 = stk_param_estim (model, xi, zi, param0); + assert (isequal (size (param1), size (param0))) +warning: sqp: QP subproblem is non-convex and unbounded +warning: called from + sqp at line 441 column 9 + stk_minimize_boxconstrained at line 57 column 18 + stk_param_estim_optim at line 70 column 23 + stk_param_estim at line 139 column 15 + __test__ at line 4 column 9 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1286 column 31 + +***** test % same thing, with empty lnv0 (ok) + param2 = stk_param_estim (model, xi, zi, param0, []); + assert (stk_isequal_tolrel (param2, param1, 1e-2)) +warning: sqp: QP subproblem is non-convex and unbounded +warning: called from + sqp at line 441 column 9 + stk_minimize_boxconstrained at line 57 column 18 + stk_param_estim_optim at line 70 column 23 + stk_param_estim at line 139 column 15 + __test__ at line 3 column 9 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1286 column 31 + +***** error % same thing, with lnv0 == NaN (not ok as a starting point) + param2 = stk_param_estim (model, xi, zi, param0, nan); +***** error % same thing, with lnv0 == -inf (not ok as a starting point) + param2 = stk_param_estim (model, xi, zi, param0, -inf); +***** test % same thing, with explicit value for 'criterion' + param2 = stk_param_estim (model, xi, zi, param0, [], @stk_param_relik); + assert (stk_isequal_tolrel (param1, param2, 1e-2)) +warning: sqp: QP subproblem is non-convex and unbounded +warning: called from + sqp at line 441 column 9 + stk_minimize_boxconstrained at line 57 column 18 + stk_param_estim_optim at line 70 column 23 + stk_param_estim at line 139 column 15 + __test__ at line 3 column 9 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1286 column 31 + +***** test % noiseless + zi = stk_feval (f, xi); + param1 = stk_param_estim (model, xi, zi, param0); + param2 = stk_param_estim (model, xi, zi, param0, [], @stk_param_relik); + % We cannot assume a DETERMINISTIC optimization algorithm + % (for some reason, Octave's sqp is not exactly deterministic) + assert (stk_isequal_tolrel (param1, param2, 1e-2)) +warning: sqp: QP subproblem is non-convex and unbounded +warning: called from + sqp at line 441 column 9 + stk_minimize_boxconstrained at line 57 column 18 + stk_param_estim_optim at line 70 column 23 + stk_param_estim at line 139 column 15 + __test__ at line 4 column 9 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1286 column 31 + +warning: sqp: QP subproblem is non-convex and unbounded +warning: called from + sqp at line 441 column 9 + stk_minimize_boxconstrained at line 57 column 18 + stk_param_estim_optim at line 70 column 23 + stk_param_estim at line 139 column 15 + __test__ at line 5 column 9 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1286 column 31 + +***** test % noisy + NOISE_STD_TRUE = 0.1; + NOISE_STD_INIT = 1e-5; + zi = zi + NOISE_STD_TRUE * randn(NI, 1); + model.lognoisevariance = 2 * log(NOISE_STD_INIT); + [param, lnv] = stk_param_estim ... + (model, xi, zi, param0, model.lognoisevariance); +***** error param = stk_param_estim () +***** error param = stk_param_estim (model); +***** error param = stk_param_estim (model, xi); +***** test % Constant response + model = stk_model (@stk_materncov52_iso); + n = 10; x = stk_sampling_regulargrid (n, 1, [0; 1]); z = ones (size (x)); + param = stk_param_estim (model, x, z); + assert ((all (isfinite (param))) && (length (param) == 2)); +warning: Constant-response data: the output of stk_param_estim is likely to be unreliable. +warning: called from + stk_param_estim at line 95 column 5 + __test__ at line 5 column 8 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1286 column 31 + +warning: Parameter estimation is impossible with constant-response data. +warning: called from + stk_param_init>paraminit_ at line 351 column 5 + stk_param_init>stk_param_init_ at line 323 column 14 + stk_param_init at line 87 column 18 + stk_param_estim>provide_starting_point at line 205 column 20 + stk_param_estim at line 110 column 30 + __test__ at line 5 column 8 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1286 column 31 + +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/param/estim/stk_param_gls.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_gls.m +***** shared xi, zi, model, beta, sigma2 + xi = (1:10)'; zi = sin (xi); + model = stk_model (@stk_materncov52_iso); + model.param = [0.0 0.0]; ***** test - u = rand(5, 1) * 2; - x = stk_dataframe(u); - y = stk_rescale(x, [0; 2], [0; 3]); - assert (isa (y, 'stk_dataframe') && isequal(double(y), u * 3/2)) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/horzcat.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/horzcat.m -***** shared d, x1, x2, x3 - d = 10; - x1 = stk_hrect (d); - x2 = double (x1); - x3 = [1:d; 0:(d-1)]; % illegal bounds + model.lm = stk_lm_constant (); + [beta, sigma2] = stk_param_gls (model, xi, zi); +***** assert (stk_isequal_tolabs (beta, 0.1346064, 1e-6)) +***** assert (stk_isequal_tolabs (sigma2, 0.4295288, 1e-6)) ***** test - y1 = horzcat (x1, x1); - assert (isequal (size (y1), [2 2*d])); - assert (strcmp (class (y1), 'stk_hrect')); + model.lm = stk_lm_affine (); + [beta, sigma2] = stk_param_gls (model, xi, zi); +***** assert (stk_isequal_tolabs (beta, [0.4728342; -0.0614960], 1e-6)) +***** assert (stk_isequal_tolabs (sigma2, 0.4559431, 1e-6)) ***** test - y2 = horzcat (x1, x2); - assert (isequal (size (y2), [2 2*d])); - assert (strcmp (class (y2), 'stk_hrect')); + model.lm = stk_lm_null (); + [beta, sigma2] = stk_param_gls (model, xi, zi); +***** assert (isequal (beta, zeros (0, 1))) +***** assert (stk_isequal_tolabs (sigma2, 0.3977993, 1e-6)) +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/param/estim/stk_param_relik.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_relik.m +***** shared f, xi, zi, NI, model, C, dC1, dC2 + + f = @(x)(- (0.8 * x(:, 1) + sin (5 * x(:, 2) + 1) ... + + 0.1 * sin (10 * x(:, 3)))); + DIM = 3; NI = 20; box = repmat ([-1.0; 1.0], 1, DIM); + xi = stk_sampling_halton_rr2 (NI, DIM, box); + zi = stk_feval (f, xi); + + SIGMA2 = 1.0; % variance parameter + NU = 4.0; % regularity parameter + RHO1 = 0.4; % scale (range) parameter + + model = stk_model (@stk_materncov_aniso); + model.param = log ([SIGMA2; NU; 1/RHO1 * ones(DIM, 1)]); +***** error [C, dC1, dC2] = stk_param_relik (); +***** error [C, dC1, dC2] = stk_param_relik (model); +***** error [C, dC1, dC2] = stk_param_relik (model, xi); +***** test [C, dC1, dC2] = stk_param_relik (model, xi, zi); ***** test - y3 = horzcat (x2, x1); - assert (isequal (size (y3), [2 2*d])); - assert (strcmp (class (y3), 'stk_hrect')); + TOL_REL = 0.01; + assert (stk_isequal_tolrel (C, 21.6, TOL_REL)); + assert (stk_isequal_tolrel (dC1, [4.387 -0.1803 0.7917 0.1392 2.580]', TOL_REL)); + assert (isequal (dC2, [])); +***** shared xi, zi, model, TOL_REL + xi = [-1 -.6 -.2 .2 .6 1]'; + zi = [-0.11 1.30 0.23 -1.14 0.36 -0.37]'; + model = stk_model (@stk_materncov_iso); + model.param = log ([1.0 4.0 2.5]); + model.lognoisevariance = log (0.01); + TOL_REL = 0.01; +***** test % Another simple 1D check + [C, dC1, dC2] = stk_param_relik (model, xi, zi); + assert (stk_isequal_tolrel (C, 6.327, TOL_REL)); + assert (stk_isequal_tolrel (dC1, [0.268 0.0149 -0.636]', TOL_REL)); + assert (stk_isequal_tolrel (dC2, -1.581e-04, TOL_REL)); +***** test % Same 1D test with simple kriging + model.lm = stk_lm_null; + [C, dC1, dC2] = stk_param_relik (model, xi, zi); + assert (stk_isequal_tolrel (C, 7.475, TOL_REL)); + assert (stk_isequal_tolrel (dC1, [0.765 0.0238 -1.019]', TOL_REL)); + assert (stk_isequal_tolrel (dC2, 3.0517e-03, TOL_REL)); +***** test % Check the gradient on a 2D test case + + f = @stk_testfun_braninhoo; + DIM = 2; + BOX = [[-5; 10], [0; 15]]; + NI = 20; + TOL_REL = 1e-2; + DELTA = 1e-6; + + model = stk_model (@stk_materncov52_iso, DIM); + model.param = [1 1]; + + xi = stk_sampling_halton_rr2 (NI, DIM, BOX); + zi = stk_feval (f, xi); + + for range = [0.3 2 10] + model.param(2) = - log (range); + for diff = 1:2 + assert (stk_test_critgrad ... + (@stk_param_relik, model, xi, zi, diff, 1e-6)); + end + end +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/param/estim/stk_param_init.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_init.m ***** test - lastwarn ('') - y4 = horzcat (x1, x3); - assert (isequal (size (y4), [2 2*d])); - assert (strcmp (class (y4), 'stk_dataframe')); - [warn_msg, warn_id] = lastwarn (); - assert (strcmp (warn_id, 'STK:stk_hrect:horzcat:IllegalBounds')) -warning: Illegal bounds, the result is not an stk_hrect object. + xi = (1:10)'; zi = sin (xi); + model = stk_model (@stk_materncov52_iso); + model.param = stk_param_init (model, xi, zi, [1; 10], false); + xt = (1:9)' + 0.5; zt = sin (xt); + zp = stk_predict (model, xi, zi, xt); + assert (sum ((zt - zp.mean) .^ 2) < 1e-3); +***** test % check equivariance of parameter estimates + f = @(x) sin (x); + xi = stk_sampling_regulargrid (10, 1); zi = stk_feval (f, xi); + shift = 1000; scale = 0.01; + model = stk_model (@stk_materncov32_iso); + p1 = stk_param_init (model, xi, zi); + p2 = stk_param_init (model, xi, shift + scale .* zi); + assert (stk_isequal_tolabs (p2(1), p1(1) + log (scale^2), 1e-10)) + assert (stk_isequal_tolabs (p2(2), p1(2), eps)) +***** shared xi, zi, BOX, xt, zt + + f = @(x)(- (0.8 * x + sin (5 * x + 1) + 0.1 * sin (10 * x))); + DIM = 1; % Dimension of the factor space + BOX = [-1.0; 1.0]; % Factor space + + xi = stk_sampling_regulargrid (20, DIM, BOX); % Evaluation points + zi = stk_feval (f, xi); % Evaluation results + + NT = 400; % Number of points in the grid + xt = stk_sampling_regulargrid (NT, DIM, BOX); % Generate a regular grid + zt = stk_feval (f, xt); % Values of f on the grid +***** xtest % This test is known to fail in Debian buster i386 + % because of a known problem in Octave's sqp/qp functions + % http://savannah.gnu.org/bugs/?38875 + model = stk_model (@stk_materncov_iso); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +warning: sqp: QP subproblem is non-convex and unbounded warning: called from - horzcat at line 47 column 9 - __test__ at line 4 column 5 + sqp at line 441 column 9 + stk_minimize_boxconstrained at line 57 column 18 + stk_param_estim_optim at line 70 column 23 + stk_param_estim at line 139 column 15 + __test__ at line 7 column 14 test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 1142 column 31 + /tmp/tmp.RY4F3ddEUf at line 1310 column 31 -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/stk_dataframe.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_dataframe.m -***** shared x, cn, rn, y, cn2, rn2 - cn = {'x' 'y'}; - rn = {'lower_bounds'; 'upper_bounds'}; - x = stk_hrect ([0 0; 1 1], cn); - cn2 = {'xx' 'yy'}; - rn2 = {'aa'; 'bb'}; -***** test y = stk_dataframe (x); -***** assert (strcmp (class (y), 'stk_dataframe')) -***** assert (isequal (y.colnames, cn)) -***** assert (isequal (y.rownames, rn)) -***** test y = stk_dataframe (x, cn2); -***** assert (strcmp (class (y), 'stk_dataframe')) -***** assert (isequal (y.colnames, cn2)) -***** assert (isequal (y.rownames, rn)) -***** test y = stk_dataframe (x, cn2, rn2); -***** assert (strcmp (class (y), 'stk_dataframe')) -***** assert (isequal (y.colnames, cn2)) -***** assert (isequal (y.rownames, rn2)) -***** test y = stk_dataframe (x, [], rn2); -***** assert (strcmp (class (y), 'stk_dataframe')) -***** assert (isequal (y.colnames, cn)) -***** assert (isequal (y.rownames, rn2)) -***** test y = stk_dataframe (x, {}, rn2); -***** assert (strcmp (class (y), 'stk_dataframe')) -***** assert (isequal (y.colnames, {})) -***** assert (isequal (y.rownames, rn2)) -20 tests, 20 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/subsref.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/subsref.m -***** test - B = stk_hrect ([0 0 0 0; 1 2 3 4]); - B = B(:, [1 3 4]); - assert (strcmp (class (B), 'stk_hrect')); - assert (isequal (double (B), [0 0 0; 1 3 4])); -***** test - B = stk_hrect ([0 0 0 0; 1 2 3 4]); - B = B(1, :); - assert (strcmp (class (B), 'stk_dataframe')); - assert (isequal (double (B), [0 0 0 0])); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/vertcat.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/vertcat.m -***** shared d, x, y - d = 10; - x = stk_hrect (d); - y = double (x); ***** test - z = vertcat (x, x); - assert (isequal (size (z), [4 d])); - assert (strcmp (class (z), 'stk_dataframe')); + model = stk_model (@stk_materncov_aniso); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +warning: sqp: QP subproblem is non-convex and unbounded +warning: called from + sqp at line 441 column 9 + stk_minimize_boxconstrained at line 57 column 18 + stk_param_estim_optim at line 70 column 23 + stk_param_estim at line 139 column 15 + __test__ at line 5 column 14 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1310 column 31 + ***** test - z = vertcat (x, y); - assert (isequal (size (z), [4 d])); - assert (strcmp (class (z), 'stk_dataframe')); + model = stk_model (@stk_materncov32_iso); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) ***** test - z = vertcat (y, x); - assert (isequal (size (z), [4 d])); - assert (strcmp (class (z), 'stk_dataframe')); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/stk_boundingbox.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_boundingbox.m -***** shared x, y - lb = rand (1, 5); - ub = lb + 1; - cn = {'a', 'b', 'c', 'd', 'e'}; - x = stk_hrect ([lb; ub], cn); -***** error y = stk_boundingbox (); -***** test y = stk_boundingbox (x); -***** assert (isequal (y, x)); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/stk_normalize.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_normalize.m -***** shared x, box, y1, y2, y3, y4 - n = 5; box = stk_hrect ([2; 3]); - x = 2 + rand (n, 1); -***** error y1 = stk_normalize (); -***** test y2 = stk_normalize (x); -***** test y3 = stk_normalize (x, box); -***** test assert (~ any ((y2 < -10 * eps) | (y2 > 1 + 10 * eps))); -***** test assert (~ any ((y3 < -10 * eps) | (y3 > 1 + 10 * eps))); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/ismember.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/ismember.m -***** shared n, box - n = 5; - box = stk_hrect (n); -***** assert (ismember (box(1, :), box)) -***** assert (ismember (box(2, :), box)) -***** assert (ismember (.5 * ones (1, 5), box)) -***** assert (~ ismember (box(1, :) - 1, box)) -***** assert (~ ismember (box(2, :) + 1, box)) + model = stk_model (@stk_materncov32_aniso); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) ***** test - y = double (box); y = [y; y + 2]; - assert (isequal (ismember (y, box), [1; 1; 0; 0])) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/stk_hrect.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_hrect.m -***** test stk_test_class ('stk_hrect') -***** shared dom -***** test dom = stk_hrect ([-1; 1], {'x'}); -***** assert (isequal (dom.colnames, {'x'})) -***** assert (isequal (dom.rownames, {'lower_bounds'; 'upper_bounds'})) -***** assert (isequal (dom.data, [-1; 1])) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/stk_rescale.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_hrect/stk_rescale.m -***** shared x - x = rand (10, 4); - y = stk_rescale (x, [], []); - assert (stk_isequal_tolabs (x, y)); + model = stk_model (@stk_materncov52_iso); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) ***** test - y = stk_rescale(0.5, [], [0; 2]); - assert (stk_isequal_tolabs (y, 1.0)); + model = stk_model (@stk_materncov52_aniso); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) ***** test - y = stk_rescale (0.5, [0; 1], [0; 2]); - assert (stk_isequal_tolabs (y, 1.0)); + model = stk_model (@stk_gausscov_iso); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +warning: matrix singular to machine precision, rcond = 1.21281e-17 +warning: called from + linsolve at line 113 column 7 + linsolve at line 42 column 3 + stk_set_righthandside at line 44 column 16 + stk_make_kreq at line 35 column 6 + stk_predict_ at line 112 column 10 + stk_predict at line 104 column 16 + __test__ at line 6 column 5 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1310 column 31 + ***** test - y = stk_rescale (0.5, [0; 2], []); - assert (stk_isequal_tolabs (y, 0.25)); + model = stk_model (@stk_gausscov_aniso); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +warning: matrix singular to machine precision, rcond = 3.93346e-18 +warning: called from + linsolve at line 113 column 7 + linsolve at line 42 column 3 + stk_set_righthandside at line 44 column 16 + stk_make_kreq at line 35 column 6 + stk_predict_ at line 112 column 10 + stk_predict at line 104 column 16 + __test__ at line 6 column 5 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1310 column 31 + +***** test % Homoscedastic case / do_estim_lnv = true + model = stk_model (@stk_materncov32_iso); + [model.param, model.lognoisevariance] = ... + stk_param_init (model, xi, zi, BOX, true); + [model.param, model.lognoisevariance] = ... + stk_param_estim (model, xi, zi); + zp = stk_predict (model, xi, zi, xt); + assert (model.lognoisevariance > -inf); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +warning: This way of setting do_estim_lnv is deprecated +warning: called from + stk_param_init>stk_param_init_ at line 250 column 5 + stk_param_init at line 87 column 18 + __test__ at line 4 column 40 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1310 column 31 + +***** error % Homoscedastic case / do_estim_lnv = false / model.lnv = nan + model = stk_model (@stk_materncov32_iso); + model.lognoisevariance = nan; % not compatible with do_estim_lnv == false + [model.param, model.lognoisevariance] = ... + stk_param_init (model, xi, zi, BOX, false); +***** test % Heteroscedastic case / known noise variance + model = stk_model (@stk_materncov32_iso); + lnv = log ((100 + rand (size (zi))) / 1e6); + model.lognoisevariance = lnv; % here we say that lnv is known + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (isequal (model.lognoisevariance, lnv)); % should be untouched + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +***** shared model, x, z + model = stk_model (@stk_materncov52_iso); + n = 10; x = stk_sampling_regulargrid (n, 1, [0; 1]); z = ones (size (x)); +***** test % Constant response, noiseless model + [param, lnv] = stk_param_init (model, x, z); + assert ((all (isfinite (param))) && (length (param) == 2)); + assert (isequal (lnv, -inf)); +warning: Parameter estimation is impossible with constant-response data. +warning: called from + stk_param_init>paraminit_ at line 351 column 5 + stk_param_init>stk_param_init_ at line 323 column 14 + stk_param_init at line 87 column 18 + __test__ at line 3 column 15 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1310 column 31 + +***** test % Constant response, noisy model + model.lognoisevariance = nan; + [param, lnv] = stk_param_init (model, x, z); + assert ((all (isfinite (param))) && (length (param) == 2)); + assert (isscalar (lnv) && isfinite (lnv)); +warning: Parameter estimation is impossible with constant-response data. +warning: called from + stk_param_init>paraminit_ at line 351 column 5 + stk_param_init>stk_param_init_ at line 323 column 14 + stk_param_init at line 87 column 18 + __test__ at line 4 column 15 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1310 column 31 + +15 tests, 15 passed, 0 known failure, 0 skipped +[inst/param/estim/stk_param_init_lnv.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/param/estim/stk_param_init_lnv.m ***** test - y = stk_rescale (0.5, [0; 2], [0; 1]); - assert (stk_isequal_tolabs (y, 0.25)); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/model/noise/@stk_gaussiannoise_het0/set.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/noise/@stk_gaussiannoise_het0/set.m -***** shared M_post - x_obs = (linspace (0, pi, 15))'; - z_obs = sin (x_obs); - M_prior = stk_model (@stk_materncov32_iso); - M_prior.param = log ([1.0; 2.1]); - M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); -***** error value = get (M_post, 1.33); -***** error value = get (M_post, 'dudule'); -***** test value = get (M_post, 'prior_model'); -3 tests, 3 passed, 0 known failure, 0 skipped + f = @(x)(- (0.8 * x + sin (5 * x + 1) + 0.1 * sin (10 * x))); + ni = 20; + xi = (linspace (-1, 1, ni))' + 0.2 * (randn (ni, 1)); + zi = stk_feval (f, xi); + + model = stk_model (@stk_materncov_iso); + model.param = log ([1; 5/2; 1/0.4]); + model.lognoisevariance = nan; + lnv = stk_param_init_lnv (model, xi, zi); + + assert ((isscalar (lnv)) && (lnv > -30) && (lnv < 30)); +1 test, 1 passed, 0 known failure, 0 skipped [inst/model/prior_struct/stk_ortho_func.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/prior_struct/stk_ortho_func.m ***** shared model, x, n, d @@ -6957,88 +7151,29 @@ ***** assert (isequal (Pa, Pb)); ***** assert (isequal (Pa, Pc)); 31 tests, 31 passed, 0 known failure, 0 skipped -[inst/model/@stk_model_gpposterior/stk_predict_.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/stk_predict_.m -***** shared n, m, M_post, M_prior, x0, x_obs, z_obs, x_prd, y_prd, idx_obs, idx_prd - - n = 10; % number of observations - m = n + 1; % number of predictions - d = 1; % dimension of the input space - - x0 = (linspace (0, pi, n + m))'; - - idx_obs = (2:2:(n+m-1))'; - idx_prd = (1:2:(n+m))'; - - x_obs = x0(idx_obs); +[inst/model/@stk_model_gpposterior/stk_model_gpposterior.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/stk_model_gpposterior.m +***** test stk_test_class ('stk_model_gpposterior') +***** shared M_prior, x_obs, z_obs + x_obs = (linspace (0, pi, 15))'; z_obs = sin (x_obs); - x_prd = x0(idx_prd); M_prior = stk_model (@stk_materncov32_iso); M_prior.param = log ([1.0; 2.1]); - - M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); -***** error y_prd = stk_predict (M_post); -***** test y_prd = stk_predict (M_post, x_prd); -***** error y_prd = stk_predict (M_post, [x_prd x_prd]); -***** test % nargout = 2 - [y_prd1, lambda] = stk_predict (M_post, x_prd); - assert (stk_isequal_tolrel (y_prd, y_prd1)); - assert (isequal (size (lambda), [n m])); -***** test % nargout = 3 - [y_prd1, lambda, mu] = stk_predict (M_post, x_prd); - assert (stk_isequal_tolrel (y_prd, y_prd1)); - assert (isequal (size (lambda), [n m])); - assert (isequal (size (mu), [1 m])); % ordinary kriging -***** test % nargout = 4 - [y_prd1, lambda, mu, K] = stk_predict (M_post, x_prd); - assert (stk_isequal_tolrel (y_prd, y_prd1)); - assert (isequal (size (lambda), [n m])); - assert (isequal (size (mu), [1 m])); % ordinary kriging - assert (isequal (size (K), [m m])); -***** test % nargout = 2, compute only variances - M_post1 = stk_model_gpposterior (M_prior, x_obs, []); - [y_prd_nan, lambda] = stk_predict (M_post1, x_prd); - assert (isequal (size (lambda), [n m])); - assert (all (isnan (y_prd_nan.mean))); -***** test % discrete model (prediction indices provided) - M_prior1 = stk_model (@stk_discretecov, M_prior, x0); - M_post1 = stk_model_gpposterior (M_prior1, idx_obs, z_obs); - y_prd1 = stk_predict (M_post1, idx_prd); - assert (stk_isequal_tolrel (y_prd, y_prd1)); -***** test % discrete model (prediction indices *not* provided) - M_prior1 = stk_model (@stk_discretecov, M_prior, x0); - M_post1 = stk_model_gpposterior (M_prior1, idx_obs, z_obs); - y_prd1 = stk_predict (M_post1, []); % predict them all! - assert (stk_isequal_tolrel (y_prd, y_prd1(idx_prd, :))); -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/model/@stk_model_gpposterior/stk_model_update.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/stk_model_update.m -***** shared x_obs, z_obs, ref, M_prior, x_new, z_new, lnv_new - [x_obs, z_obs, ref] = stk_dataset_twobumps ('noisy2'); - M_prior = stk_model (@stk_materncov52_iso); - M_prior.param = [-0.15; 0.38]; - M_prior.lognoisevariance = 2 * log (ref.noise_std); - x_new = [-0.79; -0.79]; - z_new = [-0.69; -0.85]; - lnv_new = ref.noise_std_func (x_new); -***** test % heteroscedastic - M_prior.lognoisevariance = 2 * log (ref.noise_std); - M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); - M_post = stk_model_update (M_post, x_new, z_new, lnv_new); -***** error % using lnv_new / homoscedastic - M_prior.lognoisevariance = 0; - M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); - M_post = stk_model_update (M_post, x_new, z_new, lnv_new); % NOT OK -***** error % using lnv_new / noiseless - M_prior.lognoisevariance = -inf; - M_post = stk_model_gpposterior (M_prior, x_obs, z_obs) - M_post = stk_model_update (M_post, x_new, z_new, lnv_new); % NOT OK -***** error % not using lnv_new / heteroscedastic - M_prior.lognoisevariance = 2 * log (ref.noise_std); - M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); - M_post = stk_model_update (M_post, x_new, z_new); -4 tests, 4 passed, 0 known failure, 0 skipped +***** test M_post = stk_model_gpposterior (); +***** test M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); +***** error M_post = stk_model_gpposterior (M_prior, x_obs, [z_obs; z_obs]); +***** error M_post = stk_model_gpposterior (M_prior, x_obs, [z_obs; z_obs], 3.441); +***** test % hidden feature + kreq = stk_kreq_qr (M_prior, x_obs); + M_post = stk_model_gpposterior (M_prior, {x_obs, kreq}, z_obs); +***** test % NaNs in prior_model.param + DIM = 1; M = stk_model (@stk_materncov52_aniso, DIM); + M.param = nan (2, 1); % this is currently the default + x = stk_sampling_regulargrid (20, DIM, [0; 1]); + y = sin (double (x)); + zp = stk_predict (M, x, y, x); +7 tests, 7 passed, 0 known failure, 0 skipped [inst/model/@stk_model_gpposterior/stk_predict_leaveoneout.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/stk_predict_leaveoneout.m ***** test % Check virtual Leave-One-Out formula @@ -7076,8 +7211,35 @@ end end 1 test, 1 passed, 0 known failure, 0 skipped -[inst/model/@stk_model_gpposterior/set.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/set.m +[inst/model/@stk_model_gpposterior/stk_model_update.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/stk_model_update.m +***** shared x_obs, z_obs, ref, M_prior, x_new, z_new, lnv_new + [x_obs, z_obs, ref] = stk_dataset_twobumps ('noisy2'); + M_prior = stk_model (@stk_materncov52_iso); + M_prior.param = [-0.15; 0.38]; + M_prior.lognoisevariance = 2 * log (ref.noise_std); + x_new = [-0.79; -0.79]; + z_new = [-0.69; -0.85]; + lnv_new = ref.noise_std_func (x_new); +***** test % heteroscedastic + M_prior.lognoisevariance = 2 * log (ref.noise_std); + M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); + M_post = stk_model_update (M_post, x_new, z_new, lnv_new); +***** error % using lnv_new / homoscedastic + M_prior.lognoisevariance = 0; + M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); + M_post = stk_model_update (M_post, x_new, z_new, lnv_new); % NOT OK +***** error % using lnv_new / noiseless + M_prior.lognoisevariance = -inf; + M_post = stk_model_gpposterior (M_prior, x_obs, z_obs) + M_post = stk_model_update (M_post, x_new, z_new, lnv_new); % NOT OK +***** error % not using lnv_new / heteroscedastic + M_prior.lognoisevariance = 2 * log (ref.noise_std); + M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); + M_post = stk_model_update (M_post, x_new, z_new); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/model/@stk_model_gpposterior/get.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/get.m ***** shared M_post x_obs = (linspace (0, pi, 15))'; z_obs = sin (x_obs); @@ -7088,31 +7250,8 @@ ***** error value = get (M_post, 'dudule'); ***** test value = get (M_post, 'prior_model'); 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/model/@stk_model_gpposterior/stk_model_gpposterior.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/stk_model_gpposterior.m -***** test stk_test_class ('stk_model_gpposterior') -***** shared M_prior, x_obs, z_obs - x_obs = (linspace (0, pi, 15))'; - z_obs = sin (x_obs); - - M_prior = stk_model (@stk_materncov32_iso); - M_prior.param = log ([1.0; 2.1]); -***** test M_post = stk_model_gpposterior (); -***** test M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); -***** error M_post = stk_model_gpposterior (M_prior, x_obs, [z_obs; z_obs]); -***** error M_post = stk_model_gpposterior (M_prior, x_obs, [z_obs; z_obs], 3.441); -***** test % hidden feature - kreq = stk_kreq_qr (M_prior, x_obs); - M_post = stk_model_gpposterior (M_prior, {x_obs, kreq}, z_obs); -***** test % NaNs in prior_model.param - DIM = 1; M = stk_model (@stk_materncov52_aniso, DIM); - M.param = nan (2, 1); % this is currently the default - x = stk_sampling_regulargrid (20, DIM, [0; 1]); - y = sin (double (x)); - zp = stk_predict (M, x, y, x); -7 tests, 7 passed, 0 known failure, 0 skipped -[inst/model/@stk_model_gpposterior/get.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/get.m +[inst/model/@stk_model_gpposterior/set.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/set.m ***** shared M_post x_obs = (linspace (0, pi, 15))'; z_obs = sin (x_obs); @@ -7123,139 +7262,171 @@ ***** error value = get (M_post, 'dudule'); ***** test value = get (M_post, 'prior_model'); 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb09.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb09.m -***** test stk_example_kb09; close all; - -#========================# -# stk_example_kb09 # -#========================# - -'stk_example_kb09' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb09.m - - STK_EXAMPLE_KB09 Generation of sample paths conditioned on noisy observations +[inst/model/@stk_model_gpposterior/stk_predict_.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/@stk_model_gpposterior/stk_predict_.m +***** shared n, m, M_post, M_prior, x0, x_obs, z_obs, x_prd, y_prd, idx_obs, idx_prd - A Matern Gaussian process model is used, with constant but unknown mean - (ordinary kriging) and known covariance parameters. + n = 10; % number of observations + m = n + 1; % number of predictions + d = 1; % dimension of the input space - Given noisy observations from the unknown function, a batch of conditioned - sample paths is drawn using the "conditioning by kriging" technique - (stk_generate_samplepaths function). + x0 = (linspace (0, pi, n + m))'; - See also: stk_generate_samplepaths, stk_conditioning, stk_example_kb05 + idx_obs = (2:2:(n+m-1))'; + idx_prd = (1:2:(n+m))'; + x_obs = x0(idx_obs); + z_obs = sin (x_obs); + x_prd = x0(idx_prd); -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. + M_prior = stk_model (@stk_materncov32_iso); + M_prior.param = log ([1.0; 2.1]); -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. + M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); +***** error y_prd = stk_predict (M_post); +***** test y_prd = stk_predict (M_post, x_prd); +***** error y_prd = stk_predict (M_post, [x_prd x_prd]); +***** test % nargout = 2 + [y_prd1, lambda] = stk_predict (M_post, x_prd); + assert (stk_isequal_tolrel (y_prd, y_prd1)); + assert (isequal (size (lambda), [n m])); +***** test % nargout = 3 + [y_prd1, lambda, mu] = stk_predict (M_post, x_prd); + assert (stk_isequal_tolrel (y_prd, y_prd1)); + assert (isequal (size (lambda), [n m])); + assert (isequal (size (mu), [1 m])); % ordinary kriging +***** test % nargout = 4 + [y_prd1, lambda, mu, K] = stk_predict (M_post, x_prd); + assert (stk_isequal_tolrel (y_prd, y_prd1)); + assert (isequal (size (lambda), [n m])); + assert (isequal (size (mu), [1 m])); % ordinary kriging + assert (isequal (size (K), [m m])); +***** test % nargout = 2, compute only variances + M_post1 = stk_model_gpposterior (M_prior, x_obs, []); + [y_prd_nan, lambda] = stk_predict (M_post1, x_prd); + assert (isequal (size (lambda), [n m])); + assert (all (isnan (y_prd_nan.mean))); +***** test % discrete model (prediction indices provided) + M_prior1 = stk_model (@stk_discretecov, M_prior, x0); + M_post1 = stk_model_gpposterior (M_prior1, idx_obs, z_obs); + y_prd1 = stk_predict (M_post1, idx_prd); + assert (stk_isequal_tolrel (y_prd, y_prd1)); +***** test % discrete model (prediction indices *not* provided) + M_prior1 = stk_model (@stk_discretecov, M_prior, x0); + M_post1 = stk_model_gpposterior (M_prior1, idx_obs, z_obs); + y_prd1 = stk_predict (M_post1, []); % predict them all! + assert (stk_isequal_tolrel (y_prd, y_prd1(idx_prd, :))); +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/model/noise/@stk_gaussiannoise_het0/set.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/noise/@stk_gaussiannoise_het0/set.m +***** shared M_post + x_obs = (linspace (0, pi, 15))'; + z_obs = sin (x_obs); + M_prior = stk_model (@stk_materncov32_iso); + M_prior.param = log ([1.0; 2.1]); + M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); +***** error value = get (M_post, 1.33); +***** error value = get (M_post, 'dudule'); +***** test value = get (M_post, 'prior_model'); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/examples/test_functions/stk_testfun_hartman4.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_hartman4.m +***** test + x = [0.1873 0.1906 0.5566 0.2647 ; + 0.18744768 0.19414868 0.558005333 0.26476409]; + y = stk_testfun_hartman4 (x); + assert (stk_isequal_tolabs (y, ... + [-3.729722308557300; -3.729840440436292], 1e-15)); 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb03.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb03.m -***** test stk_example_kb03; close all; - -#========================# -# stk_example_kb03 # -#========================# - -'stk_example_kb03' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb03.m - - STK_EXAMPLE_KB03 Ordinary kriging in 2D - - An anisotropic Matern covariance function is used for the Gaussian Process - (GP) prior. The parameters of this covariance function (variance, regularity - and ranges) are estimated using the Restricted Maximum Likelihood (ReML) - method. - - The mean function of the GP prior is assumed to be constant and unknown. This - default choice can be overridden by means of the model.lm property. - - The function is sampled on a space-filling Latin Hypercube design, and the - data is assumed to be noiseless. - - -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. - -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. - -BOX = 2-dimensional hyper-rectangle (stk_hrect object): +[inst/examples/test_functions/stk_testfun_goldsteinprice.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_goldsteinprice.m +***** test % Use with nargin == 0 for visualisation + stk_testfun_goldsteinprice (); close all; +***** assert (stk_isequal_tolabs ... + (stk_testfun_goldsteinprice ([0, -1]), 3.0, 1e-12)) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/examples/test_functions/stk_testfun_hartman3.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_hartman3.m +***** test + x1 = [0.1, 0.55592003, 0.85218259]; + y1 = -3.862634748621772; - : x_1 x_2 - lower_bounds : -5 0 - upper_bounds : 10 15 + x2 = [0.114614 0.554649 0.852547]; + y2 = -3.862747199255087; + y = stk_testfun_hartman3 ([x1; x2]); + assert (stk_isequal_tolabs (y, [y1; y2], 1e-15)) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb05.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb05.m -***** test stk_example_kb05; close all; - -#========================# -# stk_example_kb05 # -#========================# - -'stk_example_kb05' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb05.m - - STK_EXAMPLE_KB05 Generation of conditioned sample paths - - A Matern Gaussian process model is used, with constant but unknown mean - (ordinary kriging) and known covariance parameters. - - Given noiseless observations from the unknown function, a batch of conditioned - sample paths is drawn using the "conditioning by kriging" technique. In short, - this means that unconditioned sample path are simulated first (using - stk_generate_samplepaths), and then conditioned on the observations by kriging - (using stk_conditioning). +[inst/examples/test_functions/stk_testcase_truss3.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testcase_truss3.m +***** shared tc, xd, n + tc = stk_testcase_truss3 (); n = 5; + xd = stk_sampling_randunif (n, [], tc.search_domain); +***** test + v = stk_testfun_truss3_vol (xd, tc.constants); + z = stk_testfun_truss3_bb (xd, tc.constants); + assert (isequal (size (v), [n 1])); + assert (isequal (size (z), [n 5])); +***** test + F = stk_dataframe (zeros (n, 2), {'F1' 'F2'}); + F(:, 1) = tc.constants.F1_mean + tc.constants.F1_std * randn (n, 1); + F(:, 2) = tc.constants.F2_mean + tc.constants.F2_std * randn (n, 1); + x = [xd F]; + v = stk_testfun_truss3_vol (x, tc.constants); + z = stk_testfun_truss3_bb (x, tc.constants); + assert (isequal (size (v), [n 1])); + assert (isequal (size (z), [n 5])); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/examples/test_functions/stk_testfun_hartman6.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_hartman6.m +***** test + x1 = [0.20169 0.150011 0.476874 0.275332 0.311652 0.657300]; + y1 = -3.322368011391339; - Note: in this example, for pedagogical purposes, conditioned samplepaths are - simulated in two steps: first, unconditioned samplepaths are simulated; - second, conditioned samplepaths are obtained using conditioning by kriging. - In practice, these two steps can be carried out all at once using - stk_generate_samplepath (see, e.g., stk_example_kb09). + x2 = [0.20168952 0.15001069 0.47687398 0.27533243 0.31165162 0.65730054]; + y2 = -3.322368011415512; - See also: stk_generate_samplepaths, stk_conditioning, stk_example_kb09 + y = stk_testfun_hartman6 ([x1; x2]); + assert (stk_isequal_tolabs (y, [y1; y2], 1e-15)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/03_miscellaneous/stk_example_misc05.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc05.m +***** test + stk_example_misc05; close all; + assert (isa (model.lognoisevariance, 'stk_gaussiannoise_het0')); +#==========================# +# stk_example_misc05 # +#==========================# -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. +'stk_example_misc05' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc05.m -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb01.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb01.m -***** test stk_example_kb01; close all; + STK_EXAMPLE_MISC05 Parameter estimation for heteroscedastic noise variance -#========================# -# stk_example_kb01 # -#========================# + DESCRIPTION -'stk_example_kb01' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb01.m + We consider a 1d prediction problem with noisy data, where the variance of + the noise depends on the input location. - STK_EXAMPLE_KB01 Ordinary kriging in 1D, with noiseless data + A simple heteroscedastic model is used, where the only parameter to be + estimated is a dispersion parameter (the square of a scale parameter). + More preciesely, the variance of the noise is assumed to be of the form - This example shows how to compute ordinary kriging predictions on a - one-dimensional noiseless dataset. + tau^2(x) = phi * (x + 1) ^ 2, - The word 'ordinary' indicates that the mean function of the GP prior is - assumed to be constant and unknown. + and the dispersion parameter phi is estimated together with the parameters + of the covariance function. - A Matern covariance function is used for the Gaussian Process (GP) prior. - The parameters of this covariance function are assumed to be known (i.e., - no parameter estimation is performed here). + EXPERIMENTAL FEATURE WARNING - Note that the kriging predictor, which is the posterior mean of the GP, - interpolates the data in this noiseless example. + This script demonstrates an experimental feature of STK (namely, gaussian + noise model objects). STK users that wish to experiment with it are + welcome to do so, but should be aware that API-breaking changes are likely + to happen in future releases. We invite them to direct any questions, + remarks or comments about this experimental feature to the STK mailing + list. - See also: stk_example_kb01n, stk_example_kb02 + See also: stk_example_kb09 Additional help for built-in functions and operators is @@ -7269,7 +7440,7 @@ scalar structure containing the fields: - covariance_type = @stk_materncov_iso + covariance_type = @stk_materncov52_iso lm = @@ -7277,58 +7448,35 @@ dim = 1 param = - -0.6931 - 1.3863 - 0.9163 + 0.066833 + 0.707310 - lognoisevariance = -Inf + lognoisevariance = - line 0: warning: iconv failed to convert degree sign - - - | True function and observed data - 1.5 +|+ - | ****G** +--------------------+ - #|#######***#####****#######################|***?***True function| - 1 +|+####***##########***#####################+---G---Observations-+ - #|####**##############**######################################### - #|###**################**######################################## - 0.5 +|+#**##################**###########################*****G###### - #|*G######################**######################***######***### - 0 +|*########################**####################G*##########***# - G|##########################**#################***#############*** - #|###########################**###############**#################** - -0.5 +|+###########################**#############**################## * - #|#############################**###########**################### - #|##############################*G#########**#################### - -1 +|+##############################***#####**###################### - #|#################################*******####################### - +|------------------------------------------------------------------ - -1.5 +-+##############+###############+################+############## + - -1 -0.5 0 0.5 1 - input variable x - -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb02.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb02.m -***** test stk_example_kb02; close all; + -#========================# -# stk_example_kb02 # -#========================# -'stk_example_kb02' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb02.m - STK_EXAMPLE_KB02 Ordinary kriging in 1D with parameter estimation +gn = +| +| Heteroscedastic variance model: tau^2(x) = dispersion * variance_function(x) +| +| dispersion: 2.4169 [log_dispersion = 0.8825] +| variance_function: @(x) (x + 1) .^ 2 +| - This example shows how to estimate covariance parameters and compute - ordinary kriging predictions on a one-dimensional noiseless dataset. +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/03_miscellaneous/stk_example_misc03.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc03.m +***** test stk_example_misc03; close all; - The model and data are the same as in stk_example_kb01, but this time the - parameters of the covariance function are estimated using the Restricted - Maximum Likelihood (ReML) method. +#==========================# +# stk_example_misc03 # +#==========================# - See also: stk_example_kb01, stk_example_kb02n +'stk_example_misc03' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc03.m + + STK_EXAMPLE_MISC03 How to deal with (known) seasonality Additional help for built-in functions and operators is @@ -7342,7 +7490,7 @@ scalar structure containing the fields: - covariance_type = @stk_materncov_iso + covariance_type = @stk_materncov52_iso lm = @@ -7350,163 +7498,67 @@ dim = 1 param = - -0.2108 - 2.3026 - 0.7562 - - lognoisevariance = -Inf - - line 0: warning: iconv failed to convert degree sign - - - | True function and observed data - 1.5 +|+ - | ***G* +--------------------+ - #|#######***#####***########################|***?***True function| - 1 +|+#####**#########***######################+---G---Observations-+ - #|####**#############***######################################### - #|###**################**######################################## - 0.5 +|+#**##################**############################***######## - #|#G*####################**########################****##*G**#### - #|**######################**#####################G**########***## - F1 0 *|+########################**###################**############*** - G|##########################**#################**###############** - #|###########################**###############**#################** - -0.5 +|+###########################**#############**################## - #|#############################**###########*#################### - #|##############################*G*#######**##################### - -1 +|+###############################**#####**###################### - #|#################################******######################## - +|------------------------------------------------------------------ - -1.5 +-+##############+###############+################+############## + - -1 -0.5 0 0.5 1 - -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb01n.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb01n.m -***** test stk_example_kb01n; close all; - -#=========================# -# stk_example_kb01n # -#=========================# - -'stk_example_kb01n' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb01n.m - - STK_EXAMPLE_KB01N Ordinary kriging in 1D, with noisy data - - This example shows how to compute ordinary kriging predictions on a - one-dimensional noisy dataset. - - The Gaussian Process (GP) prior is the same as in stk_example_kb01. - - The observation noise is Gaussian and homoscedastic (constant variance). - Its variance is assumed to be known. - - Note that the kriging predictor, which is the posterior mean of the GP, - does NOT interpolate the data in this noisy example. - - See also: stk_example_kb01, stk_example_kb02n + 1.5856 + -1.7853 + lognoisevariance = -4.7251 -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. - -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. -model = +model2 = scalar structure containing the fields: - covariance_type = @stk_materncov_iso + covariance_type = @stk_materncov52_iso lm = - +@(t) [ones(length (t), 1), sin(2 * pi * t / T0), cos(2 * pi * t / T0)] dim = 1 param = - -0.6931 - 1.3863 - 0.9163 + -9.7073 + -8.1781 - lognoisevariance = -3.2189 + lognoisevariance = -4.7060 - line 0: warning: iconv failed to convert degree sign - - - | True function and observed data - 1.5 +|+ - | G******* +--------------------+ - #|#######***##G##G***#######################|***?***True function| - 1 +|+####G**##########*G*#####################+---G---Observations-+ - #|####**##############**######################################### - #|###**################*G###########################G############ - 0.5 G|+#**##################**###########################******G###G# - #|*G######################**######################***###G##***### - 0 +|*########################**####################**##########***# - *|##########################**#################**G#############*** - #|###########################**###############**#################*G - -0.5 +|+#########################G#*G#############**################## * - #|#############################**###########*G################### - #|##############################**#G#######**#################### - -1 +|+##############################***#####*G###################### - #|#################################***G***####################### - +|------------------------------------------------------------------ - -1.5 +-+##############+###############+################+############## + - -1 -0.5 0 0.5 1 - input variable x - 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb08.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb08.m -***** test stk_example_kb08; close all; - -#========================# -# stk_example_kb08 # -#========================# - -'stk_example_kb08' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb08.m +[inst/examples/03_miscellaneous/stk_example_misc04.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc04.m +***** test stk_example_misc04; close all; - STK_EXAMPLE_KB08 Generation of conditioned sample paths made easy +#==========================# +# stk_example_misc04 # +#==========================# - It has been demonstrated, in stk_example_kb05, how to generate conditioned - sample paths using unconditioned sample paths and conditioning by kriging. +'stk_example_misc04' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc04.m - This example shows how to do the same in a more concise way, letting STK - take care of the details. + STK_EXAMPLE_MISC04 Pareto front simulation + DESCRIPTION -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. + We consider a bi-objective optimization problem, where the objective + functions are modeled as a pair of independent stationary Gaussian + processes with a Matern 5/2 anisotropic covariance function. -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb06.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb06.m -***** test stk_example_kb06; close all; + Figure (a): represent unconditional realizations of the Pareto front and + and estimate of the probability of being non-dominated at each point + of the objective space. -#========================# -# stk_example_kb06 # -#========================# + Figure (b): represent conditional realizations of the Pareto front and + and estimate of the posteriorior probability of being non-dominated + at each point of the objective space. -'stk_example_kb06' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb06.m + EXPERIMENTAL FUNCTION WARNING - STK_EXAMPLE_KB06 Ordinary kriging VS kriging with a linear trend + This script uses the stk_plot_probdom2d function, which is currently + considered an experimental function. Read the help for more information. - The same dataset is analyzed using two variants of kriging. + REFERENCE - The left panel shows the result of ordinary kriging, in other words, Gaussian - process interpolation assuming a constant (but unknown) mean. The right panel - shows the result of adding a linear trend in the mean of the Gaussian process. + [1] Michael Binois, David Ginsbourger and Olivier Roustant, Quantifying + uncertainty on Pareto fronts with Gaussian Process conditional simu- + lations, European J. of Operational Research, 2043(2):386-394, 2015. - The difference with the left plot is clear in extrapolation: the first predic- - tor exhibits a "mean reverting" behaviour, while the second one captures an - increasing trend in the data. + See also: stk_plot_probdom2d Additional help for built-in functions and operators is @@ -7516,27 +7568,58 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb02n.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb02n.m -***** test stk_example_kb02n; close all; + line 0: warning: iconv failed to convert degree sign -#=========================# -# stk_example_kb02n # -#=========================# +multiplot> set style increment default; + ^ + line 0: warning: deprecated command + Proba. of being dominated + simulated Pareto fronts--| || + | & *&*%@#+#* +$$$%+ = | ++--+---+---+--+--+ ++||00% + | & *&*%@@@#*@@$@$%@@=@@| ||##|###|###|##|##| || + #|#&##*&*%@###*##$$$%##= | |+##+###+###+##+##| || + #|#&##*&*%@########$%#####| |#################| || + 500 +|+&##*&*%@##**##$$$%##=-+| 500 +---+##########+---+ || + #|#&##*&*%@##**##$$$%##= | |#################| ++||5% + #|#&##*&*%@##**##$$$%##= | |#################| || + #|#&##*************$%*****| |#################| || + #|#&###&#%@*#**##$$$%%#= | |#################| || + 0 +|+&###&#%@@@@@@@@@$@%second objective--+##########+---+ ++||0% + #|#&###&#%#*#**##=$$###= | |#################| || + #|#&###&#%#########$###=##| |#################| || + #|#&###&#%%%%%%%%%%$$$$$$$| |#################| || + #|#&###&#######********=**| |#################| || + #|#&###&##########$####== | -500 |#################| ++||5% + -500 +|+&###&&&&&&&&&&&&&&&&&==| +---+##########+---+ || + #|#&##############$$$$$$$$| |#################| || + #|#&#################### | |+##+###+###+##+##| || + #|------------------------| +|--|---|---|--|--+ || + ###+###+####+###+####+## -20-1000+01002000 ++-0% + -200-1000 0 1000 2000 + first objective first objective +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/03_miscellaneous/stk_example_misc02.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc02.m +***** test stk_example_misc02; close all; -'stk_example_kb02n' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb02n.m +#==========================# +# stk_example_misc02 # +#==========================# - STK_EXAMPLE_KB02N Noisy ordinary kriging in 1D with parameter estimation +'stk_example_misc02' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc02.m - This example shows how to estimate covariance parameters and compute - ordinary kriging predictions on a one-dimensional noisy dataset. + STK_EXAMPLE_MISC02 How to use priors on the covariance parameters - The model and data are the same as in stk_example_kb02, but this time the - parameters of the covariance function and the variance of the noise are - jointly estimated using the Restricted Maximum Likelihood (ReML) method. + A Matern covariance in dimension one is considered as an example. A Gaussian + prior is used for all three parameters: log-variance, log-regularity and log- + inverse-range. The corresponding parameter estimates are Maximum A Posteriori + (MAP) estimates or, more precisely, Restricted MAP (ReMAP) estimates. - See also: stk_example_kb01n, stk_example_kb02 + Several values for the variance of the prior are successively considered, to + illustrate the effect of this prior variance on the parameter estimates. When + the variance is small, the MAP estimate is close to the mode of the prior. On + the other hand, when the variance is large, the prior becomes "flat" and the + MAP estimate is close to the ReML estimate (see figure b). Additional help for built-in functions and operators is @@ -7546,64 +7629,52 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. -model = - - scalar structure containing the fields: - - covariance_type = @stk_materncov_iso - lm = - - - - dim = 1 - param = - - -0.098610 - 2.302585 - 0.613435 - - lognoisevariance = -3.0915 - -True noise variance = 0.0400 -Estimated noise variance = 0.0454 - line 0: warning: iconv failed to convert degree sign - - | True function and noisy observed data - 1.5 +|+ - | G ***** +--------------------+ - #|#######***##G##G**########################|***?***True function| - 1 +|+####G**#########**G######################+---G---Observations-+ - #|####**#############***######################################### - #|###**################**######################################## - 0.5 +|+#**##################G*##########################G#***######## - G|#**####################**########################****#G**G*##G# - #|*G######################**#####################***########***## - F1 0 *|+########################**###################**############*** - *|##########################**#################**G##############**G - #|###########################**G##############**#################** - -0.5 +|+#########################G#**#############**################## - #|#############################**###########*G################### - #|##############################***G######**##################### - -1 +|+###############################**#####*G###################### - #|#################################***G**######################## - +|------------------------------------------------------------------ - -1.5 +-+##############+###############+################+############## + - -1 -0.5 0 0.5 1 - + | prior std = 10.00 | prior std = 1.00 + 3 +|+ 4 +|+ #### + %|%## ####%%%% 3 +|+# ##%%%%% + 2 +|+&&&%&&&%######%&&&&&&&& 2 +|+&&%##%%%######%%&&&&&&& + 1 +|+#==GG==&&%###&&&######& 1 +|+#&&GG==&&%###&&&&#####& + =|===&&&&====G=G=====predicted outpu| z===&&====G=G========== + 0 +|+&&&##%&&&&&&&&&&######& 0 +|+&&&##%&&&&&&&&&&######& + -1 +|+%#############%&&&&&&&& -1 +|+%#############%&&&&&&&& + +|------------------------- -2 +|------------------------- + -2 +-+##+####+####+####+### + -3 +-+##+####+####+####+####+ + 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 + | prior std = 0.20 | prior std = 0.01 + 6 +|+ 6 +|+ + | ### | # + 4 +|+#################%%%%%% 4 +|+##################%%%%% + 2 +|+%####&&%######%&&&&&&&& 2 +|+#####%%########&&&&&&&& + &|&&==GG=====&&======predicted outpu| z&=GG=====#%=========== + 0 +|+==&###%&&=G=G&&&&#####& 0 +|+===####%&=G=G&&&&&&###& + -2 +|+&%#############%&&&&&&& -2 +|+&###############%%&&&&& + +|------------------------- +|------------------------- + -4 +-+##+####+####+####+### + -4 +-+##+####+####+####+### + + 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 + input x input x 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb07.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb07.m -***** test stk_example_kb07; close all; +[inst/examples/03_miscellaneous/stk_example_misc01.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc01.m +***** test stk_example_misc01; close all; -#========================# -# stk_example_kb07 # -#========================# +#==========================# +# stk_example_misc01 # +#==========================# -'stk_example_kb07' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb07.m +'stk_example_misc01' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc01.m - STK_EXAMPLE_KB07 Simulation of sample paths from a Matern process + STK_EXAMPLE_MISC01 Several correlation functions from the Matern family + + The Matern 1/2 correlation function is also known as the "exponential correla- + tion function". This is the correlation function of an Ornstein-Ulhenbeck pro- + cess. + + The Matern covariance function tends to the Gaussian correlation function when + its regularity (smoothness) parameter tends to infinity. + + See also: stk_materncov_iso, stk_materncov_aniso Additional help for built-in functions and operators is @@ -7613,31 +7684,6 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. - line 0: warning: iconv failed to convert degree sign - - |--Matern, nu = 0.5------| |--Matern, nu = 1.5------| - 4 +|+ + + + +-+| 3 +|+ + + + +-+| - @| + + + +| 2 +|+ $$*## ** +***==+| - 2 @|=$$$$$$$$=====##*@@#**-+| @|&&&&$###******@****=***=| - =|==*=======*==####*##****| 1 *|$&&&&$$$=**=*******#****| -response z*|****=#=*##**###########response z*|######*#**&####**#####&*| - #|##############*###*#####| -1 #|#=***#######%%#####*####| - -2 *|*####*##**###%####**@@*#| #|#*%%***=#####%%%%##### | - *|------------------------| -2 +|------------------------| - -4 +-+###+######+#####+###+-+ -3 +-+###+######+#####+###+-+ - -1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1 - |--Matern, nu = 2.5------| |--Matern, nu = 10.0-----| - 3 +|+ + + + ##-+| 3 +|+ + + + +-+| - 2 +|+ + ***** +%%####| 2 %|%%%%+ + @@ %%%%| - #|===***&&&&*##%******##@#| %|#&&&%%########@@@#@@%##%| - 1 *|####==**$&&%%########***| 1 #|&&@====@@@@&&&&&&*******| -response z*|#%%#####**####$$**##$%&response z*|#####******==######$****| - -1 #|@%#**@@####*======******| -1 @|#***####***###****###*&&| - &|@@@&**###**#&&&@&&#=== | @|######$#####**#*****####| - -2 &|------------------------| -2 +|------------------------| - -3 +-+###+######+#####+###+== -3 +-+###+######+#####+###+-+ - -1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1 - input variable x input variable x 1 test, 1 passed, 0 known failure, 0 skipped [inst/examples/02_design_of_experiments/stk_example_doe02.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe02.m @@ -7688,26 +7734,26 @@ - |----------------------n = 10, fd = 3.37e-01-------------------------| - 1 +|+ F + + + + +-+| - +| + + F + + +| - #|###################################################################F | + |----------------------n = 10, fd = 2.82e-01-------------------------| + 1 +|+ + + + + +-+| + +| + + + + F +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+##########F######################################################+-+| #|################################################################### | - 0.8 +|+################################################F################+-+| #|################################################################### | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### | + 0.6 +|+#################################################################F-+| + #|########################################F########################## | #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| #|################################################################### | - #|#########################################################F######### | - 0.2 +|+#################################################################+-+| + 0.2 +|+############################F####################################+-+| + #|####################################################F############## | #|################################################################### | - #|##############F#################################################### | +|---------------------------------------------------------------------| - 0 +-+###########+#############+#############+#############+###########+-+ + 0 +-+###########+#F###########+#############+#############+###########+-+ 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -7718,26 +7764,26 @@ - |----------------------n = 11, fd = 3.33e-01-------------------------| - 1 +|+ F + + + + +-+| - +| + + F + + +| - #|###################################################################F | + |----------------------n = 11, fd = 2.82e-01-------------------------| + 1 +|+ + + + + +-+| + +| + + + + F +| + #|######################################F############################ | #|################################################################### | - 0.8 +|+################################################F################+-+| + 0.8 +|+##########F######################################################+-+| #|################################################################### | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| + 0.6 +|+#################################################################F-+| + #|########################################F########################## | #|################################################################### | - #|#########################################################F######### | - 0.2 +|+#################################################################+-+| + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| + #|################################################################### | + 0.2 +|+############################F####################################+-+| + #|####################################################F############## | #|################################################################### | - #|##############F#################################################### | +|---------------------------------------------------------------------| - 0 +-+###########+#############+#############+#############+###########+-+ + 0 +-+###########+#F###########+#############+#############+###########+-F 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -7748,26 +7794,26 @@ - |----------------------n = 12, fd = 3.08e-01-------------------------| - 1 +|+ F + + + + +-+| - +| + + F + + +| - #|###################################################################F | + |----------------------n = 12, fd = 2.80e-01-------------------------| + 1 F|+ + + + + +-+| + +| + + + + F +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+##########F######################################################+-+| #|################################################################### | - 0.8 +|+################################################F################+-+| #|################################################################### | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| + 0.6 +|+#################################################################F-+| + #|########################################F########################## | #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| #|################################################################### | - #|#########################################################F######### | - 0.2 +|+#################################################################+-+| + 0.2 +|+############################F####################################+-+| + #|####################################################F############## | #|################################################################### | - #|##############F#################################################### | +|---------------------------------------------------------------------| - 0 +-+###########+#############+#############+#############+###########+-F + 0 +-+###########+#F###########+#############+#############+###########+-F 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -7776,30 +7822,6 @@ ^ line 0: invalid command - - - |----------------------n = 13, fd = 2.55e-01-------------------------| - 1 +|+ F + + + + +-+| - +| + + F + + +| - #|###################################################################F | - #|################################################################### | - 0.8 +|+################################################F################+-+| - #|################################################################### | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| - #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| - #|################################################################### | - #|#########################################################F######### | - 0.2 +|+#################################################################+-+| - #|################################################################### | - #|##############F#################################################### | - +|---------------------------------------------------------------------| - 0 F-+###########+#############+#############+#############+###########+-F - 0 0.2 0.4 0.6 0.8 1 - line 0: warning: iconv failed to convert degree sign gnuplot> " font ":Bold,10" textcolor rgb " @@ -7808,26 +7830,26 @@ - |----------------------n = 14, fd = 2.53e-01-------------------------| - 1 +|+ F + + + + +-+| - +| + + F + + +| - #|###################################################################F | + |----------------------n = 14, fd = 2.63e-01-------------------------| + 1 F|+ + + + + +-+| + +| + + + + F +| + #|######################################F############################ | #|################################################################### | - 0.8 +|+################################################F################+-+| + 0.8 +|+##########F######################################################+-+| #|################################################################### | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| + 0.6 F|+#################################################################F-+| + #|########################################F########################## | #|################################################################### | - #|#############################F###########################F######### | - 0.2 +|+#################################################################+-+| + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| + #|################################################################### | + 0.2 +|+############################F####################################+-+| + #|####################################################F############## | #|################################################################### | - #|##############F#################################################### | +|---------------------------------------------------------------------| - 0 F-+###########+#############+#############+#############+###########+-F + 0 +-+###########+#F###########+###########F#+#############+###########+-F 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -7838,26 +7860,26 @@ - |----------------------n = 15, fd = 2.41e-01-------------------------| - 1 +|+ F + + + + +-+| - +| + + F + + +| - #|###################################################################F | - #|################################################################### | - 0.8 +|+################################################F################+-+| - #|#################F################################################# | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| + |----------------------n = 15, fd = 2.52e-01-------------------------| + 1 F|+ + F + + + +-+| + +| + + + + F +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+##########F######################################################+-+| #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| #|################################################################### | - #|#############################F###########################F######### | - 0.2 +|+#################################################################+-+| + 0.6 F|+#################################################################F-+| + #|########################################F########################## | + #|################################################################### | + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| + #|################################################################### | + 0.2 +|+############################F####################################+-+| + #|####################################################F############## | #|################################################################### | - #|##############F#################################################### | +|---------------------------------------------------------------------| - 0 F-+###########+#############+#############+#############+###########+-F + 0 +-+###########+#F###########+###########F#+#############+###########+-F 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -7868,26 +7890,26 @@ - |----------------------n = 16, fd = 2.36e-01-------------------------| - 1 +|+ F + + + + +-+| - +| + + F + + +| - #|###################################################################F | - #|################################################################### | - 0.8 +|+################################################F################+-+| - #|#################F################################################# | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| + |----------------------n = 16, fd = 2.46e-01-------------------------| + 1 F|+ + F + + + +-+| + +| + + + + F +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+##########F######################################################+-+| + #|################################################################### | #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| + 0.6 F|+#################################################################F-+| + #|########################################F########################## | #|################################################################### | - #|#############################F###########################F######### | - 0.2 +|+#################################################################+-+| + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| #|################################################################### | - #|##############F#################################################### | + 0.2 +|+############################F####################################+-+| + #|####################################################F############## | + F|################################################################### | +|---------------------------------------------------------------------| - 0 F-+###########+#############+#############+##########F##+###########+-F + 0 +-+###########+#F###########+###########F#+#############+###########+-F 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -7898,26 +7920,26 @@ - |----------------------n = 17, fd = 2.35e-01-------------------------| - 1 +|+ F + + + + +-+| - +| + + F + + +| - #|###################################################################F | - #|################################################################### | - 0.8 +|+################################################F################+-+| - #|#################F################################################# | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| - #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| - #|################################################################### | - #|#############################F###########################F######### | - 0.2 F|+#################################################################+-+| - #|################################################################### | - #|##############F#################################################### | + |----------------------n = 17, fd = 2.44e-01-------------------------| + 1 F|+ + F + + + +-+| + +| + + + + F +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+##########F######################################################+-+| + #|###########################F####################################### | + #|################################################################### | + 0.6 F|+#################################################################F-+| + #|########################################F########################## | + #|################################################################### | + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| + #|################################################################### | + 0.2 +|+############################F####################################+-+| + #|####################################################F############## | + F|################################################################### | +|---------------------------------------------------------------------| - 0 F-+###########+#############+#############+##########F##+###########+-F + 0 +-+###########+#F###########+###########F#+#############+###########+-F 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -7928,26 +7950,26 @@ - |----------------------n = 18, fd = 2.28e-01-------------------------| - 1 +|+ F + + + F + +-+| - +| + + F + + +| - #|###################################################################F | - #|################################################################### | - 0.8 +|+################################################F################+-+| - #|#################F################################################# | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| - #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| - #|################################################################### | - #|#############################F###########################F######### | - 0.2 F|+#################################################################+-+| - #|################################################################### | - #|##############F#################################################### | + |----------------------n = 18, fd = 2.44e-01-------------------------| + 1 F|+ + F + + + +-+| + +| + + + + F +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+##########F######################################################+-+| + #|###########################F#######################F############### | + #|################################################################### | + 0.6 F|+#################################################################F-+| + #|########################################F########################## | + #|################################################################### | + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| + #|################################################################### | + 0.2 +|+############################F####################################+-+| + #|####################################################F############## | + F|################################################################### | +|---------------------------------------------------------------------| - 0 F-+###########+#############+#############+##########F##+###########+-F + 0 +-+###########+#F###########+###########F#+#############+###########+-F 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -7958,49 +7980,52 @@ - |----------------------n = 19, fd = 2.27e-01-------------------------| - 1 +|+ F + + + F + +-+| - +| + + F + + +| - #|###################################################################F | - #|################################################################### | - 0.8 +|+################################################F################+-+| - #|#################F################F################################ | - #|#F################################################################# | - 0.6 +|+#################################################################+-+| - #|#########################F######################################### F| - #|################################################################### | - #|#############################################F##################### | - 0.4 +|+###########F#####################################################+-+| - #|################################################################### | - #|#############################F###########################F######### | - 0.2 F|+#################################################################+-+| - #|################################################################### | - #|##############F#################################################### | + |----------------------n = 19, fd = 2.33e-01-------------------------| + 1 F|+ + F + + + +-+| + +| + + + + F +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+##########F######################################################+-+| + #|###########################F#######################F############### | + #|################################################################### | + 0.6 F|+#################################################################F-+| + #|########################################F########################## | + #|################################################################### | + #|####################F############################################## | + 0.4 +|+#################################################################+-+| + #|################################################################### F| + #|################################################################### | + 0.2 +|+############F###############F####################################+-+| + #|####################################################F############## | + F|################################################################### | +|---------------------------------------------------------------------| - 0 F-+###########+#############+#############+##########F##+###########+-F + 0 +-+###########+#F###########+###########F#+#############+###########+-F 0 0.2 0.4 0.6 0.8 1 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/02_design_of_experiments/stk_example_doe05.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe05.m -***** test stk_example_doe05; close all; +[inst/examples/02_design_of_experiments/stk_example_doe04.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe04.m +***** test stk_example_doe04; close all; #=========================# -# stk_example_doe05 # +# stk_example_doe04 # #=========================# -'stk_example_doe05' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/02_design_of_experiments/stk_example_doe05.m +'stk_example_doe04' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/02_design_of_experiments/stk_example_doe04.m - STK_EXAMPLE_DOE05 A simple illustration of 1D Bayesian optimization + STK_EXAMPLE_DOE04 Probability of misclassification - Our goal here is to minimize the one-dimensional function + The upper panel shows posterior means and variances as usual, and the + threshold of interest, which is at T = 0.85 (dashed line). - x |--> x * sin (x) + The lower panel shows the probability of misclassification as a function of x + (blue curve), i.e., the probability that the actual value of the function is + not on the same side of the threshold as the prediction (posterior mean). - over the interval [0; 4 * pi], using noisy evaluations. + We also plot the expected future probability of misclassification (magenta + curve), should a new evaluation be made at x = 3. - Evaluations points are chosen sequentially using either AKG criterion - (default) or the EQI criterion (set SAMPCRIT_NAME to 'EQI'); + Note that both probabilities are obtained using stk_pmisclass. Additional help for built-in functions and operators is @@ -8010,709 +8035,304 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. - line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,11" textcolor rgb " - ^ - line 0: invalid command +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/02_design_of_experiments/stk_example_doe03.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe03.m +***** test stk_example_doe03; close all; - - | n = 5 + 0 = 5. - 10 +|+ - | ========= - 5 +|+&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%====%%%%%%%===%%%%########## - 0 +|+************G*****************************G*=&&&&&&&&&&&&& - z &|&&&&&&&&&&&&&&&======&&&&===G&&&&&&&&&&&&&&&*************** - -5 +|+###################======####%%%%%%%%%%%%%%%%%===&&&&&&&&G - -10 +|+################################################===###===# - +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.04 +|+ + + + + + +-+| - 0.035 +|+ + + + + + +-+| - 0.03 +|+#######################################################**F| - 0.025 +|+######################################################**-+| - AKG 0.02 +|+####################***********######################**+-+| - 0.015 +|+#################****#########******################**#+-+| - 0.01 +|+#############*****#################****############**##+-+| - 0.005 *|-----------------------------------------------------------| - 0 +-+#######+#########+#########+#########+#####*******#####+-+ - 0 2 4 6 8 10 12 - x - line 0: warning: iconv failed to convert degree sign +#=========================# +# stk_example_doe03 # +#=========================# -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command +'stk_example_doe03' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/02_design_of_experiments/stk_example_doe03.m - - | n = 5 + 5 = 10. - 10 +|+ - | ========= - 5 +|+%%%%%%%%%################%%%%%==G=%%%%%%%===############ - 0 +|+*********===G==&&&&&&&&******************&G==&&&&%%##### - z &|&&&&&&&&&*********G*****&===G&&&&&&&&&&&&&***********&&&&&& - -5 +|+##############%%%%%======################%%%&&===&&******G - -10 +|+################################################===#%%===G - +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.0012 +|+ + + + + + +-+| - 0.001 +|+ + + + + **F* +-+| - #|###############################################**###*#### | - 0.0008 +|+##############################################*####**##+-+| -AKG0.0006 +|+#############################################*######*##+-+| - 0.0004 +|+############################################*#######*##+-+| - #|############################################*#########*## | - 0.0002 +|-----------------------------------------------------------| - 0 *********************************************#####+######**** - 0 2 4 6 8 10 12 - x - line 0: warning: iconv failed to convert degree sign + STK_EXAMPLE_DOE03 A simple illustration of 1D Bayesian optimization -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command + Our goal here is to optimize (maximize) the one-dimensional function - - | n = 5 + 10 = 15. - 15 +|+ - 10 +|+ ####### ##### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%#%%%%%&&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&##**G****&&&&&&##**G**=G######### - -5 +|+&&&####&&&&&&&&**G*******===&&&%%%%%%%&&&&&&****&%#####%%G - #|#%%%&&&&%%%%####%%&&&&&&&&&%##################%&**G**&**G*G - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.25 +|+ + + + + + +-+| - +| + + + + +** *F+| - 0.2 +|+###############################################*#*#####*-*| - 0.15 +|+##############################################**#**####*-*| - AKG #|###############################################*###*###*# | - 0.1 +|+##############################################*###*###*+-+| - 0.05 +|+#############################################*####*###*+-+| - +|-----------------------------------------------------------| - 0 ************************************************##+###**##+-+ - 0 2 4 6 8 10 12 - x - line 0: warning: iconv failed to convert degree sign + x |--> x * sin (x) -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command + over the interval [0; 4 * pi]. - - | n = 5 + 15 = 20. - 15 +|+ - 10 +|+ ####### ##### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%#%%%%%&&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&##**G****&&&&&&&#**G**=G######### - -5 +|+&&&####&&&&&&&&**G*******===&&&%%%%%%%&&&&&&****&########G - #|#%%%&&&&%%%%####%%&&&&&&&&&%##################%&**G*&&&*GGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.25 +|+ + + + + + +-+| - +| + + + + +*F * +| - 0.2 +|+###############################################***#####**+| - 0.15 +|+###############################################*##*####**+| - AKG #|###############################################**##*###*# *| - 0.1 +|+##############################################*###*###*+-*| - 0.05 +|+#############################################**###*###*+-+| - +|-----------------------------------------------------------| - 0 ************************************************##+###***#+-+ - 0 2 4 6 8 10 12 - x - line 0: warning: iconv failed to convert degree sign + A Matern 5/2 prior with known parameters is used. -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command + Evaluations points are chosen sequentially using the Expected Improvement (EI) + criterion, starting from an initial design of N0 = 3 points. - - | n = 5 + 20 = 25. - 15 +|+ - 10 +|+ ###### #### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%##%%%%%&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&&***G*****&&&&&&&**G**=G######### - -5 +|+&&&&&&&&&&&&&&&**G*******===&&&%%%%%%%%%&&&&****&G#######G - #|##%%%%%%%%%#####%%&&&&&&&&%%##################%&**GG****GGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.2 +|+ + + + + + +-+| - +| + + + + + +| - 0.15 +|+##################################################F####+-+| - #|###################################################**#### | - AKG 0.1 +|+##################################################**###+-+| - #|##################################################***###** | - 0.05 +|+################################################****###**+| - +|-----------------------------------------------------------| - 0 ***************************************************####***+-+ - 0 2 4 6 8 10 12 - x - line 0: warning: iconv failed to convert degree sign -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. - - | n = 5 + 25 = 30. - 15 +|+ - 10 +|+ ###### #### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%##%%%%%&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&&***G*****&&&&&&&**G**=G######### - -5 +|+&&&&&&&&&&&&&&&**G*******===&&&%%%%%%%%%&&&&****&G#######G - #|##%%%%%%%%%#####%%&&&&&&&&%%##################%&**GG*&&GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.12 +|+ + + + + + F +-+| - 0.1 +|+ + + + + + * +-+| - #|##################################################***###* | - 0.08 +|+################################################****##***+| - AKG0.06 +|+################################################*#**##*+*+| - 0.04 +|+################################################*##*##*+*+| - #|################################################*###*##*# *| - 0.02 +|-----------------------------------------------------------| - 0 **************************************************+####**#+-+ - 0 2 4 6 8 10 12 - x +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 30 = 35. + | 15 +|+ - 10 +|+ ####### #### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%##%%%%&&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&&#**G*****&&&&&&&**G**=G######### - -5 +|+&&&&&&&&&&&&&&&**G*******===&&&%%%%%%%%%&&&&&***&G###### G - #|##%%%%%%%%%#####%%&&&&&&&&%%##################%&**GGG&&GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + 10 +|+ ####%%%%%%%%%%%##### ################ + 5 +|+%&&&&&&&&&&&&&&&&&&&&&&%#######%===========&&&&&%%%##### + 0 +|+*====F========########&&&&&#====&#########===##&&&&&&%%# + z &|&***************************G***********************##&&&& + -5 +|+&&&&&&##############====&&###&&&&&&############===*******G + -10 +|+###%%&&&&&&&&&&&&&&&&%%#########%%&&&&&&&&&&&&&&&=======# + -15 +|------------------------------------------------------------ + -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.1 +|+ + + + + + * F-+| - +| + + + + + ** **+| - 0.08 +|+#################################################*#*##*+*+| - 0.06 +|+#################################################*#*##*+*+| - AKG #|#################################################*##*##*# *| - 0.04 +|+################################################*##*#*#+-*| - 0.02 +|+################################################*##*#*#+-*| - +|-----------------------------------------------------------| - 0 ***************************************************####**#+-+ + 1 +|+ + + + + + +-+| + +| ***F******** + + + + +| + 0.8 +|+#**##########******####################################+-+| + 0.6 +|+*##################***############***********##########+-+| + EI #|*#####################**#########***#########***######### | + 0.4 +|*######################**#######**#############***######+-+| + 0.2 +|+#######################**#####**################**#####+-+| + *|-----------------------------------------------------------| + 0 *-+#######+#########+#######*****#######+#########+####****** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 35 = 40. + | 15 +|+ - 10 +|+ ####### #### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%##%%%%&&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&&#**G*****&&&&&&&**G**=G######### - -5 +|+&&&&&&&&&&&&&&&**G*******===&&&%%%%%%%%%&&&&&***&G###### G - #|##%%%%%%%%%#####%%&&&&&&&&%%##################%&**GGG&&GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + 10 +|+ ##%%%%%%%%#### #####%%%%%%###### + 5 +|+%&&&%##%&&&&&&&&&&&&&&&%#######%===========&&&&&&%%%#### + 0 +|+*****G******F*########&&&&&#====&#########===###&&&&&&%# + z &|&&&&&&##&&&&##**************G************************#&&&& + -5 +|+#########%&&&&&&&&&&====&&###&&&&&&############===#******G + -10 +|+############%%%%%%%%%%%#########%%&&&&&&&&&&&&&&&=======# + -15 +|------------------------------------------------------------ + -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.1 +|+ + + + + + +-+| - +| + + + + + *F * +| - 0.08 +|+#################################################*#*###**+| - 0.06 +|+#################################################*#*##*+*+| - AKG #|##################################################*#*##*#* | - 0.04 +|+################################################*###*#*+-*| - 0.02 +|+################################################*###*#*+-*| - +|-----------------------------------------------------------| - 0 ***************************************************####**#+-+ + 0.7 +|+ + *F* + + + + +-+| + 0.6 +|+ + *** ****+ + + + +-+| + 0.5 +|+########**######***####################################+-+| + 0.4 +|+#***###**#########**##################***##############+-+| + EI #|#**#**##*###########**##############****#*****########### | + 0.3 +|+*###****#############**##########**##########**########+-+| + 0.2 +|**####**###############**########**#############**######+-+| + 0.1 +|-----------------------------------------------------------| + 0 ***#####**+#########+######*******######+#########+###******* 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 40 = 45. + | 15 +|+ - 10 +|+ ####### #### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%##%%%%&&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&&#**G****&&&&&&&&**G**=G######### - -5 +|+&&&&&&&&&&&&&&&**G*******===&&&%%%%%%%%%&&&&&***&G###### G - #|##%%%%%%%%%#####%%&&&&&&&&&%##################%&**GGG&&GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + 10 +|+ #### #####%%%%%%###### + 5 +|+%%%%###########%&&&&&&&%#######%=======F===&&&&&&%%%#### + 0 +|+*****G******G***&#####&&&&&#====&#########===###&&&&&&%# + z &|&&&&&&##%&&&&&==************G************************#&&&& + -5 +|+###############%&&&&====&&###&&&&&&############===#******G + -10 +|+################################%%&&&&&&&&&&&&&&&=======# + -15 +|------------------------------------------------------------ + -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.1 +|+ + + + + + +-+| - +| + + + + + * F +| - 0.08 +|+#################################################*#*###**+| - 0.06 +|+#################################################*#*##*+*+| - AKG #|##################################################*#*##*#* | - 0.04 +|+#################################################*##*#*+-*| - 0.02 +|+################################################*###*#*+-*| + 0.5 +|+ + + + + + +-+| + +| + + + + + +| + 0.4 +|+#***###############################****F****###########+-+| + 0.3 +|+#*#**###*########****#############**#######***#########+-+| + EI #|#*###*##***######**##**###########**##########***######## | + 0.2 +|+*###****#*#####**####**#########**#############**######+-+| + 0.1 +|**####**###*###**######**#######**###############**#####+-+| +|-----------------------------------------------------------| - 0 ****************************************************###**#+-+ - 0 2 4 6 8 10 12 - x - line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - - | n = 5 + 45 = 50. - 15 +|+ - 10 +|+ ####### #### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%##%%%%&&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&&#**G****&&&&&&&&**G**=G######### - -5 +|+&&&&&&&&&&&&&&&**G*******===&&&%%%%%%%%%&&&&&***&G###### G - #|##%%%%%%%%%#####%%&&&&&&&&&%##################%&**GGG&&GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######G# + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.06 +|+ + + + + + F-+| - 0.05 +|+ + + + + + * *-+| - #|##################################################*#*##** | - 0.04 +|+#################################################*#*##*+*+| - AKG0.03 +|+#################################################*#**#*+*+| - 0.02 +|+#################################################*#**#*+*+| - #|##################################################*##**##* | - 0.01 +|-----------------------------------------------------------| - 0 ****************************************************###**#+-* - 0 2 4 6 8 10 12 - x - line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - - | n = 5 + 50 = 55. - 15 +|+ - 10 +|+ ####### ##### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%#%%%%%&&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&&#**G****&&&&&&&#**G**=G######### - -5 +|+&&&&##&&&&&&&&&**G*******===&&&%%%%%%%%&&&&&&***&G###### G - #|#%%%&&&&%%%%####%%&&&&&&&&&%##################%&**GGG&&GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######G# + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.08 +|+ + + + + + +-+| - 0.07 +|+ + + + + + * F-+| - 0.06 +|+#################################################***##**-+| - 0.05 +|+#################################################*#*##**-+| - AKG0.04 +|+#################################################*#*##*+*+| - 0.03 +|+#################################################*#**#*+*+| - 0.02 +|+#################################################*##**#+*+| - 0.01 +|-----------------------------------------------------------| - 0 ****************************************************###**#+-* + 0 ***#####*#+###***###+######*******######+#########+###******* 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 55 = 60. - 15 +|+ - 10 +|+ ####### ##### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&&#####&&&&&&&%%#%%%%%&&&&&&&==G********===%########### - z 0 +|+************G***&&&&&&&&#**G****&&&&&&&&**G**=G######### - -5 +|+&&&&##&&&&&&&&&**G*******===&&&%%%%%%%%%&&&&&***&G###### G - #|#%%%&&&&%%%%####%%&&&&&&&&&%##################%&**GGG%&GGGG + | + 15 +|+ ### + 10 +|+ #%%%%%# #%&&&&%%%## + #|#################%%%%%%#########&&===***G***##&&&&&%%#### + 5 +|+&&&&&&&&&&&&#&&&&&&&&&&&&%###&==*****&&%&=F****##&&&&%## + z 0 +|+*****G******G***********&&*G*****#&&&%####&===#****#&&&% + -5 +|+&&&%#########%&========****=&&&&&&%%########%===##******&% + #|################%%&&&&&&&&%####################%===&&&&&**G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.08 +|+ + + + + + +-+| - 0.07 +|+ + + + + + +-+| - 0.06 +|+##################################################F*##**-+| - 0.05 +|+#################################################*#*##**-+| - AKG0.04 +|+#################################################*#*##*+*+| - 0.03 +|+#################################################*#*#**+*+| - 0.02 +|+#################################################*##**#+*+| - 0.01 +|-----------------------------------------------------------| - 0 ****************************************************###**#+-* + 0.35 +|+ + + + + F + +-+| + 0.3 +|+ + + + + *** + +-+| + 0.25 +|+####################################***#**#**##########+-+| + 0.2 +|+####################################*#*#*###**#########+-+| + EI #|####################################*##***####*########## | + 0.15 +|+##################################**###**####**########+-+| + 0.1 +|+##################################*####**#####**#######+-+| + 0.05 +|-----------------------------------------------------------| + 0 ************************************####+#*#######+#********* 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 60 = 65. + | 15 +|+ - 10 +|+ ####### ##### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&#######&&&&&&%%#%%%%&&&&&&&&==G********===&########### - z 0 +|+************G***&&&&&&&##**G****&&&&&&##**G***G######### - -5 +|+&&&####&&&&&&&&**G*******===&&&%%%%%%&&&&&&&&***&G###### G - #|#%%&&&&&&%%%####%%&&&&&&&&&%##################%&**GGG&&GGGG + 10 +|+ #%&&&&% + #|#################%%%%%%########%&&==**F*G*=############## + 5 +|+&&&&&&&&&&&&#&&&&&&&&&&&%%###&=****&&&%#&*G*&&&&&&&%%### + z 0 +|+*****G******G*********##&&&G****&&&&#######*****###&&&&# + -5 +|+&&&%#########%&======******=&&&&&%##########%===*******&&% + #|################%%&&&&&&&&%####################%===&###***G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.08 +|+ + + + + + +-+| - 0.07 +|+ + + + + + * F-+| - 0.06 +|+##################################################**##**-+| - 0.05 +|+#################################################*#*##**-+| - AKG0.04 +|+#################################################*#*##*+*+| - 0.03 +|+#################################################*#*#*#+*+| - 0.02 +|+#################################################*##**#+*+| - 0.01 +|-----------------------------------------------------------| - 0 ****************************************************###**#+** + 0.7 +|+ + + + F + +-+| + 0.6 +|+ + + + *** + +-+| + 0.5 +|+####################################*#*################+-+| + 0.4 +|+###################################*###*###############+-+| + EI #|####################################*###*################ | + 0.3 +|+##################################*####*###############+-+| + 0.2 +|+#################################**####*###############+-+| + 0.1 +|-----------------------------------------------------------| + 0 ************************************####+#******************* 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 65 = 70. - 15 +|+ - 10 +|+ ####### ##### - #|#%%&&&&&&&%%####################%%========%############## - 5 +|+&&#######&&&&&&%%#%%%%&&&&&&&&==G********===&########### - z 0 +|+************G***&&&&&&&##**G****&&&&&&##**G***G######### - -5 +|+&&&####&&&&&&&&**G*******===&&&%%%%%%&&&&&&&&***&G###### G - #|#%%&&&&&&%%%####%%&&&&&&&&&%###################&**GGG%%GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + | + 10 +|+ ##%&&& + | #### #%%%%%%## %&&=**FG*G** ####### + 5 +|+&&&&&&&&&&&%#%&&&&&&&&&&%####&=***&&####%*G*&&&&&&&%%### + 0 +|+*****G******G*****#####&&&&%****&&%########****###&&&&%# + z #|&&&&&####%%%##&===**********G*&&&%###########&==*****#&&&% + -5 +|+##############%&&&&======&&##################%===##******G + -10 +|+#################%%&&&&%%######################%====&&==== + +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.08 +|+ + + + + + F *-+| - +| + + + + + ** ** +| - 0.06 +|+#################################################*#*##**-+| - #|##################################################*#*##** | - AKG0.04 +|+#################################################*#*##*+*+| - #|##################################################*##**##* | - 0.02 +|+#################################################*##**#+*+| + 0.05 +|+ + + + + + +-+| + +| + + + *F+ + +| + 0.04 +|+##################################***##################+-+| + 0.03 +|+##################################*##*#################+-+| + EI #|###################################*##**################# | + 0.02 +|+#################################**##**################+-+| + 0.01 +|+#################################*###**################+-+| +|-----------------------------------------------------------| - 0 ***********************************************###**###**#+-* - 0 2 4 6 8 10 12 - x - line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - - | n = 5 + 70 = 75. - 15 +|+ - 10 +|+ ######## ###### - #|#%&&&&&&&&&%####################%%========%############## - 5 +|+&&#######&&&&&&%%#%%%%&&&&&&&&==G********===&########### - z 0 +|+************G***&&&&&&###**G****&&&&&###**G***G######### - -5 +|+&&&#####&&&&&&&**G*******===&&&%%%%%&&&&&&&&&***&G###### G - #|#%%&&&&&&%%%###%%%&&&&&&&&&%###################&=*GGG%%GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + - 0 2 4 6 8 10 12 - |-----------------------------------------------------------| - 0.06 +|+ + + + + + F *-+| - 0.05 +|+ + + + + + ** **-+| - #|###################################################**##** | - 0.04 +|+#################################################*#*##**-+| - AKG0.03 +|+#################################################*#*##**-+| - 0.02 +|+#################################################*##**#+*+| - #|##################################################*##**##* | - 0.01 +|-----------------------------------------------------------| - 0 *****************************************************##**#+** + 0 ************************************####********************* 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 75 = 80. - 15 +|+ - 10 +|+ ######## ###### - #|#%&&&&&&&&&%####################%%========%############## - 5 +|+&&#######&&&&&&%%#%%%%&&&&&&&&==G********===&########### - z 0 +|+************G***&&&&&&###**G****&&&&&###**G***G######### - -5 +|+&&&#####&&&&&&&**G*******===&&&%%%%%&&&&&&&&&***&G###### G - #|#%%&&&&&&%%%###%%%&&&&&&&&&%###################&=*GGG##GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + | + 10 +|+ + | #### #%%%%%%## %&&***GF*G** ####### + 5 +|+&&&&&&&&&&&%#%&&&&&&&&&&%####&=***&######*G*&&&&&&&%%### + 0 +|+*****G******G*****#####&&&&%****&##########****###&&&&%# + z #|&&&&&####%%%##&===**********G*&&%############&=******#&&&% + -5 +|+##############%&&&&======&&##################%===##******G + -10 +|+################%%&&&&&&%######################%====&&==== + +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.1 +|+ + + + + + +-+| - +| + + + + + F * +| - 0.08 +|+##################################################**##**-+| - 0.06 +|+#################################################*#*##**-+| - AKG #|##################################################*#*##** | - 0.04 +|+#################################################*##*#*+*+| - 0.02 +|+#################################################*##**#+*+| + 0.025 +|+ + + + + + +-+| + +| + + + F + +| + 0.02 +|+#####################################*#################+-+| + 0.015 +|+#####################################*#################+-+| + EI #|#####################################**################## | + 0.01 +|+####################################**#################+-+| + 0.005 +|+####################################**#################+-+| +|-----------------------------------------------------------| - 0 **********************************************####+*###**#+** + 0 ************************************************************* 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 80 = 85. - 15 +|+ - 10 +|+ ##%%%%%## ###### - #|%%&&&&&&&&&%%##################%%%========%############## - 5 +|+&&#######&&&&&&%%#%%%&&&&&&&&&==G********===&%########## - z 0 +|+************G***&&&&&&###**G****&&&&####**G***G######### - -5 +|+&&######&&&&&&&**G********==&&&%%%%&&&&&&&&&&***&G###### G - #|#%&&&&&&&&%%###%%&&&&&&&&&&%%##################&=*GGG##GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G##GG# + + | + 10 +|+ + | #### #%%%%%%## #&&***GF*G** ####### + 5 +|+&&&&&&&&&&&%#%&&&&&&&&&%%####&=***&######*G*&&&&&&&%%### + 0 +|+*****G******G*****#####&&&&%***&&##########****###&&&&%# + z #|&&&&&####%%%##&===**********G*&&%############&=******#&&&% + -5 +|+##############%&&&&======&&##################%===##******G + -10 +|+################%%&&&&&&%######################%====&&==== + +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.08 +|+ + + + + + +-+| - 0.07 +|+ + + + + + +-+| - 0.06 +|+##################################################*###F*-+| - 0.05 +|+##################################################**##**-+| - AKG0.04 +|+##################################################**#*#*-+| - 0.03 +|+#################################################*#*#*#*-+| - 0.02 +|+#################################################*##**#*-+| - 0.01 +|-----------------------------------------------------------| - 0 *****************************************************##**#+** + 0.006 +|+ + + + + + +-+| + 0.005 +|+ + + + F + +-+| + #|######################################*################## | + 0.004 +|+#####################################*#################+-+| + EI 0.003 +|+#####################################*#################+-+| + 0.002 +|+#####################################*#################+-+| + #|######################################*################## | + 0.001 +|-----------------------------------------------------------| + 0 *********************##************************************** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 85 = 90. - 15 +|+ - 10 +|+ ##%%%%%## ###### - #|%%&&&&&&&&&%%##################%%%========%############## - 5 +|+&&#######&&&&&&%%#%%%&&&&&&&&&==G********===&%########## - z 0 +|+************G***&&&&&&###**G****&&&&####**G***G######### - -5 +|+&&######&&&&&&&**G********==&&&%%%%&&&&&&&&&&***&G###### G - #|#%&&&&&&&&%%###%%&&&&&&&&&&%%##################&=*GGG##GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G##GG# + + | + 10 +|+ + | #### #%%%%%%## #&&***GG*G** ####### + 5 +|+&&&&&&&&&&&%#%&&&&&&&&&%%####&=***&######*G*&&&&&&&%%### + 0 +|+*****G******G*****#####&&&&%***&&##########****###&&&&%# + z #|&&&&&####%%%##&===**F*******G*&&#############&=******#&&&% + -5 +|+##############%&&&&======&&##################%===##******G + -10 +|+################%%&&&&&&%######################%====&&==== + +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.08 +|+ + + + + + +-+| - 0.07 +|+ + + + + + +-+| - 0.06 +|+##################################################**##F*-+| - 0.05 +|+##################################################**##**-+| - AKG0.04 +|+##################################################**#*#*-+| - 0.03 +|+#################################################*#*#*#*-+| - 0.02 +|+#################################################*##**#*-+| - 0.01 +|-----------------------------------------------------------| - 0 *****************************************************##**#+** + 0.0006 +|+ + + + + + +-+| + 0.0005 +|+ + +*F + + + +-+| + #|###################***################################### | + 0.0004 +|+#################*##*##################################+-+| +EI 0.0003 +|+#################*##*##################################+-+| + 0.0002 +|+#################*##**#################################+-+| + #|#################**###*################################## | + 0.0001 +|-----------------------------------------------------------| + 0 ********************+####***********#************************ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign - -multiplot> " font ":Bold,8.8" textcolor rgb " - ^ - line 0: invalid command - - | n = 5 + 90 = 95. - 15 +|+ - 10 +|+ ###%%%### ###### - #|#%&&&&&&&&&%%##################%%%========%############## - 5 +|+&&#######&&&&&&%%#%%%&&&&&&&&&==G********===&%########## - z 0 +|+************G***&&&&&&###**G****&&&&####**G***G######### - -5 +|+&&######&&&&&&&**G********==&&&%%%%&&&&&&&&&&***&G###### G - #|#%%&&&&&&&%%###%%&&&&&&&&&&%###################&=*GGG##GGGG - -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G##GG# + + | + 10 +|+ + | #### #&&F**GG*G** ####### + 5 +|+&&&&&&&&&&&&#################&****&######*G*&&&&&&&%%### + 0 +|+*****G******G**&&%####%%%%%&***&&##########****###&&&&%# + z #|&&&&&%########&*****G&&&****G*&%#############&=******#&&&% + -5 +|+###############&&&&*****=&&##################%===##******G + -10 +|+#####################%%%%######################%====&&==== + +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.05 +|+ + + + + + F *+-+| - +| + + + + + ** ** +| - 0.04 +|+##################################################**##**-+| - 0.03 +|+##################################################**##**-+| - AKG #|##################################################*#*#*#* | - 0.02 +|+#################################################*#*#*#*-+| - 0.01 +|+#################################################*##**#*-+| - +|-----------------------------------------------------------| - 0 *****************************************************##**#+** + 0.00014 +|+ + + + + + +-+| + 0.00012 +|+ + + + F + + +-+| + 0.0001 +|+################################**#####################+-+| + 8e-05 +|+################################**#####################+-+| + #|#################################*#*##################### | + 6e-05 +|+################################*#*####################+-+| + 4e-05 +|+################################*#*#############***####+-+| + 2e-05 +|-----------------------------------------------------------| + 0 ***********************************##**************###******* 0 2 4 6 8 10 12 x : x z - init001 : 0.00000 1.2404 - init002 : 3.00000 0.3993 - init003 : 6.00000 -1.0040 - init004 : 9.00000 0.7355 - init005 : 12.00000 -5.1443 - xg(200) : 12.00000 -8.3543 - xg(118) : 7.05528 2.9061 - xg(002) : 0.06030 -0.9026 - xg(068) : 4.04020 -3.4112 - xg(199) : 11.93970 -7.8885 - xg(174) : 10.43216 -10.4250 - xg(163) : 9.76884 -1.2941 - xg(172) : 10.31156 -9.6303 - xg(193) : 11.57789 -8.7829 - xg(172) : 10.31156 -7.5688 - xg(196) : 11.75879 -8.0694 - xg(175) : 10.49246 -10.0396 - xg(192) : 11.51759 -9.4427 - xg(172) : 10.31156 -8.2610 - xg(195) : 11.69849 -9.1057 - xg(172) : 10.31156 -7.5754 - xg(194) : 11.63819 -10.2466 - xg(176) : 10.55276 -8.2264 - xg(195) : 11.69849 -6.3058 - xg(173) : 10.37186 -3.4376 - xg(178) : 10.67337 -8.7395 - xg(174) : 10.43216 -10.5654 - xg(191) : 11.45729 -7.8095 - xg(190) : 11.39698 -9.6396 - xg(194) : 11.63819 -10.5069 - xg(179) : 10.73367 -8.7835 - xg(175) : 10.49246 -8.8600 - xg(194) : 11.63819 -9.3447 - xg(175) : 10.49246 -5.6375 - xg(180) : 10.79397 -12.1872 - xg(194) : 11.63819 -10.0760 - xg(176) : 10.55276 -8.1377 - xg(194) : 11.63819 -9.4067 - xg(176) : 10.55276 -7.9671 - xg(194) : 11.63819 -9.4576 - xg(176) : 10.55276 -7.8935 - xg(194) : 11.63819 -10.5075 - xg(181) : 10.85427 -11.5091 - xg(177) : 10.61307 -10.7071 - xg(177) : 10.61307 -7.2803 - xg(194) : 11.63819 -9.0572 - xg(177) : 10.61307 -9.3511 - xg(194) : 11.63819 -8.6216 - xg(177) : 10.61307 -10.8655 - xg(189) : 11.33668 -13.8593 - xg(193) : 11.57789 -7.7972 - xg(193) : 11.57789 -6.6638 - xg(177) : 10.61307 -7.4795 - xg(193) : 11.57789 -10.3184 - xg(177) : 10.61307 -8.3725 - xg(193) : 11.57789 -9.9095 - xg(177) : 10.61307 -13.2069 - xg(193) : 11.57789 -12.1376 - xg(177) : 10.61307 -13.2682 - xg(193) : 11.57789 -9.0194 - xg(177) : 10.61307 -6.7966 - xg(193) : 11.57789 -7.7387 - xg(177) : 10.61307 -8.9283 - xg(193) : 11.57789 -9.1336 - xg(177) : 10.61307 -9.6518 - xg(193) : 11.57789 -10.6477 - xg(177) : 10.61307 -11.2520 - xg(193) : 11.57789 -8.8683 - xg(177) : 10.61307 -7.9224 - xg(192) : 11.51759 -10.9605 - xg(177) : 10.61307 -13.4151 - xg(192) : 11.51759 -11.2452 - xg(177) : 10.61307 -8.4154 - xg(192) : 11.51759 -11.2229 - xg(177) : 10.61307 -11.7420 - xg(178) : 10.67337 -8.5576 - xg(192) : 11.51759 -9.1267 - xg(192) : 11.51759 -12.1415 - xg(178) : 10.67337 -10.9880 - xg(192) : 11.51759 -11.2391 - xg(178) : 10.67337 -14.2240 - xg(192) : 11.51759 -6.9366 - xg(188) : 11.27638 -14.7168 - xg(191) : 11.45729 -11.0654 - xg(191) : 11.45729 -6.8140 - xg(191) : 11.45729 -11.5380 - xg(191) : 11.45729 -8.0703 - xg(191) : 11.45729 -11.6153 - xg(191) : 11.45729 -9.2062 - xg(178) : 10.67337 -10.2197 - xg(191) : 11.45729 -8.7905 - xg(178) : 10.67337 -9.6475 - xg(191) : 11.45729 -8.7381 - xg(178) : 10.67337 -12.7035 - xg(191) : 11.45729 -8.6237 - xg(178) : 10.67337 -11.3396 - xg(191) : 11.45729 -5.3750 - xg(187) : 11.21608 -9.1773 - xg(190) : 11.39698 -5.6345 - xg(190) : 11.39698 -5.4960 - -Number of evaluations: 5 + 95 = 100. - -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/02_design_of_experiments/stk_example_doe01.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe01.m -***** test stk_example_doe01; close all; - -#=========================# -# stk_example_doe01 # -#=========================# - -'stk_example_doe01' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/02_design_of_experiments/stk_example_doe01.m - - STK_EXAMPLE_DOE01 Examples of two-dimensional designs - - All designs are constructed on the hyper-rectangle BOX = [0; 2] x [0; 4]. - - Examples of the following designs are shown: - a) Regular grid --> stk_sampling_regulargrid, - b) "Maximin" latin hypercube sample --> stk_sampling_maximinlhs, - c) RR2-scrambled Halton sequence --> stk_sampling_halton_rr2, - d) Uniformly distributed random sample --> stk_sampling_randunif. - + x0(001) : 0.00000 0.00000 + x0(002) : 6.00000 -1.67649 + x0(003) : 12.00000 -6.43888 + xg(057) : 1.68421 1.67339 + xg(099) : 2.94737 0.56886 + xg(282) : 8.45113 6.98861 + xg(299) : 8.96241 3.99788 + xg(268) : 8.03008 7.90589 + xg(258) : 7.72932 7.66935 + xg(265) : 7.93985 7.91060 + xg(266) : 7.96992 7.91642 + xg(145) : 4.33083 -4.01937 -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. +Number of evaluations: 3 + 9 = 12. -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. 1 test, 1 passed, 0 known failure, 0 skipped [inst/examples/02_design_of_experiments/stk_example_doe06.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe06.m @@ -8759,7 +8379,7 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. -Volume (reference value): 20.68% +Volume (reference value): 19.56% data_init = <4x2 stk_dataframe array> @@ -8796,8 +8416,8 @@ Iteration #1 | Current sample size: n = 4 -| Volume estimate (plugin): 0.00000 [ref: 0.20680] -| Upper-bound on posterior std: 4.1245e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.00000 [ref: 0.19560] +| Upper-bound on posterior std: 4.0908e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | @@ -8825,8 +8445,8 @@ x Iteration #2 | Current sample size: n = 5 -| Volume estimate (plugin): 0.00000 [ref: 0.20680] -| Upper-bound on posterior std: 3.0366e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.00000 [ref: 0.19560] +| Upper-bound on posterior std: 3.0176e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | @@ -8854,14 +8474,14 @@ x Iteration #3 | Current sample size: n = 6 -| Volume estimate (plugin): 0.10480 [ref: 0.20680] -| Upper-bound on posterior std: 2.8072e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.10640 [ref: 0.19560] +| Upper-bound on posterior std: 2.8141e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 2 +|+ ####### 1 +|+ ###### #%%%# %%%%# ##%%%%%%%%%%# - 0 +|+########################F################################# + 0 +|+##############################F########################### -1 +|+&&&&*************G***&&&&%###&===****G****########====&&&& z #|########%&&&&&&&%######################&&&****************G -2 +|+########################################%&&&&#######&&&&% @@ -8870,7 +8490,7 @@ -5 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.5 +|+ + + F * + + +-+| + 0.5 +|+ + + * F + + +-+| +| + + ** *** + + +| 0.4 +|+#######################***###*#*#######################+-+| 0.3 +|+######################*##*###*#**######################+-+| @@ -8883,252 +8503,252 @@ x Iteration #4 | Current sample size: n = 7 -| Volume estimate (plugin): 0.11580 [ref: 0.20680] -| Upper-bound on posterior std: 2.1287e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.10830 [ref: 0.19560] +| Upper-bound on posterior std: 2.2259e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | - 2 +|+ ####### - 1 +|+ #%%%%%%%%%%# - 0 +|+######################F################################### - -1 +|+&&&&*************G**=&#######%==*****G*****#######====&&&& - z #|########%&&&&&&&#######################&&&&***************G - -2 +|+########################################%&&&&&######&&&&# - -3 +|+###########################################%%&&&&&&&&%## - -4 +|------------------------------------------------------------ - -5 +-+#########+###########+###########+###########+########## + + 3 +|+ + 2 +|+ ######## + 1 +|+###########################################%%&&&&&&%%### + 0 +|+#####################F#################################### + z &|&&=*G*************G***=&%#####*G******G**************==&&&# + -1 +|+######%&&&&&&&&&######################%&&&&&#######******G + -2 +|+##########################################%&&&&&&&&&&&&&# + -3 +|------------------------------------------------------------ + -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.5 +|+ + +F * + + +-+| - +| + +* * + + +| - 0.4 +|+######################*#####**#########################+-+| - 0.3 +|+######################*#####***########################+-+| -criterion #|#######################**####*#*######################### | - 0.2 +|+#####################***####*#**#######################+-+| - 0.1 +|**####################*#*####*##**######################+-+| + 0.5 +|+ + F * + + +-+| + +| + * * + + +| + 0.4 +|+####################***#####*##########################+-+| + 0.3 +|+####################*#*#####*##########################+-+| +criterion #|#####################*#*#####*########################### | + 0.2 +|+####################*#**####*#################**#######+-+| + 0.1 +|***##################*##*####*##############*********###+-+| +|-----------------------------------------------------------| - 0 **+#*******#************+#******####***********#+######****** + 0 **+#*******************#+##******************###+#######***** 0 0.2 0.4 0.6 0.8 1 x Iteration #5 | Current sample size: n = 8 -| Volume estimate (plugin): 0.09410 [ref: 0.20680] -| Upper-bound on posterior std: 1.8195e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.08170 [ref: 0.19560] +| Upper-bound on posterior std: 2.0600e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | - 4 +|+ - | - 2 +|+###########################################%%%%%%%%%%### + 3 +|+ + 2 +|+ ######## + 1 +|+##########################################%%&&&&&&&&%### 0 +|+############################F############################# - z #|%%%##%&&&&&*******G*=##########&==****G*******************G - -2 +|+########################################&&&&&&&###&&&&&&& - -4 +|+############################################%%%&&&&%%%## - +|------------------------------------------------------------ - -6 +-+#########+###########+###########+###########+########## + + z &|&&**G*************G***G%######*G******G***************=&&&# + -1 +|+#######%&&&&&&%###################%%##%&&&&&########*****G + -2 +|+##########################################%&&&&&&&&&&&&&# + -3 +|------------------------------------------------------------ + -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.5 +|+ + + F + + +-+| - +| + + * + + +| + 0.5 +|+ + + * F + + +-+| + +| + + * * + + +| 0.4 +|+#######################*####*##########################+-+| - 0.3 +|+#######################*####**#########################+-+| -criterion #|########################*####**########################## | - 0.2 +|+#######################*####**#########################+-+| - 0.1 +|+#######################*####***########################+-+| + 0.3 +|+#######################*####*##########################+-+| +criterion #|########################*####*########################### | + 0.2 +|+#######################*####*###############******#####+-+| + 0.1 +|+######################***###*#############***####***###+-+| +|-----------------------------------------------------------| - 0 **+#******##+#******************###***********##+######****** + 0 **+#******##+#************#******************###+#######***** 0 0.2 0.4 0.6 0.8 1 x Iteration #6 | Current sample size: n = 9 -| Volume estimate (plugin): 0.08770 [ref: 0.20680] -| Upper-bound on posterior std: 1.7143e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.08170 [ref: 0.19560] +| Upper-bound on posterior std: 2.0212e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 3 +|+ 2 +|+ ######## - 1 +|+###########################################%%&&&&&&%%### + 1 +|+##########################################%%&&&&&&&&%### 0 +|+#######################F################################## - z &|&&**G*************G****#######********G*************===&&&# - -1 +|+#######%&&&&&&%###################%%##&&&&&#######*******G - -2 +|+#########################################%&&&&&&&&&&&&&&% + z &|&&**G*************G***G%######*G******G****************&&&# + -1 +|+#######%&&&&&&%########################&&&&&&########****G + -2 +|+##########################################%%&&&&&&&&&&&&# -3 +|------------------------------------------------------------ -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| 0.5 +|+ + + F + + +-+| - +| + + * * + + +| - 0.4 +|+#######################*####*##########################+-+| - 0.3 +|+#######################*####*##########################+-+| -criterion #|########################*####*########################### | - 0.2 +|+#######################*####*##########################+-+| - 0.1 +|+#######################*####*##############*********###+-+| + +| + + * + + +| + 0.4 +|+#######################*###############################+-+| + 0.3 +|+#######################*###############################+-+| +criterion #|########################*################################ | + 0.2 +|+#######################*####################*******####+-+| + 0.1 +|+#######################**#################***#####***##+-+| +|-----------------------------------------------------------| - 0 **+#******##+#*******************************###+#######***** + 0 **+#******##+#************#******************###+#######***** 0 0.2 0.4 0.6 0.8 1 x Iteration #7 | Current sample size: n = 10 -| Volume estimate (plugin): 0.08770 [ref: 0.20680] -| Upper-bound on posterior std: 1.7291e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.08410 [ref: 0.19560] +| Upper-bound on posterior std: 1.9563e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 3 +|+ 2 +|+ ######## - 1 +|+###########################################%%&&&&&&%%### - 0 +|+############################F############################# - z &|&&**G*************G****#######********G*************===&&&# - -1 +|+#######%&&&&&&%###################%%##&&&&&#######*******G - -2 +|+#########################################%&&&&&&&&&&&&&&% + 1 +|+##########################################%%&&&&&&&&%### + 0 +|+#######################F################################## + z &|&&**G*************G***G#######*G******G****************&&&# + -1 +|+#######%%&&&&%#########################&&&&&&########****G + -2 +|+##########################################%%&&&&&&&&&&&&# -3 +|------------------------------------------------------------ -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.5 +|+ + + F + + +-+| - +| + + * + + +| - 0.4 +|+############################*##########################+-+| - 0.3 +|+############################*##########################+-+| -criterion #|#############################*########################### | - 0.2 +|+############################*##########################+-+| - 0.1 +|+############################*##############*********###+-+| + 0.25 +|+ + + F + + +-+| + +| + + * + + +| + 0.2 +|+#######################*####################******#####+-+| + 0.15 +|+#######################*###################**####**####+-+| + #|########################*##################**######**#### | + 0.1 +|+#######################*##################*########**##+-+| + 0.05 +|***####******###########*#################**#########**#+-+| +|-----------------------------------------------------------| - 0 **+#******##+#*******************************###+#######***** + 0 **+#*****###+##*****************************####+########**** 0 0.2 0.4 0.6 0.8 1 x Iteration #8 | Current sample size: n = 11 -| Volume estimate (plugin): 0.08830 [ref: 0.20680] -| Upper-bound on posterior std: 1.7967e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.08410 [ref: 0.19560] +| Upper-bound on posterior std: 1.9509e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 3 +|+ 2 +|+ ######## - 1 +|+##########################################%%%&&&&&&%%### + 1 +|+##########################################%%&&&&&&&&%### 0 +|+########################################################## - z &|&&**G*************G****#######********G*********F****==&&&# - -1 +|+#######%&&&&&&%###################%%##%&&&&&#######******G - -2 +|+##########################################%&&&&&&&&&&&&&# + z &|&***G*************G***G#######*G******G********F*******&&&# + -1 +|+#######%%&&&&%#########################&&&&&&########****G + -2 +|+##########################################%%&&&&&&&&&&&&# -3 +|------------------------------------------------------------ -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.2 +|+ + + + + +-+| - +| + + + + +| - 0.15 +|+############################################***F**#####+-+| - #|############################################**####**##### | - 0.1 +|+###########################################*######**###+-+| - #|**######****###############################**#######**### | - 0.05 +|***####**##**#############################**#########**#+-+| + 0.2 +|+ + + + *F** +-+| + +| + + + ** ** +| + 0.15 +|+###########################################**####**####+-+| + #|############################################*######**#### | + 0.1 +|+##########################################*########**##+-+| + #|**######****###############################*#########*### | + 0.05 +|***####**##**#############################*##########**#+-+| +|-----------------------------------------------------------| 0 **+#*****###+##*****************************####+########**** 0 0.2 0.4 0.6 0.8 1 x Iteration #9 | Current sample size: n = 12 -| Volume estimate (plugin): 0.21130 [ref: 0.20680] -| Upper-bound on posterior std: 2.1755e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.21250 [ref: 0.19560] +| Upper-bound on posterior std: 2.1581e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 1.5 +|+ 1 +|+ #### - #|###########################################%&&&%%&&&&&%## - 0.5 +|+&&###%&&&&&&%%#########*G**G*###########%==****G***#&&%# - z 0 +|+###########################################F############## - -0.5 +|+&&&&&************G***%########***&&&%%****&&%####%==***&% - #|######%&&&####&&&&##############&*****G*&&&%########===***# + #|###########################################%&&&%&&&&&&%## + 0.5 +|+&&###%&&&&&&%%#########****G*###########%==***G****#&&%# + z 0 +|+###################################################F###### + -0.5 +|+&&&&&************G***#########G**&&%#%****&&%####%==***&& + #|######%&&&&##&&&&&###############*****G*&&%#########===***# -1 +|------------------------------------------------------------ -1.5 +-+#########+###########+###########+###########+###########+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.5 +|+ + + + F + ** +-+| - +| + + + **+ ** +| - 0.4 +|+###########################################**#####**###+-+| + 0.5 +|+ + + + * + *F +-+| + +| + + + ** + ** +| + 0.4 +|+##########################################**######**###+-+| 0.3 +|+##########################################***#####***##+-+| criterion #|###########################################*#*####**#*### | - 0.2 +|+##########################################*#*####*##*##+-+| - 0.1 +|+#########################################**#**###*##**#+-+| + 0.2 +|+#########################################**#*####*##*##+-+| + 0.1 +|+#########################################*##*####*##**#+-+| +|-----------------------------------------------------------| - 0 **+#******##+#*******************************###****####***** + 0 **+#******##+##******************************###****#####**** 0 0.2 0.4 0.6 0.8 1 x Iteration #10 | Current sample size: n = 13 -| Volume estimate (plugin): 0.21690 [ref: 0.20680] -| Upper-bound on posterior std: 1.5148e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.19270 [ref: 0.19560] +| Upper-bound on posterior std: 1.4706e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | - 1 +|+ - 0.5 +|+ #%%%%%# %G****##### - #|##########################################F################ - 0 +|+***G*****##=====%#&****#####****%#####%***######&***&&&% - z -0.5 +|+&&%#&&&#*********G**&#########&***&&&G**&########%==***&% - -1 +|+######&&&&&&&&&&################&*****#############&==***& - #|#########%%%%%%######################################%===*G - -1.5 +|------------------------------------------------------------ - -2 +-+#########+###########+###########+###########+########## + + 1 +|+ ### + | ####### %&&*** + 0.5 +|+%%###%&&&&&&%##########****G############&&***&G**####### + 0 +|+#########################################F################ + z %|&&&*G*********====&****#######*G*%#####&**&&######**%#### + -0.5 +|+#####&&&#####****G*&###########***&&&G**&#########&G*&## + -1 +|+######%&&&&&&&&%################&*****#############%***&& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%%+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.5 +|+ + + + F + * +-+| - +| + + + * + * +| - 0.4 +|+#########################################*#######*#####+-+| - 0.3 +|+#########################################*######**#####+-+| -criterion #|##########################################*######***##### | - 0.2 +|+#########################################*######*#*####+-+| - 0.1 +|+#########################################*######*#*####+-+| + 0.5 +|+ + + + F + * +-+| + +| + + + * + * +| + 0.4 +|+#########################################**#####*######+-+| + 0.3 +|+#########################################**#####*######+-+| +criterion #|##########################################**#####*####### | + 0.2 +|+#########################################**#####*######+-+| + 0.1 +|+########################################***#####*######+-+| +|-----------------------------------------------------------| - 0 **+#******##+#******************************#*******##******* + 0 **+#******##+##*****************************##*************** 0 0.2 0.4 0.6 0.8 1 x Iteration #11 | Current sample size: n = 14 -| Volume estimate (plugin): 0.21460 [ref: 0.20680] -| Upper-bound on posterior std: 1.3301e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.19430 [ref: 0.19560] +| Upper-bound on posterior std: 1.0872e-01 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 1 +|+ - 0.5 +|+ #%%%%%# G****#### - #|##################################################F######## - 0 +|+***G*****##=====%#&****#####****%######***######&***&&&# - z -0.5 +|+&&%#&&&#*********G**&#########&***&&%G**#########%=****&% - -1 +|+######&&&&&&&&&&################&*****#############&==***& - #|#########%%%%%%######################################%===*G - -1.5 +|------------------------------------------------------------ - -2 +-+#########+###########+###########+###########+########## + + | ####### &*** + 0.5 +|+%%###%&&&&&&%##########****G##############***&G**####### + 0 +|+################################################F######### + z %|&&&*G*********====&****#######*G*%#####&**########**%#### + -0.5 +|+#####&&&#####****G*&###########***&&&G**##########&G*&## + -1 +|+######%&&&&&&&&%################&*****##############***&& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%%+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.5 +|+ + + + + F +-+| - +| + + + + * +| - 0.4 +|+#################################################*#####+-+| - 0.3 +|+#########################################*######**#####+-+| -criterion #|##########################################*######**###### | - 0.2 +|+#########################################*######***####+-+| - 0.1 +|+#########################################*######*#*####+-+| + 0.5 +|+ + + + + F +-+| + +| + + + * + * +| + 0.4 +|+#########################################*######*######+-+| + 0.3 +|+#########################################*######*######+-+| +criterion #|##########################################*######*####### | + 0.2 +|+#########################################*######*######+-+| + 0.1 +|+#########################################*######*######+-+| +|-----------------------------------------------------------| - 0 **+#******##+#**************************************##******* + 0 **+#******##+##********************************************** 0 0.2 0.4 0.6 0.8 1 x Iteration #12 | Current sample size: n = 15 -| Volume estimate (plugin): 0.20660 [ref: 0.20680] -| Upper-bound on posterior std: 9.7988e-02 [target: 5.000e-04] +| Volume estimate (plugin): 0.19560 [ref: 0.19560] +| Upper-bound on posterior std: 9.9016e-02 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 1 +|+ - | ###### *** - 0.5 +|+&%###%%&&&&&%##########*G**G##############*G*&*G*####### + | ####### &*** + 0.5 +|+%%###%&&&&&&%##########****G##############***&G**####### 0 +|+################################################F######### - z %|&&&*G********#====&****#######***&#####&**########***&### - -0.5 +|+#####&&&###******G*&###########***&&&G**##########&**&&% - -1 +|+######%&&&&&&&&&################&*****#############&****& + z %|&&&*G*********====&****#######*G*%#####&**########**##### + -0.5 +|+#####&&&#####****G*&###########***&&&G**###########G*### + -1 +|+######%&&&&&&&&%################&*****##############***&% +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+########%%%+ + -1.5 +-+#########+###########+###########+###########+#########%%+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| 0.5 +|+ + + + + F +-+| @@ -9139,62 +8759,62 @@ 0.2 +|+#########################################*######*######+-+| 0.1 +|+#########################################*######*######+-+| +|-----------------------------------------------------------| - 0 **+#******##+#*********************************************** + 0 **+#******##+##********************************************** 0 0.2 0.4 0.6 0.8 1 x Iteration #13 | Current sample size: n = 16 -| Volume estimate (plugin): 0.20680 [ref: 0.20680] -| Upper-bound on posterior std: 9.5460e-02 [target: 5.000e-04] +| Volume estimate (plugin): 0.19560 [ref: 0.19560] +| Upper-bound on posterior std: 9.8600e-02 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 1 +|+ - | ###### *** - 0.5 +|+&%###%%&&&&&%##########*G**G##############*G*&*G*####### + | ####### &*** + 0.5 +|+%%###%&&&&&&%##########****G##############***&G**####### 0 +|+#########################################F################ - z %|&&&*G********#====&****#######***&#####&**########***#### - -0.5 +|+#####&&&###******G*&###########***&&&G**##########&**&%# - -1 +|+######%&&&&&&&&&################&*****#############&***&& + z %|&&&*G*********====&****#######*G*%#####&**########**##### + -0.5 +|+#####&&&#####****G*&###########***&&&G**###########G*### + -1 +|+######%&&&&&&&&%################&*****##############***&% +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+########%%%+ + -1.5 +-+#########+###########+###########+###########+#########%%+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.4 +|+ + + + + +-+| - +| + + + F + +| + 0.5 +|+ + + + + +-+| + +| + + + + +| + 0.4 +|+#########################################F#############+-+| 0.3 +|+#########################################*#############+-+| - #|##########################################*############## | -criterion +|+#########################################*#############+-+| - #|##########################################*############## | - 0.1 +|**########################################*#############+-+| +criterion #|##########################################*############## | + 0.2 +|+#########################################*#############+-+| + 0.1 +|+#########################################*#############+-+| +|-----------------------------------------------------------| 0 **+#******##+##********************************************** 0 0.2 0.4 0.6 0.8 1 x Iteration #14 | Current sample size: n = 17 -| Volume estimate (plugin): 0.20680 [ref: 0.20680] -| Upper-bound on posterior std: 9.5246e-02 [target: 5.000e-04] +| Volume estimate (plugin): 0.19560 [ref: 0.19560] +| Upper-bound on posterior std: 9.7257e-02 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 1 +|+ - | ###### *** - 0.5 +|+&%###%%&&&&&%##########*G**G##############*G*&*G*####### - 0 +|+F######################################################### - z %|&&&*G********#====&****#######***&#####&**########***#### - -0.5 +|+#####&&&###******G*&###########***&&&G**##########&**&%# - -1 +|+######%&&&&&&&&&################&*****#############&***&& + | ####### &*** + 0.5 +|+%%###%&&&&&&%##########****G##############***&G**####### + 0 +|+########################################################## + z %|&&&*G****F****====&****#######*G*%#####&**########**##### + -0.5 +|+#####&&&#####****G*&###########***&&&G**###########G*### + -1 +|+######%&&&&&&&&%################&*****##############***&% +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+########%%%+ + -1.5 +-+#########+###########+###########+###########+#########%%+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.08 +|*F + + + + +-+| - +|** *** + + + +| - 0.06 +|***#####*#**############################################+-+| - #|*#*####**##**############################################ | - 0.04 +|+#*####*####*###########################################+-+| - #|##*####*####**########################################### | + 0.1 +|+ + + + + +-+| + +| F* + + + +| + 0.08 +|**######****############################################+-+| + 0.06 +|**######*##*############################################+-+| + #|***####**###*############################################ | + 0.04 +|*#*####*####**##########################################+-+| 0.02 +|+#*###**#####*##########################################+-+| +|-----------------------------------------------------------| 0 **+##****###+###********************************************* @@ -9202,179 +8822,146 @@ x Iteration #15 | Current sample size: n = 18 -| Volume estimate (plugin): 0.20680 [ref: 0.20680] -| Upper-bound on posterior std: 3.7267e-02 [target: 5.000e-04] +| Volume estimate (plugin): 0.19560 [ref: 0.19560] +| Upper-bound on posterior std: 9.6987e-02 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 1 +|+ - | *** - 0.5 +|+########%%%%###########*G**G##############*G*&*G*####### - 0 +|+########################################################## - z #|##&=G******###====&****#######***&#####&**########***#### - -0.5 +|+#####&&&#F*******G=&###########***&&&G**##########&**&%# - -1 +|+######%&&&&&&&&&################&*****#############&***&& + | &*** + 0.5 +|+######%%##%%%##########****G##############***&G**####### + 0 +|+##########F############################################### + z &|****G*=&###&&*****&****#######*G*%#####&**########**##### + -0.5 +|+%%##########%&&&*G*&###########***&&&G**###########G*### + -1 +|+################################&*****##############***&% +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+########%%%+ + -1.5 +-+#########+###########+###########+###########+#########%%+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.025 +|+ + + + + +-+| + 0.2 +|+ + + + + +-+| +| + + + + +| - 0.02 +|+########*F*############################################+-+| - 0.015 +|+########*#**###########################################+-+| - #|########**##*############################################ | - 0.01 +|+#######*###**##########################################+-+| - 0.005 +|+#######*####*##########################################+-+| + 0.15 +|+#######***F############################################+-+| + #|########*****############################################ | + 0.1 +|+#######***#*###########################################+-+| + #|#######****#*############################################ | + 0.05 +|+######*#**#**##########################################+-+| +|-----------------------------------------------------------| - 0 **********##+###********************************************* + 0 **********#**##********************************************** 0 0.2 0.4 0.6 0.8 1 x Iteration #16 | Current sample size: n = 19 -| Volume estimate (plugin): 0.20680 [ref: 0.20680] -| Upper-bound on posterior std: 1.2171e-01 [target: 5.000e-04] +| Volume estimate (plugin): 0.19560 [ref: 0.19560] +| Upper-bound on posterior std: 2.7983e-02 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 1 +|+ - | *** - 0.5 +|+#######%%#%%%##########*G**G##############*G*&*G*####### - 0 +|+#########F################################################ - z #|##&*G**&&###&&****&****#######***&#####&**########***#### - -0.5 +|+#############%&&*G*&###########***&&&G**##########&**&%# - -1 +|+################################&*****#############&***&& + | &*** + 0.5 +|+#######################****G##############***&G**####### + 0 +|+##########F############################################### + z %|****G*=&#####&****&****#######*G*%#####&**########**##### + -0.5 +|+##############%&*G*&###########***&&&G**###########G*### + -1 +|+################################&*****##############***&% +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+########%%%+ + -1.5 +-+#########+###########+###########+###########+#########%%+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.35 +|+ + + + + +-+| - 0.3 +|+ + + + + +-+| - 0.25 +|+########*F*############################################+-+| - 0.2 +|+########****###########################################+-+| - #|#########****############################################ | - 0.15 +|+#######*****###########################################+-+| - 0.1 +|+#######*#*#**##########################################+-+| - 0.05 +|-----------------------------------------------------------| - 0 ***********#*##********************************************** + 0.04 +|+ + + + + +-+| + 0.035 +|+ +F* + + + +-+| + 0.03 +|+##########**###########################################+-+| + 0.025 +|+##########**###########################################+-+| + 0.02 +|+##########**###########################################+-+| + 0.015 +|+##########**###########################################+-+| + 0.01 +|+##########***##########################################+-+| + 0.005 +|-----------------------------------------------------------| + 0 **+***********#********************************************** 0 0.2 0.4 0.6 0.8 1 x Iteration #17 | Current sample size: n = 20 -| Volume estimate (plugin): 0.20680 [ref: 0.20680] -| Upper-bound on posterior std: 2.8488e-02 [target: 5.000e-04] +| Volume estimate (plugin): 0.19560 [ref: 0.19560] +| Upper-bound on posterior std: 1.0837e-02 [target: 5.000e-04] line 0: warning: iconv failed to convert degree sign | 1 +|+ - | *** - 0.5 +|+#######################*G**G##############*G*&*G*####### - 0 +|+##########F############################################### - z #|##&*G**&#####&****&****#######***&#####&**########***#### - -0.5 +|+##############%&*G*&###########***&&&G**##########&**&%# - -1 +|+################################&*****#############&***&& + | &*** + 0.5 +|+#######################****G##############***&G**####### + 0 +|+########################################################## + z %|F***G*=&#####&****&****#######*G*%#####&**########**##### + -0.5 +|+###############&*G*&###########***&&&G**###########G*### + -1 +|+################################&*****##############***&% +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+########%%%+ + -1.5 +-+#########+###########+###########+###########+#########%%+ 0 0.2 0.4 0.6 0.8 1 |-----------------------------------------------------------| - 0.05 +|+ + + + + +-+| - +| + + + + +| - 0.04 +|+##########F*###########################################+-+| - 0.03 +|+##########**###########################################+-+| - #|###########**############################################ | - 0.02 +|+##########**###########################################+-+| - 0.01 +|+##########**###########################################+-+| + 0.005 +|+ + + + + +-+| + +|F + + + + +| + 0.004 +|**######################################################+-+| + 0.003 +|**######################################################+-+| + #|**####################################################### | + 0.002 +|+*######################################################+-+| + 0.001 +|+*###########################*##########################+-+| +|-----------------------------------------------------------| - 0 **************#********************************************** + 0 **+#********************************************************* 0 0.2 0.4 0.6 0.8 1 x Iteration #18 | Current sample size: n = 21 -| Volume estimate (plugin): 0.20680 [ref: 0.20680] -| Upper-bound on posterior std: 5.7729e-04 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 1 +|+ - | *** - 0.5 +|+#######################*G**G##############*G*&*G*####### - 0 +|+############################F############################# - z #|##&*G**&#####&****&****#######***&#####&**########***#### - -0.5 +|+##############%&*G*&###########***&&&G**##########&**&%# - -1 +|+################################&*****#############&***&& - +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+########%%%+ - 0 0.2 0.4 0.6 0.8 1 - |-----------------------------------------------------------| - 0.0035 +|+ + + + + +-+| - 0.003 +|+ + + F + + +-+| - 0.0025 +|+############################*##########################+-+| - 0.002 +|+############################*##########################+-+| - #|#############################*########################### | - 0.0015 +|+############################*##########################+-+| - 0.001 +|+############################*##########################+-+| - 0.0005 +|-----------------------------------------------------------| - 0 ************************************************************* - 0 0.2 0.4 0.6 0.8 1 - x -Iteration #19 -| Current sample size: n = 22 -| Volume estimate (plugin): 0.20680 [ref: 0.20680] -| Upper-bound on posterior std: 7.4717e-05 [target: 5.000e-04] +| Volume estimate (plugin): 0.19560 [ref: 0.19560] +| Upper-bound on posterior std: 3.6247e-04 [target: 5.000e-04] -history = <22x5 stk_dataframe array> +history = <21x5 stk_dataframe array> : x z vol_estim vol_err nmisclass initial design #1 : 0.000000 0.00000 NaN NaN NaN initial design #2 : 0.333333 -0.43063 NaN NaN NaN initial design #3 : 0.666667 -0.66886 NaN NaN NaN - initial design #4 : 1.000000 -1.20558 0.0000 -0.2068 2068 - MC point #00459 : 0.104226 -0.13305 0.0000 -0.2068 2068 - MC point #09313 : 0.497569 0.26522 0.1048 -0.1020 1740 - MC point #06341 : 0.446730 0.26146 0.1158 -0.0910 1460 - MC point #08903 : 0.419504 0.07495 0.0941 -0.1127 1243 - MC point #03234 : 0.520459 0.09959 0.0877 -0.1191 1191 - MC point #03852 : 0.429448 0.15278 0.0877 -0.1191 1191 - MC point #02397 : 0.514433 0.15164 0.0883 -0.1185 1185 - MC point #03134 : 0.828146 0.42944 0.2113 0.0045 713 - MC point #01524 : 0.769456 0.46438 0.2169 0.0101 101 - MC point #04009 : 0.735273 0.13349 0.2146 0.0078 78 - MC point #09873 : 0.862205 0.04270 0.2066 -0.0002 2 - MC point #04529 : 0.853973 0.15462 0.2068 0.0000 0 - MC point #00671 : 0.736673 0.15027 0.2068 0.0000 0 - MC point #09298 : 0.041963 0.00877 0.2068 0.0000 0 - MC point #09371 : 0.205882 0.14338 0.2068 0.0000 0 - MC point #08186 : 0.196830 0.13523 0.2068 0.0000 0 - MC point #00301 : 0.219577 0.13178 0.2068 0.0000 0 - MC point #09333 : 0.514626 0.15006 0.2068 0.0000 0 + initial design #4 : 1.000000 -1.20558 0.0000 -0.1956 1956 + MC point #05228 : 0.104058 -0.13296 0.0000 -0.1956 1956 + MC point #03487 : 0.497570 0.26521 0.1064 -0.0892 1652 + MC point #01185 : 0.548774 -0.19775 0.1083 -0.0873 1411 + MC point #05639 : 0.400442 -0.08786 0.0817 -0.1139 1139 + MC point #02644 : 0.514000 0.15517 0.0817 -0.1139 1139 + MC point #09887 : 0.432847 0.17721 0.0841 -0.1115 1115 + MC point #01468 : 0.429365 0.15216 0.0841 -0.1115 1115 + MC point #00170 : 0.823819 0.46159 0.2125 0.0169 649 + MC point #09457 : 0.893490 -0.43635 0.1927 -0.0029 29 + MC point #06299 : 0.738572 0.17273 0.1943 -0.0013 13 + MC point #02494 : 0.852739 0.17054 0.1956 0.0000 0 + MC point #00578 : 0.854300 0.15035 0.1956 0.0000 0 + MC point #00601 : 0.736601 0.14941 0.1956 0.0000 0 + MC point #09396 : 0.191197 0.12436 0.1956 0.0000 0 + MC point #07924 : 0.210769 0.14264 0.1956 0.0000 0 + MC point #04195 : 0.224327 0.12083 0.1956 0.0000 0 + MC point #09926 : 0.035170 0.01558 0.1956 0.0000 0 Final result: -| Number of evaluations: 4 + 18 = 22. -| Volume estimate (plugin): 20.6800% [ref: 20.6800%] +| Number of evaluations: 4 + 17 = 21. +| Volume estimate (plugin): 19.5600% [ref: 19.5600%] 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/02_design_of_experiments/stk_example_doe04.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe04.m -***** test stk_example_doe04; close all; +[inst/examples/02_design_of_experiments/stk_example_doe05.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe05.m +***** test stk_example_doe05; close all; #=========================# -# stk_example_doe04 # +# stk_example_doe05 # #=========================# -'stk_example_doe04' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/02_design_of_experiments/stk_example_doe04.m +'stk_example_doe05' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/02_design_of_experiments/stk_example_doe05.m - STK_EXAMPLE_DOE04 Probability of misclassification + STK_EXAMPLE_DOE05 A simple illustration of 1D Bayesian optimization - The upper panel shows posterior means and variances as usual, and the - threshold of interest, which is at T = 0.85 (dashed line). + Our goal here is to minimize the one-dimensional function - The lower panel shows the probability of misclassification as a function of x - (blue curve), i.e., the probability that the actual value of the function is - not on the same side of the threshold as the prediction (posterior mean). + x |--> x * sin (x) - We also plot the expected future probability of misclassification (magenta - curve), should a new evaluation be made at x = 3. + over the interval [0; 4 * pi], using noisy evaluations. - Note that both probabilities are obtained using stk_pmisclass. + Evaluations points are chosen sequentially using either AKG criterion + (default) or the EQI criterion (set SAMPCRIT_NAME to 'EQI'); Additional help for built-in functions and operators is @@ -9384,385 +8971,700 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/02_design_of_experiments/stk_example_doe03.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe03.m -***** test stk_example_doe03; close all; + line 0: warning: iconv failed to convert degree sign -#=========================# -# stk_example_doe03 # -#=========================# +multiplot> " font ":Bold,11" textcolor rgb " + ^ + line 0: invalid command -'stk_example_doe03' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/02_design_of_experiments/stk_example_doe03.m + + | n = 5 + 0 = 5. + 15 +|+ + 10 +|+ ######### + #|###%%%%%%%%#####%%%%%%%%#######%%%========&&&&&&&%%%##### + 5 +|+&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&====##******G***#&&&&&&%## + z 0 +|+************G**************G*********#&&&&&==******#&&&&&% + -5 +|+&#####&&&&&&&&&=============&&&&&&&&&&&%%##%%===&#*******& + %|%%&&&&&&%%%#####%%%&&&&&&&%%%%%%%%%%%###########===&&&&&==G + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+######## + + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.05 +|+ + + + + + +-+| + +| + + *F + + + +| + 0.04 +|+###################****#############################**#+-+| + 0.03 +|+##****############**##**###########################**#*+-+| + AKG #|##**##**###########*####*###########################*##*# | + 0.02 +|+**####**#########**#####*#########################*####*-+| + 0.01 +|**######**#######**######**#######################**####*-+| + *|-----------------------------------------------------------| + 0 +-+#######+#*******#+#########**#######*************######+-+ + 0 2 4 6 8 10 12 + x + line 0: warning: iconv failed to convert degree sign - STK_EXAMPLE_DOE03 A simple illustration of 1D Bayesian optimization +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command - Our goal here is to optimize (maximize) the one-dimensional function + + | n = 5 + 5 = 10. + 15 +|+ + 10 +|+ ###%%%%## + #|###%%%%%%%%####################%%&========&%############# + 5 +|+&&&&&&&&&&&&&&&&&&%%%###%%%&&&====********G=&%########## + z 0 +|+************G******&&&&&&&*G*******##&&&&&****&%######## + -5 +|+&#####&&&&&&&&&===***G*****=&&&&&&&&&&%%%%&&&***&&#######% + %|%&&&&&&&%%%#####%%%%%%%%%%%%%%%%%%%###########&&*G**&&&&==G + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+###G%%%%#+ + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.03 +|+ + + + + + +-F| + 0.025 +|+ + + + + + +-*| + #|#########################################################* | + 0.02 +|+#######################################################+*+| + AKG0.015 +|+#################################################***###+*+| + 0.01 +|+################################################*##*###+*+| + #|################################################*####*##* | + 0.005 +|-----------------------------------------------------------| + 0 *************************************************#+####***+-+ + 0 2 4 6 8 10 12 + x + line 0: warning: iconv failed to convert degree sign - x |--> x * sin (x) +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command - over the interval [0; 4 * pi]. + + | n = 5 + 10 = 15. + 20 +|+ + 15 +|+ ####### + 10 +|+###%%%%%%######################%%&&&&&&&&%############## + 5 +|+&&&&&&&&&&&%%%%%%###########%%&&==========&&%########### + z &|&=========***G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G***#####&&&&&&&&****&####### + -5 +|+&&&&&&&&&&&%%%&&&&&======&&&&&&&&&&&&%%#####%&=*GG&%#%%&=G + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+###G&&&%#+ + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.02 +|+ + + + + + F+-+| + +| + + + + + ** +| + 0.015 +|+#####################################################*#*-+| + #|######################################################*#* | + AKG 0.01 +|+#####################################################*#*-+| + #|##################################################*###*##* | + 0.005 +|+###***##########################################***##*#+*+| + +|-----------------------------------------------------------| + 0 *****#####*****************************************#######+-+ + 0 2 4 6 8 10 12 + x + line 0: warning: iconv failed to convert degree sign - A Matern 5/2 prior with known parameters is used. +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command - Evaluations points are chosen sequentially using the Expected Improvement (EI) - criterion, starting from an initial design of N0 = 3 points. + + | n = 5 + 15 = 20. + 20 +|+ + 15 +|+ ####### + 10 +|+###%%%%%%######################%%&&&&&&&&%############## + 5 +|+&&&&&&&&&&&%%%%%%###########%%&&==========&&%########### + z &|&=========***G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G***#####&&&&&&&&****&####### + -5 +|+&&&&&&&&&&&%%%&&&&&======&&&&&&&&&&&&%%#####%&=*GG&G###&GG + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+###G%%%# + + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.014 +|+ + + + + + +-+| + 0.012 +|+ + + + + + F **+| + 0.01 +|+###################################################**##**+| + 0.008 +|+##################################################*#**#**+| + AKG #|###################################################*#**** *| + 0.006 +|+###***###########################################**#**#+-*| + 0.004 +|+##*##**##########################################*##**#+-*| + 0.002 +|-----------------------------------------------------------| + 0 *****#####+*****************************************######+-+ + 0 2 4 6 8 10 12 + x + line 0: warning: iconv failed to convert degree sign +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. + + | n = 5 + 20 = 25. + 20 +|+ + 15 +|+ ####%### + 10 +|+##%%%%%%%######################%%&&&&&&&&%############## + 5 +|+&&&&&&&&&&&&%%%%%%##########%%&&==========&&&########### + z &|&=========***G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G****####&&&&&&&&=***&####### + -5 +|+&&&##&&&&&&%%%&&&&&======&&&&&&&&&&&&%%######&=*GG&G####GG + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+###G&&G# + + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.008 +|+ + + + + + +-+| + +| + + + + + F * +| + 0.006 +|+###################################################**##**+| + #|####################################################**##** | + AKG0.004 +|+###***############################################*#**#**+| + #|###*##**###########################################*#**#** | + 0.002 +|+##*###*###########################################*#***+*+| + +|-----------------------------------------------------------| + 0 ****######+******************************************##**#+-* + 0 2 4 6 8 10 12 + x + line 0: warning: iconv failed to convert degree sign -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + + + | n = 5 + 25 = 30. + 20 +|+ + 15 +|+ ####%### + 10 +|+##%%%%%%%######################%%&&&&&&&&%############## + 5 +|+&&&&&&&&&&&&%%%%%%##########%%&&==========&&%########### + z &|&=========***G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G****####&&&&&&&&***&&####### + -5 +|+&&&##&&&&&&%%%&&&&&======&&&&&&&&&&&&%%#####%&=*GG&G###%GG + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+###G%%G# + + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.03 +|+ + + + + + +-+| + 0.025 +|+ + + + + + * F+-+| + #|##################################################**##*#* | + 0.02 +|+#################################################*#*#*#*-+| + AKG0.015 +|+#################################################*#*#*#*-+| + 0.01 +|+#################################################*#*#*#*-+| + #|####***##########################################*##*#*#* | + 0.005 +|-----------------------------------------------------------| + 0 *****#####*****************************************####*##+** + 0 2 4 6 8 10 12 + x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 15 +|+ - 10 +|+ ####%%%%%%%%%%%##### ################ - 5 +|+%&&&&&&&&&&&&&&&&&&&&&&%#######%===========&&&&&%%%##### - 0 +|+*====F========########&&&&&#====&#########===##&&&&&&%%# - z &|&***************************G***********************##&&&& - -5 +|+&&&&&&##############====&&###&&&&&&############===*******G - -10 +|+###%%&&&&&&&&&&&&&&&&%%#########%%&&&&&&&&&&&&&&&=======# - -15 +|------------------------------------------------------------ - -20 +-+#######+#########+#########+#########+#########+######## + + | n = 5 + 30 = 35. + 20 +|+ + 15 +|+ ####### + 10 +|+###%%%%%#######################%%&&&&&&&&%############## + 5 +|+&&&&&&&&&&&%%%%%%###########%%&&==========&&%########### + z &|&==========*=G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G***#####&&&&&&&&***&&####### + -5 +|+&&&&&&&&&&&%%%&&&&&======&&&&&&&&&&&&%%#####%&=*GG&G##G&GG + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+###G##G# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 1 +|+ + + + + + +-+| - +| ***F******** + + + + +| - 0.8 +|+#**##########******####################################+-+| - 0.6 +|+*##################***############***********##########+-+| - EI #|*#####################**#########***#########***######### | - 0.4 +|*######################**#######**#############***######+-+| - 0.2 +|+#######################**#####**################**#####+-+| - *|-----------------------------------------------------------| - 0 *-+#######+#########+#######*****#######+#########+####****** + 0.1 +|+ + + + + + +-+| + +| + + + + + ** F +| + 0.08 +|+#################################################*#*#*#*-+| + 0.06 +|+#################################################*#*#*#*-+| + AKG #|#################################################*##*#*#* | + 0.04 +|+################################################*##*#*#+*+| + 0.02 +|+###############################################*####*##+*+| + +|-----------------------------------------------------------| + 0 **************************************************+####*##+** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 15 +|+ - 10 +|+ ##%%%%%%%%#### #####%%%%%%###### - 5 +|+%&&&%##%&&&&&&&&&&&&&&&%#######%===========&&&&&&%%%#### - 0 +|+*****G******F*########&&&&&#====&#########===###&&&&&&%# - z &|&&&&&&##&&&&##**************G************************#&&&& - -5 +|+#########%&&&&&&&&&&====&&###&&&&&&############===#******G - -10 +|+############%%%%%%%%%%%#########%%&&&&&&&&&&&&&&&=======# - -15 +|------------------------------------------------------------ - -20 +-+#######+#########+#########+#########+#########+######## + + | n = 5 + 35 = 40. + 20 +|+ + 15 +|+ ####### + 10 +|+###%%%%%#######################%%&&&&&&&&%############## + 5 +|+&&&&&&&&&&&%%%%%%############%&&==========&&%########### + z &|&=========***G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G***#####&&&&&&&&***&&####### + -5 +|+&&&&&&&&&&&%%%&&&&&======&&&&&&&&&&&&%%#####%&=*GGGG##G&GG + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+###G##G# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.7 +|+ + *F* + + + + +-+| - 0.6 +|+ + *** ****+ + + + +-+| - 0.5 +|+########**######***####################################+-+| - 0.4 +|+#***###**#########**##################***##############+-+| - EI #|#**#**##*###########**##############****#*****########### | - 0.3 +|+*###****#############**##########**##########**########+-+| - 0.2 +|**####**###############**########**#############**######+-+| - 0.1 +|-----------------------------------------------------------| - 0 ***#####**+#########+######*******######+#########+###******* + 0.04 +|+ + + + + + +-+| + +| + + + + + F * +| + 0.03 +|+#################################################*#*#*#*-+| + #|##################################################*#*#*#* | + AKG0.02 +|+#################################################*#***#*-+| + #|##################################################*#***#* | + 0.01 +|+################################################*##***#*-+| + +|-----------------------------------------------------------| + 0 *****#####*****************************************####*##+** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 15 +|+ - 10 +|+ #### #####%%%%%%###### - 5 +|+%%%%###########%&&&&&&&%#######%=======F===&&&&&&%%%#### - 0 +|+*****G******G***&#####&&&&&#====&#########===###&&&&&&%# - z &|&&&&&&##%&&&&&==************G************************#&&&& - -5 +|+###############%&&&&====&&###&&&&&&############===#******G - -10 +|+################################%%&&&&&&&&&&&&&&&=======# - -15 +|------------------------------------------------------------ - -20 +-+#######+#########+#########+#########+#########+######## + + | n = 5 + 40 = 45. + 20 +|+ + 15 +|+ ####### + 10 +|+###%%%%%#######################%%&&&&&&&&%############## + 5 +|+%&&&&&&&&&&%%%%%%############%&&==========&&%########### + z &|&=========**=G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G***#####&&&&&&&&***&&####### + -5 +|+&&&&&&&&&&&%%%&&&&&======&&&&&&&&&&&%%%#####%&=*GGGG##G%GG + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+###G##G# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.5 +|+ + + + + + +-+| + 0.02 +|+ + + + + + +-+| +| + + + + + +| - 0.4 +|+#***###############################****F****###########+-+| - 0.3 +|+#*#**###*########****#############**#######***#########+-+| - EI #|#*###*##***######**##**###########**##########***######## | - 0.2 +|+*###****#*#####**####**#########**#############**######+-+| - 0.1 +|**####**###*###**######**#######**###############**#####+-+| + 0.015 +|+##################################################*###F+-+| + #|##################################################**#**#* | + AKG 0.01 +|+#################################################*#***#*-+| + #|##################################################*#***#* | + 0.005 +|+###***###########################################*#***#*-+| +|-----------------------------------------------------------| - 0 ***#####*#+###***###+######*******######+#########+###******* + 0 *****#####******************************************###*##+** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 15 +|+ ### - 10 +|+ #%%%%%# #%&&&&%%%## - #|#################%%%%%%#########&&===***G***##&&&&&%%#### - 5 +|+&&&&&&&&&&&&#&&&&&&&&&&&&%###&==*****&&%&=F****##&&&&%## - z 0 +|+*****G******G***********&&*G*****#&&&%####&===#****#&&&% - -5 +|+&&&%#########%&========****=&&&&&&%%########%===##******&% - #|################%%&&&&&&&&%####################%===&&&&&**G + | n = 5 + 45 = 50. + 20 +|+ + 15 +|+ ####### + 10 +|+###%%%%%#######################%%&&&&&&&&%############## + 5 +|+%&&&&&&&&&&%%%%%%############%&&==========&&%########### + z &|&=========**=G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G***#####&&&&&&&&***&%####### + -5 +|+&&&&&&&&&&&%%%&&&&&======&&&&&&&&&&&%%%#####%&=*GGGG##G%GG -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + -15 +-+#######+#########+#########+#########+#########+##GG##G# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.35 +|+ + + + + F + +-+| - 0.3 +|+ + + + + *** + +-+| - 0.25 +|+####################################***#**#**##########+-+| - 0.2 +|+####################################*#*#*###**#########+-+| - EI #|####################################*##***####*########## | - 0.15 +|+##################################**###**####**########+-+| - 0.1 +|+##################################*####**#####**#######+-+| - 0.05 +|-----------------------------------------------------------| - 0 ************************************####+#*#######+#********* + 0.04 +|+ + + + + + +-+| + 0.035 +|+ + + + + + * F+-+| + 0.03 +|+##################################################*###*+-+| + 0.025 +|+#################################################*#*#*#*-+| + AKG 0.02 +|+#################################################*#***#*-+| + 0.015 +|+#################################################*#***#*-+| + 0.01 +|+#################################################*#***#*-+| + 0.005 +|-----------------------------------------------------------| + 0 ******###*******************************************###*##+** + 0 2 4 6 8 10 12 + x + line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + + + | n = 5 + 50 = 55. + 20 +|+ + 15 +|+ ####### + 10 +|+###%%%%%#######################%%&&&&&&&&%############## + 5 +|+&&&&&&&&&&&%%%%%%###########%%&&==========&&%########### + z &|&=========***G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G***#####&&&&&&&&***&%####### + -5 +|+&&&&&&&&&&&%%%&&&&&======&&&&&&&&&&&&%%#####%&=*GGGG##G%GG + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+##GG##G# + + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.025 +|+ + + + + + +-+| + +| + + + + + F +| + 0.02 +|+####################################################*##+-+| + 0.015 +|+####################################################*##+-+| + AKG #|###################################################*#*#*# | + 0.01 +|+#################################################*#***#*-+| + 0.005 +|+#################################################*#***#*-+| + +|-----------------------------------------------------------| + 0 ******###********************************************##**#*** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 15 +|+ - 10 +|+ #%&&&&% - #|#################%%%%%%########%&&==**F*G*=############## - 5 +|+&&&&&&&&&&&&#&&&&&&&&&&&%%###&=****&&&%#&*G*&&&&&&&%%### - z 0 +|+*****G******G*********##&&&G****&&&&#######*****###&&&&# - -5 +|+&&&%#########%&======******=&&&&&%##########%===*******&&% - #|################%%&&&&&&&&%####################%===&###***G + | n = 5 + 55 = 60. + 20 +|+ + 15 +|+ ####### + 10 +|+###%%%%%#######################%%&&&&&&&&%############## + 5 +|+&&&&&&&&&&&%%%%%%###########%%&&==========&&%########### + z &|&=========***G&&&&&&&&&&&&&&&&==***********G**&&######### + 0 +|+**********#**********G*****G***#####&&&&&&&&***&%####### + -5 +|+&&&&&&&&&&&%%%&&&&&======&&&&&&&&&&&%%%#####%&=*GGGG##G%GG -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + -15 +-+#######+#########+#########+#########+#########+##GG##G# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.7 +|+ + + + F + +-+| - 0.6 +|+ + + + *** + +-+| - 0.5 +|+####################################*#*################+-+| - 0.4 +|+###################################*###*###############+-+| - EI #|####################################*###*################ | - 0.3 +|+##################################*####*###############+-+| - 0.2 +|+#################################**####*###############+-+| - 0.1 +|-----------------------------------------------------------| - 0 ************************************####+#******************* + 0.04 +|+ + + + + + +-+| + 0.035 +|+ + + + + + *F *+-+| + 0.03 +|+##################################################**##**-+| + 0.025 +|+##################################################**#*#*-+| + AKG 0.02 +|+#################################################*##**#*-+| + 0.015 +|+#################################################*##**#*-+| + 0.01 +|+#################################################*##**#+*+| + 0.005 +|-----------------------------------------------------------| + 0 ******###*******************************************###*##+** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 10 +|+ ##%&&& - | #### #%%%%%%## %&&=**FG*G** ####### - 5 +|+&&&&&&&&&&&%#%&&&&&&&&&&%####&=***&&####%*G*&&&&&&&%%### - 0 +|+*****G******G*****#####&&&&%****&&%########****###&&&&%# - z #|&&&&&####%%%##&===**********G*&&&%###########&==*****#&&&% - -5 +|+##############%&&&&======&&##################%===##******G - -10 +|+#################%%&&&&%%######################%====&&==== + | n = 5 + 60 = 65. + 20 +|+ + | # ##%%%%%## + 10 +|+#%%%%%%%%%####################%%&&&====&&&%############# + %|&&&&&&&&&&&&&&&&&&&&%#####%%%&&====********G*&&########## + z 0 +|+************G*******&&&&***G*******###&&&&&****&######## + &|&&&####&&&&&&&&&&====*G***==&&&&&&&&&&&%%###%&&**GG#G##G#&G + -10 +|+%&&&&&&%%########%%############%%%%############&=*GGGGGGGG +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.05 +|+ + + + + + +-+| - +| + + + *F+ + +| - 0.04 +|+##################################***##################+-+| - 0.03 +|+##################################*##*#################+-+| - EI #|###################################*##**################# | - 0.02 +|+#################################**##**################+-+| - 0.01 +|+#################################*###**################+-+| + 0.02 +|+ + + + + + +-+| + +| + + + + + +| + 0.015 +|+######################################################F+-+| + #|###################################################**##** | + AKG 0.01 +|+##################################################**#*#*-+| + #|###################################################**#*#* | + 0.005 +|+###***###########################################*##**#*-+| +|-----------------------------------------------------------| - 0 ************************************####********************* + 0 *****#####*******************************************##*##+** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 10 +|+ - | #### #%%%%%%## %&&***GF*G** ####### - 5 +|+&&&&&&&&&&&%#%&&&&&&&&&&%####&=***&######*G*&&&&&&&%%### - 0 +|+*****G******G*****#####&&&&%****&##########****###&&&&%# - z #|&&&&&####%%%##&===**********G*&&%############&=******#&&&% - -5 +|+##############%&&&&======&&##################%===##******G - -10 +|+################%%&&&&&&%######################%====&&==== + | n = 5 + 65 = 70. + 20 +|+ + | # ##%%%%%## + 10 +|+#%%%%%%%%%####################%%&&&====&&&%############# + %|&&&&&&&&&&&&&&&&&&&&%#####%%%&&====********G*&&########## + z 0 +|+************G*******&&&&***G*******###&&&&&****&######## + &|&&&####&&&&&&&&&&====*G***==&&&&&&&&&&&%%###%&&**GG#G##G#&G + -10 +|+%&&&&&&%%########%%############%%%%############&=*GGGGGGGG +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.025 +|+ + + + + + +-+| - +| + + + F + +| - 0.02 +|+#####################################*#################+-+| - 0.015 +|+#####################################*#################+-+| - EI #|#####################################**################## | - 0.01 +|+####################################**#################+-+| - 0.005 +|+####################################**#################+-+| + 0.02 +|+ + + + + + +-+| + +| + + + + + *F * +| + 0.015 +|+##################################################**##**-+| + #|###################################################**#*#* | + AKG 0.01 +|+##################################################****#*-+| + #|###################################################*#**#* | + 0.005 +|+####*############################################*##**#*-+| +|-----------------------------------------------------------| - 0 ************************************************************* + 0 *****#####*******************************************##*##+** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 10 +|+ - | #### #%%%%%%## #&&***GF*G** ####### - 5 +|+&&&&&&&&&&&%#%&&&&&&&&&%%####&=***&######*G*&&&&&&&%%### - 0 +|+*****G******G*****#####&&&&%***&&##########****###&&&&%# - z #|&&&&&####%%%##&===**********G*&&%############&=******#&&&% - -5 +|+##############%&&&&======&&##################%===##******G - -10 +|+################%%&&&&&&%######################%====&&==== + | n = 5 + 70 = 75. + 20 +|+ + | #### ##%%%%%## + 10 +|+#%%%&&&%%%####################%%&&&====&&&%############# + %|&&&&&&##&&&&&&&&&&&&%#####%%%&&====********G*&&########## + z 0 +|+************G*******&&&&***G*******###&&&&&****&######## + &|&&&#####&&&&&&&&&====*G***==&&&&&&&&&&&&%###%&&**GG#G##G#&G + -10 +|+%&&&&&&%%########%%%##%%%#####%%%%%%###########&=*GGGGGGGG +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.006 +|+ + + + + + +-+| - 0.005 +|+ + + + F + +-+| - #|######################################*################## | - 0.004 +|+#####################################*#################+-+| - EI 0.003 +|+#####################################*#################+-+| - 0.002 +|+#####################################*#################+-+| - #|######################################*################## | - 0.001 +|-----------------------------------------------------------| - 0 *********************##************************************** + 0.02 +|+ + + + + + +-+| + +| + + + + + +| + 0.015 +|+###################################################*##F+-+| + #|###################################################**##** | + AKG 0.01 +|+##################################################**#*#*-+| + #|###################################################****#* | + 0.005 +|+###***############################################*#**#*-+| + +|-----------------------------------------------------------| + 0 *****#####*******************************************##*##*** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 10 +|+ - | #### #%%%%%%## #&&***GG*G** ####### - 5 +|+&&&&&&&&&&&%#%&&&&&&&&&%%####&=***&######*G*&&&&&&&%%### - 0 +|+*****G******G*****#####&&&&%***&&##########****###&&&&%# - z #|&&&&&####%%%##&===**F*******G*&&#############&=******#&&&% - -5 +|+##############%&&&&======&&##################%===##******G - -10 +|+################%%&&&&&&%######################%====&&==== + | n = 5 + 75 = 80. + 20 +|+ + | #### ##%%%%%## + 10 +|+#%%%&&&%%%####################%%&&&====&&&%############# + %|&&&&&&#&&&&&&&&&&&&&%#####%%%&&====********G*&&########## + z 0 +|+************G*******&&&&***G*******###&&&&&****&######## + &|&&&#####&&&&&&&&&====*G***==&&&&&&&&&&&&%###%&&**GG#G##G#&G + -10 +|+%&&&&&&%%########%%%##%%%#####%%%%%%###########&=*GGGGGGGG +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.0006 +|+ + + + + + +-+| - 0.0005 +|+ + +*F + + + +-+| - #|###################***################################### | - 0.0004 +|+#################*##*##################################+-+| -EI 0.0003 +|+#################*##*##################################+-+| - 0.0002 +|+#################*##**#################################+-+| - #|#################**###*################################## | - 0.0001 +|-----------------------------------------------------------| - 0 ********************+####***********#************************ + 0.01 +|+ + + + + + +-+| + +| + + + + + +| + 0.008 +|+##################################################**##F+-+| + 0.006 +|+##################################################**##**-+| + AKG #|####***############################################**#*#* | + 0.004 +|+##**#*############################################****#*-+| + 0.002 +|+##*###*###########################################*#**#*-+| + +|-----------------------------------------------------------| + 0 ****######+******************************************##*##*** 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign + +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command + - | - 10 +|+ - | #### #&&F**GG*G** ####### - 5 +|+&&&&&&&&&&&&#################&****&######*G*&&&&&&&%%### - 0 +|+*****G******G**&&%####%%%%%&***&&##########****###&&&&%# - z #|&&&&&%########&*****G&&&****G*&%#############&=******#&&&% - -5 +|+###############&&&&*****=&&##################%===##******G - -10 +|+#####################%%%%######################%====&&==== + | n = 5 + 80 = 85. + 20 +|+ + | ## ##%%%%%## + 10 +|+#%%%%%%%%%####################%%&&&====&&&%############# + %|&&&&&&&&&&&&&&&&&&&&%#####%%%&&====********G*&&########## + z 0 +|+************G*******&&&&***G*******###&&&&&****&######## + &|&&&####&&&&&&&&&&====*G***==&&&&&&&&&&&%%###%&&**GG#G##G#&G + -10 +|+%&&&&&&%%########%%############%%%%############&=*GGGGGGGG +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+######## + + -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.00014 +|+ + + + + + +-+| - 0.00012 +|+ + + + F + + +-+| - 0.0001 +|+################################**#####################+-+| - 8e-05 +|+################################**#####################+-+| - #|#################################*#*##################### | - 6e-05 +|+################################*#*####################+-+| - 4e-05 +|+################################*#*#############***####+-+| - 2e-05 +|-----------------------------------------------------------| - 0 ***********************************##**************###******* + 0.02 +|+ + + + + + +-+| + +| + + + + + ** F +| + 0.015 +|+##################################################**##**-+| + #|###################################################**#*#* | + AKG 0.01 +|+##################################################****#*-+| + #|###################################################*#**#* | + 0.005 +|+###**#############################################*#**#*-+| + +|-----------------------------------------------------------| + 0 *****#####*******************************************##*##+** 0 2 4 6 8 10 12 x - : x z - x0(001) : 0.00000 0.00000 - x0(002) : 6.00000 -1.67649 - x0(003) : 12.00000 -6.43888 - xg(057) : 1.68421 1.67339 - xg(099) : 2.94737 0.56886 - xg(282) : 8.45113 6.98861 - xg(299) : 8.96241 3.99788 - xg(268) : 8.03008 7.90589 - xg(258) : 7.72932 7.66935 - xg(265) : 7.93985 7.91060 - xg(266) : 7.96992 7.91642 - xg(145) : 4.33083 -4.01937 + line 0: warning: iconv failed to convert degree sign -Number of evaluations: 3 + 9 = 12. +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/test_functions/stk_testfun_hartman4.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_hartman4.m -***** test - x = [0.1873 0.1906 0.5566 0.2647 ; - 0.18744768 0.19414868 0.558005333 0.26476409]; - y = stk_testfun_hartman4 (x); - assert (stk_isequal_tolabs (y, ... - [-3.729722308557300; -3.729840440436292], 1e-15)); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/test_functions/stk_testcase_truss3.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testcase_truss3.m -***** shared tc, xd, n - tc = stk_testcase_truss3 (); n = 5; - xd = stk_sampling_randunif (n, [], tc.search_domain); -***** test - v = stk_testfun_truss3_vol (xd, tc.constants); - z = stk_testfun_truss3_bb (xd, tc.constants); - assert (isequal (size (v), [n 1])); - assert (isequal (size (z), [n 5])); -***** test - F = stk_dataframe (zeros (n, 2), {'F1' 'F2'}); - F(:, 1) = tc.constants.F1_mean + tc.constants.F1_std * randn (n, 1); - F(:, 2) = tc.constants.F2_mean + tc.constants.F2_std * randn (n, 1); - x = [xd F]; - v = stk_testfun_truss3_vol (x, tc.constants); - z = stk_testfun_truss3_bb (x, tc.constants); - assert (isequal (size (v), [n 1])); - assert (isequal (size (z), [n 5])); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/examples/test_functions/stk_testfun_goldsteinprice.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_goldsteinprice.m -***** test % Use with nargin == 0 for visualisation - stk_testfun_goldsteinprice (); close all; -***** assert (stk_isequal_tolabs ... - (stk_testfun_goldsteinprice ([0, -1]), 3.0, 1e-12)) -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/examples/test_functions/stk_testfun_hartman6.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_hartman6.m -***** test - x1 = [0.20169 0.150011 0.476874 0.275332 0.311652 0.657300]; - y1 = -3.322368011391339; + + | n = 5 + 85 = 90. + 20 +|+ + | ## ##%%%%%## + 10 +|+#%%%%%%%%%####################%%&&&====&&&%############# + %|&&&&&&&&&&&&&&&&&&&&%#####%%%&&====********G*&&########## + z 0 +|+************G*******&&&&***G*******##&&&&&&****&######## + &|&&&####&&&&&&&&&&====*G***==&&&&&&&&&&&%%###%&&**GG#G##G#&G + -10 +|+%&&&&&&%%########%%############%%%%############&=*GGGGGGGG + +|------------------------------------------------------------ + -20 +-+#######+#########+#########+#########+#########+######## + + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.006 +|+ + + + + + +-+| + 0.005 +|+ + + + + + * F+-+| + #|#####*#############################################*****# | + 0.004 +|+###***############################################*****+-+| + AKG0.003 +|+##**#*############################################****#*-+| + 0.002 +|+##*###*###########################################***##*-+| + #|##**###**#########################################*#**##* | + 0.001 +|-----------------------------------------------------------| + 0 ****######+******************************************##*##**+ + 0 2 4 6 8 10 12 + x + line 0: warning: iconv failed to convert degree sign - x2 = [0.20168952 0.15001069 0.47687398 0.27533243 0.31165162 0.65730054]; - y2 = -3.322368011415512; +multiplot> " font ":Bold,8.8" textcolor rgb " + ^ + line 0: invalid command - y = stk_testfun_hartman6 ([x1; x2]); - assert (stk_isequal_tolabs (y, [y1; y2], 1e-15)) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/test_functions/stk_testfun_hartman3.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_hartman3.m -***** test - x1 = [0.1, 0.55592003, 0.85218259]; - y1 = -3.862634748621772; + + | n = 5 + 90 = 95. + 20 +|+ + | ##%%%%%## + 10 +|+#######%######################%%&&&====&&&%############# + %|&&&&&G&&&&&&&&&&&&&%%#####%%%&&====********G*&&########## + z 0 +|+************G*******&&&&***G*******##&&&&&&****&######## + &|&&&&%%%%%%&&&&&&&===**G***==&&&&&&&&&&&%%###%&&**GG#G##G#&G + -10 +|+#################%%%###########%%%#############&=*GGGGGGGG + +|------------------------------------------------------------ + -20 +-+#######+#########+#########+#########+#########+######## + + 0 2 4 6 8 10 12 + |-----------------------------------------------------------| + 0.005 +|+ + + + + + +-+| + +| + + + + + +| + 0.004 +|+##################################################**#*F+-+| + 0.003 +|+##################################################**#**+-+| + AKG #|###################################################*****# | + 0.002 +|+#################################################*#**##*-+| + 0.001 +|+#################################################*##*##*-+| + +|-----------------------------------------------------------| + 0 ****************************************************###*##**+ + 0 2 4 6 8 10 12 + x + : x z + init001 : 0.00000 -1.5926 + init002 : 3.00000 0.5840 + init003 : 6.00000 -1.5175 + init004 : 9.00000 4.5210 + init005 : 12.00000 -7.0401 + xg(079) : 4.70352 -3.0525 + xg(186) : 11.15578 -9.9063 + xg(179) : 10.73367 -14.0930 + xg(170) : 10.19095 -7.0187 + xg(195) : 11.69849 -12.0537 + xg(200) : 12.00000 -7.7202 + xg(172) : 10.31156 -5.3515 + xg(200) : 12.00000 -9.4566 + xg(180) : 10.79397 -11.5221 + xg(180) : 10.79397 -8.8624 + xg(191) : 11.45729 -12.1176 + xg(196) : 11.75879 -9.3111 + xg(180) : 10.79397 -8.1343 + xg(180) : 10.79397 -10.8347 + xg(196) : 11.75879 -8.2740 + xg(180) : 10.79397 -11.7702 + xg(190) : 11.39698 -14.1909 + xg(195) : 11.69849 -8.9895 + xg(180) : 10.79397 -12.0996 + xg(195) : 11.69849 -10.1150 + xg(181) : 10.85427 -12.7151 + xg(190) : 11.39698 -9.6651 + xg(190) : 11.39698 -8.9800 + xg(190) : 11.39698 -8.7099 + xg(176) : 10.55276 -9.8885 + xg(190) : 11.39698 -11.0974 + xg(176) : 10.55276 -10.2236 + xg(190) : 11.39698 -7.1580 + xg(190) : 11.39698 -8.6446 + xg(177) : 10.61307 -10.9708 + xg(190) : 11.39698 -11.1408 + xg(177) : 10.61307 -7.9128 + xg(190) : 11.39698 -10.3085 + xg(177) : 10.61307 -8.0628 + xg(190) : 11.39698 -9.4003 + xg(177) : 10.61307 -9.7223 + xg(190) : 11.39698 -13.0803 + xg(177) : 10.61307 -8.1702 + xg(190) : 11.39698 -9.4039 + xg(177) : 10.61307 -10.5916 + xg(190) : 11.39698 -9.3298 + xg(177) : 10.61307 -12.8795 + xg(190) : 11.39698 -9.4604 + xg(177) : 10.61307 -9.0562 + xg(190) : 11.39698 -10.3305 + xg(190) : 11.39698 -13.1763 + xg(177) : 10.61307 -10.7062 + xg(190) : 11.39698 -11.1120 + xg(177) : 10.61307 -10.6065 + xg(190) : 11.39698 -13.6800 + xg(183) : 10.97487 -9.5491 + xg(179) : 10.73367 -11.4076 + xg(179) : 10.73367 -9.6742 + xg(179) : 10.73367 -9.5456 + xg(191) : 11.45729 -6.7799 + xg(179) : 10.73367 -6.2908 + xg(191) : 11.45729 -11.0551 + xg(179) : 10.73367 -12.0421 + xg(191) : 11.45729 -6.4088 + xg(179) : 10.73367 -15.4164 + xg(190) : 11.39698 -13.9624 + xg(179) : 10.73367 -12.5804 + xg(190) : 11.39698 -10.0849 + xg(190) : 11.39698 -12.4289 + xg(179) : 10.73367 -11.2078 + xg(179) : 10.73367 -14.9878 + xg(190) : 11.39698 -13.6376 + xg(179) : 10.73367 -11.7068 + xg(190) : 11.39698 -12.6684 + xg(179) : 10.73367 -11.0496 + xg(190) : 11.39698 -10.3823 + xg(179) : 10.73367 -8.3999 + xg(190) : 11.39698 -9.4269 + xg(179) : 10.73367 -12.6028 + xg(190) : 11.39698 -7.9197 + xg(190) : 11.39698 -9.5611 + xg(179) : 10.73367 -6.7065 + xg(179) : 10.73367 -8.3118 + xg(190) : 11.39698 -9.6377 + xg(179) : 10.73367 -9.2592 + xg(190) : 11.39698 -9.9573 + xg(179) : 10.73367 -10.5550 + xg(190) : 11.39698 -8.7323 + xg(179) : 10.73367 -12.8987 + xg(190) : 11.39698 -5.7140 + xg(189) : 11.33668 -9.5990 + xg(189) : 11.33668 -9.3834 + xg(189) : 11.33668 -10.0692 + xg(188) : 11.27638 -11.3418 + xg(024) : 1.38693 2.5419 + xg(189) : 11.33668 -8.7555 + xg(188) : 11.27638 -13.9676 + xg(179) : 10.73367 -6.9923 + xg(179) : 10.73367 -9.6452 + xg(179) : 10.73367 -10.5781 - x2 = [0.114614 0.554649 0.852547]; - y2 = -3.862747199255087; +Number of evaluations: 5 + 95 = 100. - y = stk_testfun_hartman3 ([x1; x2]); - assert (stk_isequal_tolabs (y, [y1; y2], 1e-15)) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/03_miscellaneous/stk_example_misc01.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc01.m -***** test stk_example_misc01; close all; - -#==========================# -# stk_example_misc01 # -#==========================# +[inst/examples/02_design_of_experiments/stk_example_doe01.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/02_design_of_experiments/stk_example_doe01.m +***** test stk_example_doe01; close all; -'stk_example_misc01' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc01.m +#=========================# +# stk_example_doe01 # +#=========================# - STK_EXAMPLE_MISC01 Several correlation functions from the Matern family +'stk_example_doe01' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/02_design_of_experiments/stk_example_doe01.m - The Matern 1/2 correlation function is also known as the "exponential correla- - tion function". This is the correlation function of an Ornstein-Ulhenbeck pro- - cess. + STK_EXAMPLE_DOE01 Examples of two-dimensional designs - The Matern covariance function tends to the Gaussian correlation function when - its regularity (smoothness) parameter tends to infinity. + All designs are constructed on the hyper-rectangle BOX = [0; 2] x [0; 4]. - See also: stk_materncov_iso, stk_materncov_aniso + Examples of the following designs are shown: + a) Regular grid --> stk_sampling_regulargrid, + b) "Maximin" latin hypercube sample --> stk_sampling_maximinlhs, + c) RR2-scrambled Halton sequence --> stk_sampling_halton_rr2, + d) Uniformly distributed random sample --> stk_sampling_randunif. Additional help for built-in functions and operators is @@ -9773,44 +9675,57 @@ at https://www.octave.org and via the help@octave.org mailing list. 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/03_miscellaneous/stk_example_misc04.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc04.m -***** test stk_example_misc04; close all; +[inst/examples/01_kriging_basics/stk_example_kb06.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb06.m +***** test stk_example_kb06; close all; -#==========================# -# stk_example_misc04 # -#==========================# +#========================# +# stk_example_kb06 # +#========================# -'stk_example_misc04' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc04.m +'stk_example_kb06' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb06.m - STK_EXAMPLE_MISC04 Pareto front simulation + STK_EXAMPLE_KB06 Ordinary kriging VS kriging with a linear trend - DESCRIPTION + The same dataset is analyzed using two variants of kriging. - We consider a bi-objective optimization problem, where the objective - functions are modeled as a pair of independent stationary Gaussian - processes with a Matern 5/2 anisotropic covariance function. + The left panel shows the result of ordinary kriging, in other words, Gaussian + process interpolation assuming a constant (but unknown) mean. The right panel + shows the result of adding a linear trend in the mean of the Gaussian process. - Figure (a): represent unconditional realizations of the Pareto front and - and estimate of the probability of being non-dominated at each point - of the objective space. + The difference with the left plot is clear in extrapolation: the first predic- + tor exhibits a "mean reverting" behaviour, while the second one captures an + increasing trend in the data. - Figure (b): represent conditional realizations of the Pareto front and - and estimate of the posteriorior probability of being non-dominated - at each point of the objective space. - EXPERIMENTAL FUNCTION WARNING +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. - This script uses the stk_plot_probdom2d function, which is currently - considered an experimental function. Read the help for more information. +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/01_kriging_basics/stk_example_kb02.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb02.m +***** test stk_example_kb02; close all; - REFERENCE +#========================# +# stk_example_kb02 # +#========================# - [1] Michael Binois, David Ginsbourger and Olivier Roustant, Quantifying - uncertainty on Pareto fronts with Gaussian Process conditional simu- - lations, European J. of Operational Research, 2043(2):386-394, 2015. +'stk_example_kb02' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb02.m - See also: stk_plot_probdom2d + STK_EXAMPLE_KB02 Ordinary kriging in 1D with parameter estimation + + This example shows how to estimate covariance parameters and compute + ordinary kriging predictions on a one-dimensional noiseless dataset. + + The model and data are the same as in stk_example_kb01, but this time the + parameters of the covariance function are estimated using the Restricted + Maximum Likelihood (ReML) method. + + See also: stk_example_kb01, stk_example_kb02n Additional help for built-in functions and operators is @@ -9820,74 +9735,70 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. - line 0: warning: iconv failed to convert degree sign +model = -multiplot> set style increment default; - ^ - line 0: warning: deprecated command - Proba. of being dominated - simulated Pareto fronts--| || - |@ *& $* @$* #* + %| +-+-----+----+----+ ++||00% - |@ *& $* @$***#*********%| |#|#####|####|####| || - #|@#*&#$*#@$*###*####### %| |#+#####+####+####+ || - 500 +|@#*&#$*#@$*###*######+-%| 500 +---+##########+---+ || - #|@#*&#$*#@$$$$$$$$$$$$$$$| |#################| || - #|@#*&#$*$@@*@@#*@@@@@@@@@| |#################| ++||5% - #|@#*&&&&&&&*&&#*&&&&&&&&&| |#################| || - #|@#*##$*##%*###*#########| |#################| || - #|@#*##$*==%*%%#**********| |#################| || - 0 +|@#*##$*###*#########second objective--+##########+---+ ++||0% - #|@#*##$*###*########### | |#################| || - #|@#*##$*******###########| |#################| || - #|@#***$$$$$$$$$$$$$$$$$$$| |#################| || - #|@@@@@@@@@@@@@@@@@@@@@@@@| -500 |#################| || - -500 +|========================| +---+##########+---+ ++||5% - #|###################### | |#################| || - #|###################### | |#################| || - #|###################### | |#+#####+####+####+ || - #|------------------------| +-|-----|----|----| || - #####+######+#####+##### + -2000 +0 2000 4000++-0% - -2000 0 2000 4000 - first objective first objective -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/03_miscellaneous/stk_example_misc05.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc05.m -***** test - stk_example_misc05; close all; - assert (isa (model.lognoisevariance, 'stk_gaussiannoise_het0')); + scalar structure containing the fields: -#==========================# -# stk_example_misc05 # -#==========================# + covariance_type = @stk_materncov_iso + lm = -'stk_example_misc05' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc05.m + - STK_EXAMPLE_MISC05 Parameter estimation for heteroscedastic noise variance + dim = 1 + param = - DESCRIPTION + -0.2108 + 2.3026 + 0.7562 - We consider a 1d prediction problem with noisy data, where the variance of - the noise depends on the input location. + lognoisevariance = -Inf - A simple heteroscedastic model is used, where the only parameter to be - estimated is a dispersion parameter (the square of a scale parameter). - More preciesely, the variance of the noise is assumed to be of the form + line 0: warning: iconv failed to convert degree sign + + + | True function and observed data + 1.5 +|+ + | ***G* +--------------------+ + #|#######***#####***########################|***?***True function| + 1 +|+#####**#########***######################+---G---Observations-+ + #|####**#############***######################################### + #|###**################**######################################## + 0.5 +|+#**##################**############################***######## + #|#G*####################**########################****##*G**#### + #|**######################**#####################G**########***## + F1 0 *|+########################**###################**############*** + G|##########################**#################**###############** + #|###########################**###############**#################** + -0.5 +|+###########################**#############**################## + #|#############################**###########*#################### + #|##############################*G*#######**##################### + -1 +|+###############################**#####**###################### + #|#################################******######################## + +|------------------------------------------------------------------ + -1.5 +-+##############+###############+################+############## + + -1 -0.5 0 0.5 1 + +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/01_kriging_basics/stk_example_kb02n.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb02n.m +***** test stk_example_kb02n; close all; - tau^2(x) = phi * (x + 1) ^ 2, +#=========================# +# stk_example_kb02n # +#=========================# - and the dispersion parameter phi is estimated together with the parameters - of the covariance function. +'stk_example_kb02n' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb02n.m - EXPERIMENTAL FEATURE WARNING + STK_EXAMPLE_KB02N Noisy ordinary kriging in 1D with parameter estimation - This script demonstrates an experimental feature of STK (namely, gaussian - noise model objects). STK users that wish to experiment with it are - welcome to do so, but should be aware that API-breaking changes are likely - to happen in future releases. We invite them to direct any questions, - remarks or comments about this experimental feature to the STK mailing - list. + This example shows how to estimate covariance parameters and compute + ordinary kriging predictions on a one-dimensional noisy dataset. - See also: stk_example_kb09 + The model and data are the same as in stk_example_kb02, but this time the + parameters of the covariance function and the variance of the noise are + jointly estimated using the Restricted Maximum Likelihood (ReML) method. + + See also: stk_example_kb01n, stk_example_kb02 Additional help for built-in functions and operators is @@ -9901,7 +9812,7 @@ scalar structure containing the fields: - covariance_type = @stk_materncov52_iso + covariance_type = @stk_materncov_iso lm = @@ -9909,46 +9820,79 @@ dim = 1 param = - 0.066833 - 0.707310 + -0.098610 + 2.302585 + 0.613435 - lognoisevariance = + lognoisevariance = -3.0915 - +True noise variance = 0.0400 +Estimated noise variance = 0.0454 + line 0: warning: iconv failed to convert degree sign + + + | True function and noisy observed data + 1.5 +|+ + | G ***** +--------------------+ + #|#######***##G##G**########################|***?***True function| + 1 +|+####G**#########**G######################+---G---Observations-+ + #|####**#############***######################################### + #|###**################**######################################## + 0.5 +|+#**##################G*##########################G#***######## + G|#**####################**########################****#G**G*##G# + #|*G######################**#####################***########***## + F1 0 *|+########################**###################**############*** + *|##########################**#################**G##############**G + #|###########################**G##############**#################** + -0.5 +|+#########################G#**#############**################## + #|#############################**###########*G################### + #|##############################***G######**##################### + -1 +|+###############################**#####*G###################### + #|#################################***G**######################## + +|------------------------------------------------------------------ + -1.5 +-+##############+###############+################+############## + + -1 -0.5 0 0.5 1 + +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/01_kriging_basics/stk_example_kb08.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb08.m +***** test stk_example_kb08; close all; +#========================# +# stk_example_kb08 # +#========================# -gn = -| -| Heteroscedastic variance model: tau^2(x) = dispersion * variance_function(x) -| -| dispersion: 2.4169 [log_dispersion = 0.8825] -| variance_function: @(x) (x + 1) .^ 2 -| +'stk_example_kb08' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb08.m -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/03_miscellaneous/stk_example_misc02.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc02.m -***** test stk_example_misc02; close all; + STK_EXAMPLE_KB08 Generation of conditioned sample paths made easy -#==========================# -# stk_example_misc02 # -#==========================# + It has been demonstrated, in stk_example_kb05, how to generate conditioned + sample paths using unconditioned sample paths and conditioning by kriging. -'stk_example_misc02' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc02.m + This example shows how to do the same in a more concise way, letting STK + take care of the details. - STK_EXAMPLE_MISC02 How to use priors on the covariance parameters - A Matern covariance in dimension one is considered as an example. A Gaussian - prior is used for all three parameters: log-variance, log-regularity and log- - inverse-range. The corresponding parameter estimates are Maximum A Posteriori - (MAP) estimates or, more precisely, Restricted MAP (ReMAP) estimates. +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. - Several values for the variance of the prior are successively considered, to - illustrate the effect of this prior variance on the parameter estimates. When - the variance is small, the MAP estimate is close to the mode of the prior. On - the other hand, when the variance is large, the prior becomes "flat" and the - MAP estimate is close to the ReML estimate (see figure b). +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/01_kriging_basics/stk_example_kb07.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb07.m +***** test stk_example_kb07; close all; + +#========================# +# stk_example_kb07 # +#========================# + +'stk_example_kb07' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb07.m + + STK_EXAMPLE_KB07 Simulation of sample paths from a Matern process Additional help for built-in functions and operators is @@ -9960,41 +9904,54 @@ mailing list. line 0: warning: iconv failed to convert degree sign - | prior std = 10.00 | prior std = 1.00 - 3 +|+ 4 +|+ #### - %|%## ####%%%% 3 +|+# ##%%%%% - 2 +|+&&&%&&&%######%&&&&&&&& 2 +|+&&%##%%%######%%&&&&&&& - 1 +|+#==GG==&&%###&&&######& 1 +|+#&&GG==&&%###&&&&#####& - =|===&&&&====G=G=====predicted outpu| z===&&====G=G========== - 0 +|+&&&##%&&&&&&&&&&######& 0 +|+&&&##%&&&&&&&&&&######& - -1 +|+%#############%&&&&&&&& -1 +|+%#############%&&&&&&&& - +|------------------------- -2 +|------------------------- - -2 +-+##+####+####+####+### + -3 +-+##+####+####+####+####+ - 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 - | prior std = 0.20 | prior std = 0.01 - 6 +|+ 6 +|+ - | ### | # - 4 +|+#################%%%%%% 4 +|+##################%%%%% - 2 +|+%####&&%######%&&&&&&&& 2 +|+#####%%########&&&&&&&& - &|&&==GG=====&&======predicted outpu| z&=GG=====#%=========== - 0 +|+==&###%&&=G=G&&&&#####& 0 +|+===####%&=G=G&&&&&&###& - -2 +|+&%#############%&&&&&&& -2 +|+&###############%%&&&&& - +|------------------------- +|------------------------- - -4 +-+##+####+####+####+### + -4 +-+##+####+####+####+### + - 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 - input x input x + |--Matern, nu = 0.5------| |--Matern, nu = 1.5------| + 4 +|+ + + + +-+| 3 +|+ + + + +-+| + 3 +|+ + * @@ + ****+| 2 +|+&&&+ + #######+-+| + 2 +|*###*####**@@@@#@*#*#**+| #|&&#&####%*****######@##$| + 1 #|*******=&#@*#####*#####*| 1 &|==****%########***=#####| +response z#|##******##########*#*##response z#|#####*##****$@&====*****| + 0 *|###***###**#*****#*****#| -1 #|#*==###@*##**&==&&**&&&*| + -1 %|#########**&&*&&=**===**| #|******@#####**=%***#**%%| + -2 @|------------------------| -2 +|------------------------| + -3 @-+###+######+#####+###+-+ -3 +-+###+######+#####+###+-+ + -1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1 + |--Matern, nu = 2.5------| |--Matern, nu = 10.0-----| + 3 +|+ &&&& + + +-+| 3 +|+ + + + +-+| + 2 +|+&& +&& + &&& + +-+| 2 +|+ + =**** + +-+| + #|&&####&****&&&#&&##&&&%%| 1 #|************%%***####+-&| + 1 =|*####***&&******#####===| 0 *|##==***==@@@$%&=**&&&&&&| +response z#|##*@##########*##@=*##@response z*|$##**&***#*@#####*****@@| + -1 *|@=****#####**###*==#*##$| -1 #|**######**###**#########| + #|###===%%%===%%==**#*****| -2 %|%##############**###***+| + -2 +|------------------------| -3 %|------------------------| + -3 +-+###+######+#####+****-+ -4 +-+###+######+#####+###+-+ + -1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1 + input variable x input variable x 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/03_miscellaneous/stk_example_misc03.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/03_miscellaneous/stk_example_misc03.m -***** test stk_example_misc03; close all; +[inst/examples/01_kriging_basics/stk_example_kb01n.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb01n.m +***** test stk_example_kb01n; close all; -#==========================# -# stk_example_misc03 # -#==========================# +#=========================# +# stk_example_kb01n # +#=========================# -'stk_example_misc03' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/03_miscellaneous/stk_example_misc03.m +'stk_example_kb01n' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb01n.m - STK_EXAMPLE_MISC03 How to deal with (known) seasonality + STK_EXAMPLE_KB01N Ordinary kriging in 1D, with noisy data + + This example shows how to compute ordinary kriging predictions on a + one-dimensional noisy dataset. + + The Gaussian Process (GP) prior is the same as in stk_example_kb01. + + The observation noise is Gaussian and homoscedastic (constant variance). + Its variance is assumed to be known. + + Note that the kriging predictor, which is the posterior mean of the GP, + does NOT interpolate the data in this noisy example. + + See also: stk_example_kb01, stk_example_kb02n Additional help for built-in functions and operators is @@ -10008,7 +9965,7 @@ scalar structure containing the fields: - covariance_type = @stk_materncov52_iso + covariance_type = @stk_materncov_iso lm = @@ -10016,210 +9973,304 @@ dim = 1 param = - 1.1986 - -1.6379 + -0.6931 + 1.3863 + 0.9163 + + lognoisevariance = -3.2189 - lognoisevariance = -4.6872 + line 0: warning: iconv failed to convert degree sign + + + | True function and observed data + 1.5 +|+ + | G******* +--------------------+ + #|#######***##G##G***#######################|***?***True function| + 1 +|+####G**##########*G*#####################+---G---Observations-+ + #|####**##############**######################################### + #|###**################*G###########################G############ + 0.5 G|+#**##################**###########################******G###G# + #|*G######################**######################***###G##***### + 0 +|*########################**####################**##########***# + *|##########################**#################**G#############*** + #|###########################**###############**#################*G + -0.5 +|+#########################G#*G#############**################## * + #|#############################**###########*G################### + #|##############################**#G#######**#################### + -1 +|+##############################***#####*G###################### + #|#################################***G***####################### + +|------------------------------------------------------------------ + -1.5 +-+##############+###############+################+############## + + -1 -0.5 0 0.5 1 + input variable x + +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/01_kriging_basics/stk_example_kb01.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb01.m +***** test stk_example_kb01; close all; -model2 = +#========================# +# stk_example_kb01 # +#========================# + +'stk_example_kb01' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb01.m + + STK_EXAMPLE_KB01 Ordinary kriging in 1D, with noiseless data + + This example shows how to compute ordinary kriging predictions on a + one-dimensional noiseless dataset. + + The word 'ordinary' indicates that the mean function of the GP prior is + assumed to be constant and unknown. + + A Matern covariance function is used for the Gaussian Process (GP) prior. + The parameters of this covariance function are assumed to be known (i.e., + no parameter estimation is performed here). + + Note that the kriging predictor, which is the posterior mean of the GP, + interpolates the data in this noiseless example. + + See also: stk_example_kb01n, stk_example_kb02 + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. +model = scalar structure containing the fields: - covariance_type = @stk_materncov52_iso + covariance_type = @stk_materncov_iso lm = -@(t) [ones(length (t), 1), sin(2 * pi * t / T0), cos(2 * pi * t / T0)] + dim = 1 param = - -9.6891 - -8.1781 + -0.6931 + 1.3863 + 0.9163 - lognoisevariance = -4.6861 + lognoisevariance = -Inf + line 0: warning: iconv failed to convert degree sign + + + | True function and observed data + 1.5 +|+ + | ****G** +--------------------+ + #|#######***#####****#######################|***?***True function| + 1 +|+####***##########***#####################+---G---Observations-+ + #|####**##############**######################################### + #|###**################**######################################## + 0.5 +|+#**##################**###########################*****G###### + #|*G######################**######################***######***### + 0 +|*########################**####################G*##########***# + G|##########################**#################***#############*** + #|###########################**###############**#################** + -0.5 +|+###########################**#############**################## * + #|#############################**###########**################### + #|##############################*G#########**#################### + -1 +|+##############################***#####**###################### + #|#################################*******####################### + +|------------------------------------------------------------------ + -1.5 +-+##############+###############+################+############## + + -1 -0.5 0 0.5 1 + input variable x + 1 test, 1 passed, 0 known failure, 0 skipped -[inst/utils/stk_generate_samplepaths.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/utils/stk_generate_samplepaths.m -***** shared model, xi, zi, xt, n, nb_paths - dim = 1; n = 50; nb_paths = 5; - model = stk_model (@stk_materncov32_iso, dim); - model.param = log ([1.0; 2.9]); - xt = stk_sampling_regulargrid (n, dim, [-1.0; 1.0]); - xi = [xt(1, :); xt(end, :)]; zi = [0; 0]; -***** error zsim = stk_generate_samplepaths (); -***** error zsim = stk_generate_samplepaths (model); -***** test zsim = stk_generate_samplepaths (model, xt); -***** test zsim = stk_generate_samplepaths (model, xt, nb_paths); -***** test zsim = stk_generate_samplepaths (model, xi, zi, xt); -***** test zsim = stk_generate_samplepaths (model, xi, zi, xt, nb_paths); -***** test - zsim = stk_generate_samplepaths (model, xt); - assert (isequal (size (zsim), [n, 1])); -***** test - zsim = stk_generate_samplepaths (model, xt, nb_paths); - assert (isequal (size (zsim), [n, nb_paths])); -***** test % duplicate simulation points - zsim = stk_generate_samplepaths (model, [xt; xt], nb_paths); - assert (isequal (size (zsim), [2 * n, nb_paths])); - assert (isequal (zsim(1:n, :), zsim((n + 1):end, :))); -***** test % simulation points equal to observation points (noiseless model) - % https://sourceforge.net/p/kriging/tickets/14/ - zsim = stk_generate_samplepaths (model, xt, zeros (n, 1), xt); - assert (isequal (zsim, zeros (n, 1))); -10 tests, 10 passed, 0 known failure, 0 skipped -[inst/utils/stk_conditioning.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/utils/stk_conditioning.m -***** shared n, m, ni, xi_ind, lambda, zsim, zi +[inst/examples/01_kriging_basics/stk_example_kb03.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb03.m +***** test stk_example_kb03; close all; - n = 50; m = 5; ni = 10; xi_ind = 1:ni; - lambda = 1/ni * ones (ni, n); % prediction == averaging - zsim = ones (n, m); % const unconditioned samplepaths - zi = zeros (ni, 1); % conditioning by zeros -***** error zsimc = stk_conditioning (); -***** error zsimc = stk_conditioning (lambda); -***** error zsimc = stk_conditioning (lambda, zi); -***** test zsimc = stk_conditioning (lambda, zi, zsim); -***** test zsimc = stk_conditioning (lambda, zi, zsim, xi_ind); -***** test - zsimc = stk_conditioning (lambda, zi, zsim, xi_ind); - assert (stk_isequal_tolabs (double (zsimc), zeros (n, m))); -***** test - zi = 2 * ones (ni, 1); % conditioning by twos - zsimc = stk_conditioning (lambda, zi, zsim, xi_ind); - assert (stk_isequal_tolabs (double (zsimc), 2 * ones (n, m))); -***** test - DIM = 1; nt = 400; - xt = stk_sampling_regulargrid (nt, DIM, [-1.0; 1.0]); +#========================# +# stk_example_kb03 # +#========================# - NI = 6; xi_ind = [1 20 90 200 300 350]; - xi = xt(xi_ind, 1); - zi = (1:NI)'; % linear response ;-) +'stk_example_kb03' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb03.m - % Carry out the kriging prediction at points xt - model = stk_model (@stk_materncov52_iso); - model.param = log ([1.0; 2.9]); - [ignore_zp, lambda] = stk_predict (model, xi, [], xt); + STK_EXAMPLE_KB03 Ordinary kriging in 2D + + An anisotropic Matern covariance function is used for the Gaussian Process + (GP) prior. The parameters of this covariance function (variance, regularity + and ranges) are estimated using the Restricted Maximum Likelihood (ReML) + method. + + The mean function of the GP prior is assumed to be constant and unknown. This + default choice can be overridden by means of the model.lm property. + + The function is sampled on a space-filling Latin Hypercube design, and the + data is assumed to be noiseless. + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. + +BOX = 2-dimensional hyper-rectangle (stk_hrect object): + + : x_1 x_2 + lower_bounds : -5 0 + upper_bounds : 10 15 - % Generate (unconditional) sample paths according to the model - NB_PATHS = 10; - zsim = stk_generate_samplepaths (model, xt, NB_PATHS); - zsimc = stk_conditioning (lambda, zi, zsim, xi_ind); -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_cubic/feval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_cubic/feval.m -***** test - n = 15; d = 4; - x = stk_sampling_randunif (n, d); - P = feval (stk_lm_cubic (), x); - assert (isequal (size (P), [n, 1 + d * (11 + d * (6 + d)) / 6])) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_cubic/stk_lm_cubic.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_cubic/stk_lm_cubic.m -***** test stk_test_class ('stk_lm_cubic') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_quadratic/feval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_quadratic/feval.m -***** test - n = 15; d = 4; - x = stk_sampling_randunif (n, d); - P = feval (stk_lm_quadratic (), x); - assert (isequal (size (P), [n, 1 + d * (d + 3) / 2])); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_quadratic/stk_lm_quadratic.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_quadratic/stk_lm_quadratic.m -***** test stk_test_class ('stk_lm_quadratic') 1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_null/feval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_null/feval.m -***** test - n = 15; d = 4; - x = stk_sampling_randunif (n, d); - P = feval (stk_lm_null (), x); - assert (isequal (size (P), [n, 0])); +[inst/examples/01_kriging_basics/stk_example_kb09.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb09.m +***** test stk_example_kb09; close all; + +#========================# +# stk_example_kb09 # +#========================# + +'stk_example_kb09' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb09.m + + STK_EXAMPLE_KB09 Generation of sample paths conditioned on noisy observations + + A Matern Gaussian process model is used, with constant but unknown mean + (ordinary kriging) and known covariance parameters. + + Given noisy observations from the unknown function, a batch of conditioned + sample paths is drawn using the "conditioning by kriging" technique + (stk_generate_samplepaths function). + + See also: stk_generate_samplepaths, stk_conditioning, stk_example_kb05 + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. 1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_null/stk_lm_null.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_null/stk_lm_null.m -***** test stk_test_class ('stk_lm_null') +[inst/examples/01_kriging_basics/stk_example_kb05.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb05.m +***** test stk_example_kb05; close all; + +#========================# +# stk_example_kb05 # +#========================# + +'stk_example_kb05' is a script from the file /build/reproducible-path/octave-stk-2.8.1/debian/octave-stk/usr/share/octave/packages/stk-2.8.1/examples/01_kriging_basics/stk_example_kb05.m + + STK_EXAMPLE_KB05 Generation of conditioned sample paths + + A Matern Gaussian process model is used, with constant but unknown mean + (ordinary kriging) and known covariance parameters. + + Given noiseless observations from the unknown function, a batch of conditioned + sample paths is drawn using the "conditioning by kriging" technique. In short, + this means that unconditioned sample path are simulated first (using + stk_generate_samplepaths), and then conditioned on the observations by kriging + (using stk_conditioning). + + Note: in this example, for pedagogical purposes, conditioned samplepaths are + simulated in two steps: first, unconditioned samplepaths are simulated; + second, conditioned samplepaths are obtained using conditioning by kriging. + In practice, these two steps can be carried out all at once using + stk_generate_samplepath (see, e.g., stk_example_kb09). + + See also: stk_generate_samplepaths, stk_conditioning, stk_example_kb09 + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. 1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_matrix/stk_lm_matrix.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_matrix/stk_lm_matrix.m -***** test stk_test_class ('stk_lm_matrix') -***** test %%% dim 1 - data = rand (10, 1); idx = 3:7; - lm = stk_lm_matrix (data); - assert (isa (lm, 'stk_lm_matrix')); - assert (isequal (data(idx, :), feval (lm, idx))); -***** test %%% dim 3 - data = rand (10, 3); idx = 3:7; - lm = stk_lm_matrix (data); - assert (isa (lm, 'stk_lm_matrix')); - assert (isequal (data(idx, :), feval (lm, idx))); +[inst/misc/error/stk_error.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/error/stk_error.m +***** shared errmsg, mnemonic, badstack + errmsg = 'Go ahead, make my day.'; + mnemonic = 'ClintEastwood'; + badstack = 0; % not a valid stack structure +***** error stk_error(errmsg, mnemonic); +***** error stk_error (errmsg, mnemonic, badstack); +***** error id=STK:stk_error:InvalidArgument stk_error (errmsg, mnemonic, badstack); 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/lm/stk_lm_polynomial.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/stk_lm_polynomial.m -***** error lm = stk_lm_polynomial (); -***** test - lm = stk_lm_polynomial (-1); - assert (isa (lm, 'stk_lm_null')); -***** test - lm = stk_lm_polynomial (0); - assert (isa (lm, 'stk_lm_constant')); -***** test - lm = stk_lm_polynomial (1); - assert (isa (lm, 'stk_lm_affine')); +[inst/misc/test/stk_isequal_tolrel.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/test/stk_isequal_tolrel.m +***** shared r1, r2, r3, a, b, tolrel + a = 1.01; b = 1.02; tolrel = 0.1; +***** error rr = stk_isequal_tolrel(); +***** error rr = stk_isequal_tolrel(a); +***** test r1 = stk_isequal_tolrel(a, b); +***** test r2 = stk_isequal_tolrel(a, b, tolrel); +***** test r3 = stk_isequal_tolrel(a, [b b]); +***** test assert (isequal (r1, false)); +***** test assert (isequal (r2, true)); +***** test assert (isequal (r3, false)); ***** test - lm = stk_lm_polynomial (2); - assert (isa (lm, 'stk_lm_quadratic')); + a = struct('u', []); b = struct('v', []); + assert(~ stk_isequal_tolrel(a, b)) ***** test - lm = stk_lm_polynomial (3); - assert (isa (lm, 'stk_lm_cubic')); -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_affine/feval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_affine/feval.m + a = struct('u', 1.01); b = struct('u', 1.02); + assert(stk_isequal_tolrel(a, b, tolrel)) +10 tests, 10 passed, 0 known failure, 0 skipped +[inst/misc/test/stk_test.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/test/stk_test.m +***** assert(isempty([])) % support for test assert shorthand +***** assert((1 + 1) == 2) +***** test a=1; +***** test assert(~exist('a')); +***** shared a % create a shared variable +***** test a = 3; % assign to a shared variable +***** test assert(a == 3); % variable should equal 3 in this second 'test' block +***** shared b, c % replace shared variables {'a'} --> {'b', 'c'} +***** test assert(~exist('a')); % a no longer exists +***** test assert(isempty(b)); % variables start off empty +***** shared a % recreate a shared variable that had been deleted +***** test assert (isempty(a)); % it is empty, even though it was equal to 3 before +***** shared a, b, c % creates three shared variables + a = 1; b = 2; c = 3; % give values to all variables, in the same block +***** assert(isequal([a, b, c], [1, 2, 3])); % test all of them together +***** test c=6; % update a value +***** test % show that the update sticks between blocks + assert(isequal([a, b, c], [1, 2, 6])); +***** shared % clear all shared variables +***** assert(~exist('a')) % show that they are cleared +***** error test % not enough input arguments +***** error test(1, 2, 3, 4) % too many input args +***** error garbage % usage on nonexistent function should be +***** error stt_test('test', 'bogus'); % undefined function error +***** error stk_test('test', 'bogus'); % error raised by stk_test itself +***** error stk_test(); +***** error stk_test('disp', 'verbose', [], 'extra arg !!!'); +***** error stk_test([]) +***** error stk_test(0.0) +***** error stk_test('stk_mindist', 0.0) +***** error stk_test('stk_mindist', 'dudule') +24 tests, 24 passed, 0 known failure, 0 skipped +[inst/misc/test/stk_isequal_tolabs.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/test/stk_isequal_tolabs.m +***** shared r1, r2, a, b, tolabs + a = 1.01; b = 1.02; tolabs = 0.1; +***** error rr = stk_isequal_tolabs(); +***** error rr = stk_isequal_tolabs(a); +***** test r1 = stk_isequal_tolabs(a, b); +***** test r2 = stk_isequal_tolabs(a, b, tolabs); +***** test assert(~r1); +***** test assert(r2); ***** test - n = 15; d = 4; - x = stk_sampling_randunif (n, d); - P = feval (stk_lm_affine (), x); - assert (isequal (size (P), [n, d + 1])); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_affine/stk_lm_affine.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_affine/stk_lm_affine.m -***** test stk_test_class ('stk_lm_affine') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_constant/feval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_constant/feval.m + a = struct('u', []); b = struct('v', []); + assert(~ stk_isequal_tolabs(a, b)) ***** test - n = 15; d = 4; - x = stk_sampling_randunif (n, d); - P = feval (stk_lm_constant (), x); - assert (isequal (size (P), [n, 1])); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_constant/stk_lm_constant.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_constant/stk_lm_constant.m -***** test stk_test_class ('stk_lm_constant') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/parallel/@stk_parallel_engine_none/stk_parallel_engine_none.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/parallel/@stk_parallel_engine_none/stk_parallel_engine_none.m -***** test stk_test_class ('stk_parallel_engine_none') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/distrib/stk_distrib_student_ei.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_student_ei.m -***** assert (stk_isequal_tolrel (stk_distrib_student_ei (0, 2), 1 / sqrt (2), eps)) -***** test % Decreasing as a function of z - ei = stk_distrib_student_ei (linspace (-10, 10, 200), 3.33); - assert (all (diff (ei) < 0)) -***** shared M, mu, sigma, ei, nu - M = randn (1, 10); - mu = randn (5, 1); - sigma = 1 + rand (1, 1, 7); - nu = 2; - ei = stk_distrib_student_ei (M, nu, mu, sigma); -***** assert (isequal (size (ei), [5, 10, 7])) -***** assert (all (ei(:) >= 0)) -***** assert (isequal (ei, stk_distrib_student_ei (M, nu, mu, sigma, false))); -***** assert (isequal (ei, stk_distrib_student_ei (-M, nu, -mu, sigma, true))); -6 tests, 6 passed, 0 known failure, 0 skipped + a = struct('u', 1.01); b = struct('u', 1.02); + assert(stk_isequal_tolabs(a, b, tolabs)) +8 tests, 8 passed, 0 known failure, 0 skipped [inst/misc/distrib/stk_distrib_normal_cdf.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_normal_cdf.m ***** assert (stk_isequal_tolrel (stk_distrib_normal_cdf ([1; 3], 1, [1 10]), ... @@ -10241,19 +10292,6 @@ ***** assert (isequal (stk_distrib_normal_cdf (0, 1, 0), 0.0)); ***** assert (isequal (stk_distrib_normal_cdf (1, 0, 0), 1.0)); 10 tests, 10 passed, 0 known failure, 0 skipped -[inst/misc/distrib/stk_distrib_student_pdf.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_student_pdf.m -***** assert (stk_isequal_tolrel ( ... - stk_distrib_student_pdf ([1; 3], [1; 2], [0 1], [1 10]), ... - [0.50 / pi ... % tpdf ((1 - 1) / 10, 1) - 0.10 / pi; ... % tpdf ((1 - 1) / 10, 1) / 10 - 1 / (11 * sqrt(11)) ... % tpdf ((3 - 0) / 1, 2) / 1 - 3.4320590294804165e-02 ... % tpdf ((3 - 1) / 10, 2) / 10 - ], eps)); -***** assert (isequal (stk_distrib_student_pdf ( inf, 1.0), 0.0)); -***** assert (isequal (stk_distrib_student_pdf (-inf, 1.0), 0.0)); -***** assert (isnan (stk_distrib_student_pdf ( nan, 1.0))); -4 tests, 4 passed, 0 known failure, 0 skipped [inst/misc/distrib/stk_distrib_normal_pdf.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_normal_pdf.m ***** assert (stk_isequal_tolrel (stk_distrib_normal_pdf ([1; 3], 1, [1 10]), ... @@ -10267,30 +10305,38 @@ ***** assert (isnan (stk_distrib_normal_pdf (nan))); ***** assert (isnan (stk_distrib_normal_pdf (0, 0, -1))); 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/misc/distrib/stk_distrib_normal_crps.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_normal_crps.m -***** assert (stk_isequal_tolabs (stk_distrib_normal_crps (0.0, 0.0, 0.0), 0.0)) -***** assert (stk_isequal_tolabs (stk_distrib_normal_crps (0.0, 0.0, 1.0), (sqrt(2) - 1)/sqrt(pi))) -***** shared n, x_obs, mu, sigma, crps, crps_exp - x_obs = [ 1.78; -2.29; -1.62; -5.89; 2.88; 0.65; 2.74; -3.42]; % observations - mu = [-0.31; -0.59; 1.48; -1.57; -0.05; -0.27; 1.05; 1.27]; % predictions - sigma = [ 2.76; 6.80; 1.63; 1.19; 4.98; 9.60; 5.85; 2.24]; % standard dev - n = size(x_obs, 1); - crps = stk_distrib_normal_crps (x_obs, mu, sigma); -***** assert (isequal (size (crps), [n, 1])) -***** assert (all (crps >= 0)) -***** assert (stk_isequal_tolabs (crps, stk_distrib_normal_crps(mu, x_obs, sigma))) -***** assert (stk_isequal_tolabs (stk_distrib_normal_crps (x_obs, mu, 0), abs (x_obs - mu))) - crps_ref = [ ... - 1.247856605928301 ... - 1.757798727719891 ... - 2.216236225997414 ... - 3.648696666764968 ... - 1.832355265287495 ... - 2.278618297947438 ... - 1.560544734359158 ... - 3.455697443411153 ]; - assert (stk_isequal_tolabs (crps, crps_ref, 1e-10)); +[inst/misc/distrib/stk_distrib_normal_ei.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_normal_ei.m +***** assert (stk_isequal_tolrel (stk_distrib_normal_ei (0.0), 1 / sqrt (2 * pi), eps)) +***** test % Decreasing as a function of z + ei = stk_distrib_normal_ei (linspace (-10, 10, 200)); + assert (all (diff (ei) < 0)) +***** shared M, mu, sigma, ei + M = randn (1, 10); + mu = randn (5, 1); + sigma = 1 + rand (1, 1, 7); + ei = stk_distrib_normal_ei (M, mu, sigma); +***** assert (isequal (size (ei), [5, 10, 7])) +***** assert (all (ei(:) >= 0)) +***** assert (isequal (ei, stk_distrib_normal_ei (M, mu, sigma, false))); +***** assert (isequal (ei, stk_distrib_normal_ei (-M, -mu, sigma, true))); +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/misc/distrib/stk_distrib_student_ei.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_student_ei.m +***** assert (stk_isequal_tolrel (stk_distrib_student_ei (0, 2), 1 / sqrt (2), eps)) +***** test % Decreasing as a function of z + ei = stk_distrib_student_ei (linspace (-10, 10, 200), 3.33); + assert (all (diff (ei) < 0)) +***** shared M, mu, sigma, ei, nu + M = randn (1, 10); + mu = randn (5, 1); + sigma = 1 + rand (1, 1, 7); + nu = 2; + ei = stk_distrib_student_ei (M, nu, mu, sigma); +***** assert (isequal (size (ei), [5, 10, 7])) +***** assert (all (ei(:) >= 0)) +***** assert (isequal (ei, stk_distrib_student_ei (M, nu, mu, sigma, false))); +***** assert (isequal (ei, stk_distrib_student_ei (-M, nu, -mu, sigma, true))); 6 tests, 6 passed, 0 known failure, 0 skipped [inst/misc/distrib/stk_distrib_bivnorm_cdf.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_bivnorm_cdf.m @@ -10359,6 +10405,19 @@ p = stk_distrib_bivnorm_cdf ([0 0], 0, 0, [1; 0], 1, 0); assert (isequal (p, [0.25; 0.5])); 12 tests, 12 passed, 0 known failure, 0 skipped +[inst/misc/distrib/stk_distrib_student_pdf.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_student_pdf.m +***** assert (stk_isequal_tolrel ( ... + stk_distrib_student_pdf ([1; 3], [1; 2], [0 1], [1 10]), ... + [0.50 / pi ... % tpdf ((1 - 1) / 10, 1) + 0.10 / pi; ... % tpdf ((1 - 1) / 10, 1) / 10 + 1 / (11 * sqrt(11)) ... % tpdf ((3 - 0) / 1, 2) / 1 + 3.4320590294804165e-02 ... % tpdf ((3 - 1) / 10, 2) / 10 + ], eps)); +***** assert (isequal (stk_distrib_student_pdf ( inf, 1.0), 0.0)); +***** assert (isequal (stk_distrib_student_pdf (-inf, 1.0), 0.0)); +***** assert (isnan (stk_distrib_student_pdf ( nan, 1.0))); +4 tests, 4 passed, 0 known failure, 0 skipped [inst/misc/distrib/stk_distrib_student_cdf.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_student_cdf.m ***** assert (stk_isequal_tolrel ( ... @@ -10379,145 +10438,268 @@ ***** assert (isequal (stk_distrib_student_cdf (-inf, 1), 0.0)); ***** assert (isnan (stk_distrib_student_cdf (nan, 1))); 6 tests, 6 passed, 0 known failure, 0 skipped -[inst/misc/distrib/stk_distrib_normal_ei.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_normal_ei.m -***** assert (stk_isequal_tolrel (stk_distrib_normal_ei (0.0), 1 / sqrt (2 * pi), eps)) -***** test % Decreasing as a function of z - ei = stk_distrib_normal_ei (linspace (-10, 10, 200)); - assert (all (diff (ei) < 0)) -***** shared M, mu, sigma, ei - M = randn (1, 10); - mu = randn (5, 1); - sigma = 1 + rand (1, 1, 7); - ei = stk_distrib_normal_ei (M, mu, sigma); -***** assert (isequal (size (ei), [5, 10, 7])) -***** assert (all (ei(:) >= 0)) -***** assert (isequal (ei, stk_distrib_normal_ei (M, mu, sigma, false))); -***** assert (isequal (ei, stk_distrib_normal_ei (-M, -mu, sigma, true))); +[inst/misc/distrib/stk_distrib_normal_crps.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_normal_crps.m +***** assert (stk_isequal_tolabs (stk_distrib_normal_crps (0.0, 0.0, 0.0), 0.0)) +***** assert (stk_isequal_tolabs (stk_distrib_normal_crps (0.0, 0.0, 1.0), (sqrt(2) - 1)/sqrt(pi))) +***** shared n, x_obs, mu, sigma, crps, crps_exp + x_obs = [ 1.78; -2.29; -1.62; -5.89; 2.88; 0.65; 2.74; -3.42]; % observations + mu = [-0.31; -0.59; 1.48; -1.57; -0.05; -0.27; 1.05; 1.27]; % predictions + sigma = [ 2.76; 6.80; 1.63; 1.19; 4.98; 9.60; 5.85; 2.24]; % standard dev + n = size(x_obs, 1); + crps = stk_distrib_normal_crps (x_obs, mu, sigma); +***** assert (isequal (size (crps), [n, 1])) +***** assert (all (crps >= 0)) +***** assert (stk_isequal_tolabs (crps, stk_distrib_normal_crps(mu, x_obs, sigma))) +***** assert (stk_isequal_tolabs (stk_distrib_normal_crps (x_obs, mu, 0), abs (x_obs - mu))) + crps_ref = [ ... + 1.247856605928301 ... + 1.757798727719891 ... + 2.216236225997414 ... + 3.648696666764968 ... + 1.832355265287495 ... + 2.278618297947438 ... + 1.560544734359158 ... + 3.455697443411153 ]; + assert (stk_isequal_tolabs (crps, crps_ref, 1e-10)); 6 tests, 6 passed, 0 known failure, 0 skipped -[inst/misc/design/stk_phipcrit.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/design/stk_phipcrit.m -***** shared x - x = [0, 0.2, 0.4, 0.6, 0.8, 1.0; - 0, 0.6, 0.8, 1.0, 0.2, 0.4]'; -***** assert (stk_isequal_tolabs ... - (stk_phipcrit (x, 10), 3.946317664423303, 1e-15)) -***** assert (stk_isequal_tolabs ... - (stk_phipcrit (x, 50), 3.614077252813102, 1e-15)); -***** assert (stk_isequal_tolabs ... - (stk_phipcrit (x, 100), 3.574589859827413, 1e-15)); -***** assert (stk_isequal_tolabs ... - (stk_phipcrit (x, 1e9), 1 / stk_mindist (x), 1e-8)); -***** assert (isequal (stk_phipcrit (ones (2)), Inf)); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/misc/design/stk_maxabscorr.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/design/stk_maxabscorr.m -***** assert (stk_isequal_tolabs (0.0, ... % Test on an OLHS(5) - stk_maxabscorr ([0.4 0.8 0 -0.4 -0.8; -0.8 0.4 0 0.8 -0.4]'))); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/dist/stk_dist.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_dist.m -***** error stk_dist(); -***** error stk_dist(0, 0, 0); -***** error stk_dist(0, 0, 0, 0); -***** error stk_dist(0, ones(1, 2)); -***** error stk_dist(eye(3), ones(1, 2)); -***** error stk_dist(ones(2, 1), zeros(2)); -***** shared x, y, z - x = zeros(11, 5); - y = zeros(13, 5); - z = ones(7, 5); -***** test - Dx = stk_dist(x); - assert(isequal(Dx, zeros(11))); -***** test - Dxx = stk_dist(x, x); - assert(isequal(Dxx, zeros(11))); -***** test - Dxy = stk_dist(x, y); - assert(isequal(Dxy, zeros(11, 13))); -***** test - Dzz = stk_dist(z, z); - assert(isequal(Dzz, zeros(7))); +[inst/misc/text/stk_sprintf_colvect.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/text/stk_sprintf_colvect.m +***** shared s +***** test s = stk_sprintf_colvect ([1 1e1], 6); +***** assert (isequal (s, [' 1'; '10'])) +***** test s = stk_sprintf_colvect ([1 1e3], 6); +***** assert (isequal (s, [' 1'; '1000'])) +***** test s = stk_sprintf_colvect ([1 1e5], 6); +***** assert (isequal (s, [' 1'; '100000'])) +***** test s = stk_sprintf_colvect ([1 1e6], 6); +***** assert (isequal (s, ['1e+00'; '1e+06'])) +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/misc/text/stk_disp_progress.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/text/stk_disp_progress.m +***** error stk_disp_progress ('toto ', 0, 1); +***** test stk_disp_progress ('toto ', 1, 1); +warning: implicit conversion from numeric to char +warning: called from + stk_disp_progress at line 53 column 1 + __test__ at line 2 column 3 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1718 column 31 + +toto +***** error stk_disp_progress ('toto ', 2, 1); ***** test - Dxz = stk_dist(x, z); - assert(stk_isequal_tolabs(Dxz, sqrt(5)*ones(11, 7))); + stk_disp_progress ('toto ', 1, 2); + stk_disp_progress ('toto ', 2, 2); +warning: implicit conversion from numeric to char +warning: called from + stk_disp_progress at line 53 column 1 + __test__ at line 3 column 2 + test at line 682 column 11 + /tmp/tmp.RY4F3ddEUf at line 1718 column 31 + +toto toto +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/misc/text/stk_sprintf_colvect_fixedpoint.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/text/stk_sprintf_colvect_fixedpoint.m +***** shared x, s + x = [1.2; 3.48]; +***** test s = stk_sprintf_colvect_fixedpoint(x, 1); +***** assert (isequal(s, ['1'; '3'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 2); +***** assert (isequal(s, ['1'; '3'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 3); +***** assert (isequal(s, ['1.2'; '3.5'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 4); +***** assert (isequal(s, ['1.20'; '3.48'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 5); +***** assert (isequal(s, ['1.20'; '3.48'])) +***** shared x, s + x = [1.2; -3.48]; +***** test s = stk_sprintf_colvect_fixedpoint(x, 1); +***** assert (isequal(s, ['#'; '#'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 2); +***** assert (isequal(s, [' 1'; '-3'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 3); +***** assert (isequal(s, [' 1'; '-3'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 4); +***** assert (isequal(s, [' 1.2'; '-3.5'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 5); +***** assert (isequal(s, [' 1.20'; '-3.48'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 6); +***** assert (isequal(s, [' 1.20'; '-3.48'])) +***** shared x, s + x = [0.2; 0.48]; +***** test s = stk_sprintf_colvect_fixedpoint(x, 1); +***** assert (isequal(s, ['0'; '0'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 2); +***** assert (isequal(s, ['0'; '0'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 3); +***** assert (isequal(s, ['0.2'; '0.5'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 4); +***** assert (isequal(s, ['0.20'; '0.48'])) +***** test s = stk_sprintf_colvect_fixedpoint(x, 5); +***** assert (isequal(s, ['0.20'; '0.48'])) +32 tests, 32 passed, 0 known failure, 0 skipped +[inst/misc/text/stk_sprintf_colvect_scientific.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/text/stk_sprintf_colvect_scientific.m +***** shared x, s + x = [1.2; -34567]; +***** test s = stk_sprintf_colvect_scientific(x, 1); +***** assert (isequal(s, ['#'; '#'])) +***** test s = stk_sprintf_colvect_scientific(x, 3); +***** assert (isequal(s, ['###'; '###'])) +***** test s = stk_sprintf_colvect_scientific(x, 5); +***** assert (isequal(s, ['#####'; '#####'])) +***** test s = stk_sprintf_colvect_scientific(x, 6); +***** assert (isequal(s, [' 1e+00'; '-3e+04'])) +***** test s = stk_sprintf_colvect_scientific(x, 7); +***** assert (isequal(s, [' 1e+00'; '-3e+04'])) +***** test s = stk_sprintf_colvect_scientific(x, 8); +***** assert (isequal(s, [' 1.2e+00'; '-3.5e+04'])) +***** test s = stk_sprintf_colvect_scientific(x, 9); +***** assert (isequal(s, [' 1.20e+00'; '-3.46e+04'])) +***** test s = stk_sprintf_colvect_scientific(x, 10); +***** assert (isequal(s, [' 1.200e+00'; '-3.457e+04'])) +***** test s = stk_sprintf_colvect_scientific(x, 11); +***** assert (isequal(s, [' 1.2000e+00'; '-3.4567e+04'])) +***** test s = stk_sprintf_colvect_scientific(x, 12); +***** assert (isequal(s, [' 1.2000e+00'; '-3.4567e+04'])) +***** shared x, s + x = [0.9; 0.91; 0.99; 0.999]; +***** test s = stk_sprintf_colvect_scientific (x, 4); +***** assert (isequal(s, ['####'; '####'; '####'; '####'])) +***** test s = stk_sprintf_colvect_scientific (x, 5); +***** assert (isequal(s, ['9e-01'; '9e-01'; '1e+00'; '1e+00'])) +***** test s = stk_sprintf_colvect_scientific (x, 6); +***** assert (isequal(s, ['9e-01'; '9e-01'; '1e+00'; '1e+00'])) +***** test s = stk_sprintf_colvect_scientific (x, 7); +***** assert (isequal(s, ['9.0e-01'; '9.1e-01'; '9.9e-01'; '1.0e+00'])) +***** test s = stk_sprintf_colvect_scientific (x, 8); +***** assert (isequal(s, ['9.00e-01'; '9.10e-01'; '9.90e-01'; '9.99e-01'])) +***** shared x, s + x = [0.9; -0.91; 0.99; 0.999]; +***** test s = stk_sprintf_colvect_scientific (x, 4); +***** assert (isequal(s, ['####'; '####'; '####'; '####'])) +***** test s = stk_sprintf_colvect_scientific (x, 5); +***** assert (isequal(s, ['#####'; '#####'; '#####'; '#####'])) +***** test s = stk_sprintf_colvect_scientific (x, 6); +***** assert (isequal(s, [' 9e-01'; '-9e-01'; ' 1e+00'; ' 1e+00'])) +***** test s = stk_sprintf_colvect_scientific (x, 7); +***** assert (isequal(s, [' 9e-01'; '-9e-01'; ' 1e+00'; ' 1e+00'])) +***** test s = stk_sprintf_colvect_scientific (x, 8); +***** assert (isequal(s, [' 9.0e-01'; '-9.1e-01'; ' 9.9e-01'; ' 1.0e+00'])) ***** test - x = randn(5,3); - y = randn(5,3); - D1 = stk_dist(x, y, true); % pairwise - D2 = stk_dist(x, y); - assert(stk_isequal_tolabs(D1, diag(D2))); + x = [1e6; -1e10; 1e-221]; + s = stk_sprintf_colvect_scientific(x, 10); + assert(isequal(s, [' 1e+006'; '-1e+010'; ' 1e-221'])); +41 tests, 41 passed, 0 known failure, 0 skipped +[inst/misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m +***** test stk_test_class ('stk_optim_fminsearch') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m +***** test stk_test_class ('stk_optim_fmincon') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/misc/optim/stk_minimize_boxconstrained.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/stk_minimize_boxconstrained.m +***** test % Call fmincon using function name + if stk_optim_isavailable ('fmincon') + assert (stk_optim_testmin_box ('fmincon')); + end +***** test % Call fmincon directly, using algorithm object + if stk_optim_isavailable ('fmincon') + algo = stk_optim_fmincon ('TolX', 1e-12, 'TolFun', 1e-12); + assert (stk_optim_testmin_box (algo)); + end +***** test % Call sqp using function name + if stk_optim_isavailable ('octavesqp') + assert (stk_optim_testmin_box ('octavesqp')); + end +***** test % Call sqp directly, using algorithm object + if stk_optim_isavailable ('octavesqp') + algo = stk_optim_octavesqp (); + assert (stk_optim_testmin_box (algo)); + end +***** error assert (stk_optim_testmin_box ('InexistentOptimizer')); +***** error assert (stk_optim_testmin_box (100)); +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/misc/optim/@stk_optim_optimizer_/stk_optim_optimizer_.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/@stk_optim_optimizer_/stk_optim_optimizer_.m +***** test stk_test_class ('stk_optim_optimizer_') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m +***** test stk_test_class ('stk_optim_octavesqp') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/misc/optim/stk_optim_testmin_box.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/stk_optim_testmin_box.m +***** shared algo + algo = stk_options_get ('stk_param_estim', 'minimize_box'); +***** error b = stk_optim_testmin_box (); +***** assert (stk_optim_testmin_box (algo)); +***** assert (~ stk_optim_testmin_box ('dudule')); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/misc/optim/stk_minimize_unconstrained.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/stk_minimize_unconstrained.m +***** test % Call fminsearch using function name + if stk_optim_isavailable ('fminsearch') + assert (stk_optim_testmin_unc ('fminsearch')); + end +***** test % Call fminsearch directly, using algorithm object + if stk_optim_isavailable ('fminsearch') + algo = stk_optim_fminsearch ('TolX', 1e-12, 'TolFun', 1e-12); + assert (stk_optim_testmin_unc (algo)); + end +***** test % Call sqp using function name + if stk_optim_isavailable ('octavesqp') + assert (stk_optim_testmin_unc ('octavesqp')); + end +***** test % Call sqp directly, using algorithm object + if stk_optim_isavailable ('octavesqp') + algo = stk_optim_octavesqp (); + assert (stk_optim_testmin_unc (algo)); + end +***** error assert (stk_optim_testmin_unc ('InexistentOptimizer')); +***** error assert (stk_optim_testmin_unc (100)); +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/misc/optim/stk_optim_testmin_unc.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/stk_optim_testmin_unc.m +***** shared algo + algo = stk_options_get ('stk_param_estim', 'minimize_unc'); +***** error b = stk_optim_testmin_unc (); +***** assert (stk_optim_testmin_unc (algo)); +***** assert (~ stk_optim_testmin_unc ('dudule')); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/misc/dist/stk_filldist_exact.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_filldist_exact.m ***** test - x = randn(5,3); - D1 = stk_dist(x, [], true); % pairwise - assert(stk_isequal_tolabs(D1, zeros(5, 1))); - D1 = stk_dist(x, x, true); % pairwise - assert(stk_isequal_tolabs(D1, zeros(5, 1))); -13 tests, 13 passed, 0 known failure, 0 skipped -[inst/misc/dist/stk_filldist.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_filldist.m -***** test %%% exact d = 3; x = rand(7, d); box = repmat([0; 1], 1, d); - fd1 = stk_filldist(x, box); - fd2 = stk_filldist(stk_dataframe(x), stk_dataframe(box)); - assert(stk_isequal_tolabs(fd1, fd2)); -***** test %%% discretized - d = 3; x = rand(7, d); y = rand(20, d); - fd1 = stk_filldist(x, y); - fd2 = stk_filldist(stk_dataframe(x), stk_dataframe(y)); + fd1 = stk_filldist_exact(x, box); + fd2 = stk_filldist_exact(stk_dataframe(x), stk_dataframe(box)); assert(stk_isequal_tolabs(fd1, fd2)); ***** test - n = 5; % must be bigger than 2 - for dim = 1:10, - x = rand(n, dim); - fd = stk_filldist(x, x); - assert(stk_isequal_tolabs(fd, 0.0)); - end -***** test %%% exact for dim = 1:6, x = 0.5 * ones(1, dim); - fd = stk_filldist(x); % [0; 1]^d is the default box - assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); - end -***** test %%% discretized - for dim = 1:6, - x = 0.5 * ones(1, dim); - y = stk_sampling_regulargrid(2^dim, dim); % [0; 1]^d is the default box - fd = stk_filldist(x, y); + fd = stk_filldist_exact(x); % [0; 1]^d is the default box assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); end ***** test for dim = [1 3 7], box = repmat([1; 2], 1, dim); x = 1 + 0.5 * ones(1, dim); - fd = stk_filldist(x, box); + fd = stk_filldist_exact(x, box); assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); end ***** test - dim = 3; - box = repmat([-1; 1], 1, dim); - x = stk_sampling_randunif(20, dim, box); - y = stk_sampling_regulargrid(3^dim, dim, box); - fd1 = stk_filldist(x, box); - fd2 = stk_filldist(x, y); - assert(fd1 >= fd2 - 10 * eps); -***** test %%% exact for dim = [1 3 7], x = zeros(1, dim); [fd, ymax] = stk_filldist_exact(x); assert(stk_isequal_tolabs(fd, sqrt(dim))); assert(stk_isequal_tolabs(ymax, ones(1, dim))); end -***** test %%% discretized - for dim = [1 3 7], - x = zeros(1, dim); - y = stk_sampling_regulargrid(3^dim, dim); - [fd, ymax] = stk_filldist(x, y); - assert(stk_isequal_tolabs(fd, sqrt(dim))); - assert(stk_isequal_tolabs(ymax, ones(1, dim))); - end -9 tests, 9 passed, 0 known failure, 0 skipped +4 tests, 4 passed, 0 known failure, 0 skipped [inst/misc/dist/stk_gpquadform.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_gpquadform.m ***** shared x, y, z, rx, ry, rz @@ -10582,6 +10764,58 @@ Qxz = stk_gpquadform(x, z, rx, rz); assert(stk_isequal_tolabs(Qxz, 5/8 * ones(11, 7))); 17 tests, 17 passed, 0 known failure, 0 skipped +[inst/misc/dist/stk_mindist.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_mindist.m +***** test + d = 3; x = rand(7, d); + md1 = stk_mindist(x); + md2 = stk_mindist(stk_dataframe(x)); + assert(stk_isequal_tolabs(md1, md2)); +***** test + for nc = [0 5 10], + x = zeros(0, nc); + d = stk_mindist(x); + assert(isempty(d)); + end +***** test + for nc = [0 5 10], + x = rand(1, nc); + d = stk_mindist(x); + assert(isempty(d)); + end +***** test + for nr = [2 5 10], + x = zeros(nr, 0); + d = stk_mindist(x); + assert(isequal(d, 0.0)); + end +***** test + + nrep = 20; + TOL_REL = 1e-15; + + for irep = 1:nrep, + + n = 2 + floor(rand * 10); + d = 1 + floor(rand * 10); + x = rand(n, d); + z = stk_mindist(x); + + assert(isequal(size(d), [1, 1])); + assert(~isnan(d)); + assert(~isinf(d)); + + % check the result + mindist = Inf; + for i = 1:(n-1), + for j = (i+1):n, + mindist = min(mindist, norm(x(i,:) - x(j,:))); + end + end + assert(abs(z - mindist) <= TOL_REL * mindist); + + end +5 tests, 5 passed, 0 known failure, 0 skipped [inst/misc/dist/stk_filldist_discretized.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_filldist_discretized.m ***** error stk_filldist_discretized(0.0) % incorrect nb of arguments @@ -10630,199 +10864,113 @@ assert(stk_isequal_tolabs(ymax, ones(1, dim))); end 9 tests, 9 passed, 0 known failure, 0 skipped -[inst/misc/dist/stk_filldist_exact.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_filldist_exact.m +[inst/misc/dist/stk_dist.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_dist.m +***** error stk_dist(); +***** error stk_dist(0, 0, 0); +***** error stk_dist(0, 0, 0, 0); +***** error stk_dist(0, ones(1, 2)); +***** error stk_dist(eye(3), ones(1, 2)); +***** error stk_dist(ones(2, 1), zeros(2)); +***** shared x, y, z + x = zeros(11, 5); + y = zeros(13, 5); + z = ones(7, 5); +***** test + Dx = stk_dist(x); + assert(isequal(Dx, zeros(11))); +***** test + Dxx = stk_dist(x, x); + assert(isequal(Dxx, zeros(11))); +***** test + Dxy = stk_dist(x, y); + assert(isequal(Dxy, zeros(11, 13))); +***** test + Dzz = stk_dist(z, z); + assert(isequal(Dzz, zeros(7))); +***** test + Dxz = stk_dist(x, z); + assert(stk_isequal_tolabs(Dxz, sqrt(5)*ones(11, 7))); +***** test + x = randn(5,3); + y = randn(5,3); + D1 = stk_dist(x, y, true); % pairwise + D2 = stk_dist(x, y); + assert(stk_isequal_tolabs(D1, diag(D2))); ***** test + x = randn(5,3); + D1 = stk_dist(x, [], true); % pairwise + assert(stk_isequal_tolabs(D1, zeros(5, 1))); + D1 = stk_dist(x, x, true); % pairwise + assert(stk_isequal_tolabs(D1, zeros(5, 1))); +13 tests, 13 passed, 0 known failure, 0 skipped +[inst/misc/dist/stk_filldist.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_filldist.m +***** test %%% exact d = 3; x = rand(7, d); box = repmat([0; 1], 1, d); - fd1 = stk_filldist_exact(x, box); - fd2 = stk_filldist_exact(stk_dataframe(x), stk_dataframe(box)); + fd1 = stk_filldist(x, box); + fd2 = stk_filldist(stk_dataframe(x), stk_dataframe(box)); + assert(stk_isequal_tolabs(fd1, fd2)); +***** test %%% discretized + d = 3; x = rand(7, d); y = rand(20, d); + fd1 = stk_filldist(x, y); + fd2 = stk_filldist(stk_dataframe(x), stk_dataframe(y)); assert(stk_isequal_tolabs(fd1, fd2)); ***** test + n = 5; % must be bigger than 2 + for dim = 1:10, + x = rand(n, dim); + fd = stk_filldist(x, x); + assert(stk_isequal_tolabs(fd, 0.0)); + end +***** test %%% exact for dim = 1:6, x = 0.5 * ones(1, dim); - fd = stk_filldist_exact(x); % [0; 1]^d is the default box + fd = stk_filldist(x); % [0; 1]^d is the default box + assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); + end +***** test %%% discretized + for dim = 1:6, + x = 0.5 * ones(1, dim); + y = stk_sampling_regulargrid(2^dim, dim); % [0; 1]^d is the default box + fd = stk_filldist(x, y); assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); end ***** test for dim = [1 3 7], box = repmat([1; 2], 1, dim); x = 1 + 0.5 * ones(1, dim); - fd = stk_filldist_exact(x, box); + fd = stk_filldist(x, box); assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); end ***** test + dim = 3; + box = repmat([-1; 1], 1, dim); + x = stk_sampling_randunif(20, dim, box); + y = stk_sampling_regulargrid(3^dim, dim, box); + fd1 = stk_filldist(x, box); + fd2 = stk_filldist(x, y); + assert(fd1 >= fd2 - 10 * eps); +***** test %%% exact for dim = [1 3 7], x = zeros(1, dim); [fd, ymax] = stk_filldist_exact(x); assert(stk_isequal_tolabs(fd, sqrt(dim))); assert(stk_isequal_tolabs(ymax, ones(1, dim))); end -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/misc/dist/stk_mindist.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_mindist.m -***** test - d = 3; x = rand(7, d); - md1 = stk_mindist(x); - md2 = stk_mindist(stk_dataframe(x)); - assert(stk_isequal_tolabs(md1, md2)); -***** test - for nc = [0 5 10], - x = zeros(0, nc); - d = stk_mindist(x); - assert(isempty(d)); - end -***** test - for nc = [0 5 10], - x = rand(1, nc); - d = stk_mindist(x); - assert(isempty(d)); - end -***** test - for nr = [2 5 10], - x = zeros(nr, 0); - d = stk_mindist(x); - assert(isequal(d, 0.0)); - end -***** test - - nrep = 20; - TOL_REL = 1e-15; - - for irep = 1:nrep, - - n = 2 + floor(rand * 10); - d = 1 + floor(rand * 10); - x = rand(n, d); - z = stk_mindist(x); - - assert(isequal(size(d), [1, 1])); - assert(~isnan(d)); - assert(~isinf(d)); - - % check the result - mindist = Inf; - for i = 1:(n-1), - for j = (i+1):n, - mindist = min(mindist, norm(x(i,:) - x(j,:))); - end - end - assert(abs(z - mindist) <= TOL_REL * mindist); - +***** test %%% discretized + for dim = [1 3 7], + x = zeros(1, dim); + y = stk_sampling_regulargrid(3^dim, dim); + [fd, ymax] = stk_filldist(x, y); + assert(stk_isequal_tolabs(fd, sqrt(dim))); + assert(stk_isequal_tolabs(ymax, ones(1, dim))); end -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/misc/test/stk_isequal_tolabs.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/test/stk_isequal_tolabs.m -***** shared r1, r2, a, b, tolabs - a = 1.01; b = 1.02; tolabs = 0.1; -***** error rr = stk_isequal_tolabs(); -***** error rr = stk_isequal_tolabs(a); -***** test r1 = stk_isequal_tolabs(a, b); -***** test r2 = stk_isequal_tolabs(a, b, tolabs); -***** test assert(~r1); -***** test assert(r2); -***** test - a = struct('u', []); b = struct('v', []); - assert(~ stk_isequal_tolabs(a, b)) -***** test - a = struct('u', 1.01); b = struct('u', 1.02); - assert(stk_isequal_tolabs(a, b, tolabs)) -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/misc/test/stk_isequal_tolrel.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/test/stk_isequal_tolrel.m -***** shared r1, r2, r3, a, b, tolrel - a = 1.01; b = 1.02; tolrel = 0.1; -***** error rr = stk_isequal_tolrel(); -***** error rr = stk_isequal_tolrel(a); -***** test r1 = stk_isequal_tolrel(a, b); -***** test r2 = stk_isequal_tolrel(a, b, tolrel); -***** test r3 = stk_isequal_tolrel(a, [b b]); -***** test assert (isequal (r1, false)); -***** test assert (isequal (r2, true)); -***** test assert (isequal (r3, false)); -***** test - a = struct('u', []); b = struct('v', []); - assert(~ stk_isequal_tolrel(a, b)) -***** test - a = struct('u', 1.01); b = struct('u', 1.02); - assert(stk_isequal_tolrel(a, b, tolrel)) -10 tests, 10 passed, 0 known failure, 0 skipped -[inst/misc/test/stk_test.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/test/stk_test.m -***** assert(isempty([])) % support for test assert shorthand -***** assert((1 + 1) == 2) -***** test a=1; -***** test assert(~exist('a')); -***** shared a % create a shared variable -***** test a = 3; % assign to a shared variable -***** test assert(a == 3); % variable should equal 3 in this second 'test' block -***** shared b, c % replace shared variables {'a'} --> {'b', 'c'} -***** test assert(~exist('a')); % a no longer exists -***** test assert(isempty(b)); % variables start off empty -***** shared a % recreate a shared variable that had been deleted -***** test assert (isempty(a)); % it is empty, even though it was equal to 3 before -***** shared a, b, c % creates three shared variables - a = 1; b = 2; c = 3; % give values to all variables, in the same block -***** assert(isequal([a, b, c], [1, 2, 3])); % test all of them together -***** test c=6; % update a value -***** test % show that the update sticks between blocks - assert(isequal([a, b, c], [1, 2, 6])); -***** shared % clear all shared variables -***** assert(~exist('a')) % show that they are cleared -***** error test % not enough input arguments -***** error test(1, 2, 3, 4) % too many input args -***** error garbage % usage on nonexistent function should be -***** error stt_test('test', 'bogus'); % undefined function error -***** error stk_test('test', 'bogus'); % error raised by stk_test itself -***** error stk_test(); -***** error stk_test('disp', 'verbose', [], 'extra arg !!!'); -***** error stk_test([]) -***** error stk_test(0.0) -***** error stk_test('stk_mindist', 0.0) -***** error stk_test('stk_mindist', 'dudule') -24 tests, 24 passed, 0 known failure, 0 skipped -[inst/misc/error/stk_error.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/error/stk_error.m -***** shared errmsg, mnemonic, badstack - errmsg = 'Go ahead, make my day.'; - mnemonic = 'ClintEastwood'; - badstack = 0; % not a valid stack structure -***** error stk_error(errmsg, mnemonic); -***** error stk_error (errmsg, mnemonic, badstack); -***** error id=STK:stk_error:InvalidArgument stk_error (errmsg, mnemonic, badstack); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/misc/pareto/stk_isdominated.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/pareto/stk_isdominated.m -***** test - A = [1 3 2]; - B = [0 0 0]; - [isdom, dpos] = stk_isdominated (A, B); - assert (isdom == 1); - assert (dpos == 1); -***** test - A = [1 3 2]; - B = [0 0 3]; - [isdom, dpos] = stk_isdominated (A, B); - assert (isdom == 0); - assert (dpos == 0); -***** test - A = [1 3 2]; - B = [0 0 0; 0 0 3]; - [isdom, dpos] = stk_isdominated (A, B); - assert (isdom == 1); - assert (dpos == 1); -***** test - A = [1 3 2]; - B = [0 0 3; 0 0 0]; - [isdom, dpos] = stk_isdominated (A, B); - assert (isdom == 1); - assert (dpos == 2); -***** test - A = [1 3 2; 1 0 1; -1 0 0; 1 3 2]; - B = [1 0 0; 0 0 3; 0 0 0]; - [isdom, dpos] = stk_isdominated (A, B); - assert (isequal (isdom, logical ([1; 1; 0; 1]))); - assert (isequal (dpos, [3; 3; 0; 3])); -5 tests, 5 passed, 0 known failure, 0 skipped +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/misc/parallel/@stk_parallel_engine_none/stk_parallel_engine_none.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/parallel/@stk_parallel_engine_none/stk_parallel_engine_none.m +***** test stk_test_class ('stk_parallel_engine_none') +1 test, 1 passed, 0 known failure, 0 skipped [inst/misc/pareto/stk_dominatedhv.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/pareto/stk_dominatedhv.m ***** error hv = stk_dominatedhv (); @@ -11038,215 +11186,59 @@ ***** assert (isequal (ndpos, [5; 3; 1])); ***** assert (isequal (drank, [0; 3; 0; 2; 0; 1; 2])); 12 tests, 12 passed, 0 known failure, 0 skipped -[inst/misc/optim/@stk_optim_optimizer_/stk_optim_optimizer_.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/@stk_optim_optimizer_/stk_optim_optimizer_.m -***** test stk_test_class ('stk_optim_optimizer_') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/optim/stk_optim_testmin_box.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/stk_optim_testmin_box.m -***** shared algo - algo = stk_options_get ('stk_param_estim', 'minimize_box'); -***** error b = stk_optim_testmin_box (); -***** assert (stk_optim_testmin_box (algo)); -***** assert (~ stk_optim_testmin_box ('dudule')); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/misc/optim/stk_minimize_unconstrained.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/stk_minimize_unconstrained.m -***** test % Call fminsearch using function name - if stk_optim_isavailable ('fminsearch') - assert (stk_optim_testmin_unc ('fminsearch')); - end -***** test % Call fminsearch directly, using algorithm object - if stk_optim_isavailable ('fminsearch') - algo = stk_optim_fminsearch ('TolX', 1e-12, 'TolFun', 1e-12); - assert (stk_optim_testmin_unc (algo)); - end -***** test % Call sqp using function name - if stk_optim_isavailable ('octavesqp') - assert (stk_optim_testmin_unc ('octavesqp')); - end -***** test % Call sqp directly, using algorithm object - if stk_optim_isavailable ('octavesqp') - algo = stk_optim_octavesqp (); - assert (stk_optim_testmin_unc (algo)); - end -***** error assert (stk_optim_testmin_unc ('InexistentOptimizer')); -***** error assert (stk_optim_testmin_unc (100)); -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/misc/optim/stk_optim_testmin_unc.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/stk_optim_testmin_unc.m -***** shared algo - algo = stk_options_get ('stk_param_estim', 'minimize_unc'); -***** error b = stk_optim_testmin_unc (); -***** assert (stk_optim_testmin_unc (algo)); -***** assert (~ stk_optim_testmin_unc ('dudule')); -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m -***** test stk_test_class ('stk_optim_fmincon') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m -***** test stk_test_class ('stk_optim_fminsearch') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/optim/stk_minimize_boxconstrained.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/stk_minimize_boxconstrained.m -***** test % Call fmincon using function name - if stk_optim_isavailable ('fmincon') - assert (stk_optim_testmin_box ('fmincon')); - end -***** test % Call fmincon directly, using algorithm object - if stk_optim_isavailable ('fmincon') - algo = stk_optim_fmincon ('TolX', 1e-12, 'TolFun', 1e-12); - assert (stk_optim_testmin_box (algo)); - end -***** test % Call sqp using function name - if stk_optim_isavailable ('octavesqp') - assert (stk_optim_testmin_box ('octavesqp')); - end -***** test % Call sqp directly, using algorithm object - if stk_optim_isavailable ('octavesqp') - algo = stk_optim_octavesqp (); - assert (stk_optim_testmin_box (algo)); - end -***** error assert (stk_optim_testmin_box ('InexistentOptimizer')); -***** error assert (stk_optim_testmin_box (100)); -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m -***** test stk_test_class ('stk_optim_octavesqp') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/text/stk_sprintf_colvect.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/text/stk_sprintf_colvect.m -***** shared s -***** test s = stk_sprintf_colvect ([1 1e1], 6); -***** assert (isequal (s, [' 1'; '10'])) -***** test s = stk_sprintf_colvect ([1 1e3], 6); -***** assert (isequal (s, [' 1'; '1000'])) -***** test s = stk_sprintf_colvect ([1 1e5], 6); -***** assert (isequal (s, [' 1'; '100000'])) -***** test s = stk_sprintf_colvect ([1 1e6], 6); -***** assert (isequal (s, ['1e+00'; '1e+06'])) -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/misc/text/stk_sprintf_colvect_scientific.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/text/stk_sprintf_colvect_scientific.m -***** shared x, s - x = [1.2; -34567]; -***** test s = stk_sprintf_colvect_scientific(x, 1); -***** assert (isequal(s, ['#'; '#'])) -***** test s = stk_sprintf_colvect_scientific(x, 3); -***** assert (isequal(s, ['###'; '###'])) -***** test s = stk_sprintf_colvect_scientific(x, 5); -***** assert (isequal(s, ['#####'; '#####'])) -***** test s = stk_sprintf_colvect_scientific(x, 6); -***** assert (isequal(s, [' 1e+00'; '-3e+04'])) -***** test s = stk_sprintf_colvect_scientific(x, 7); -***** assert (isequal(s, [' 1e+00'; '-3e+04'])) -***** test s = stk_sprintf_colvect_scientific(x, 8); -***** assert (isequal(s, [' 1.2e+00'; '-3.5e+04'])) -***** test s = stk_sprintf_colvect_scientific(x, 9); -***** assert (isequal(s, [' 1.20e+00'; '-3.46e+04'])) -***** test s = stk_sprintf_colvect_scientific(x, 10); -***** assert (isequal(s, [' 1.200e+00'; '-3.457e+04'])) -***** test s = stk_sprintf_colvect_scientific(x, 11); -***** assert (isequal(s, [' 1.2000e+00'; '-3.4567e+04'])) -***** test s = stk_sprintf_colvect_scientific(x, 12); -***** assert (isequal(s, [' 1.2000e+00'; '-3.4567e+04'])) -***** shared x, s - x = [0.9; 0.91; 0.99; 0.999]; -***** test s = stk_sprintf_colvect_scientific (x, 4); -***** assert (isequal(s, ['####'; '####'; '####'; '####'])) -***** test s = stk_sprintf_colvect_scientific (x, 5); -***** assert (isequal(s, ['9e-01'; '9e-01'; '1e+00'; '1e+00'])) -***** test s = stk_sprintf_colvect_scientific (x, 6); -***** assert (isequal(s, ['9e-01'; '9e-01'; '1e+00'; '1e+00'])) -***** test s = stk_sprintf_colvect_scientific (x, 7); -***** assert (isequal(s, ['9.0e-01'; '9.1e-01'; '9.9e-01'; '1.0e+00'])) -***** test s = stk_sprintf_colvect_scientific (x, 8); -***** assert (isequal(s, ['9.00e-01'; '9.10e-01'; '9.90e-01'; '9.99e-01'])) -***** shared x, s - x = [0.9; -0.91; 0.99; 0.999]; -***** test s = stk_sprintf_colvect_scientific (x, 4); -***** assert (isequal(s, ['####'; '####'; '####'; '####'])) -***** test s = stk_sprintf_colvect_scientific (x, 5); -***** assert (isequal(s, ['#####'; '#####'; '#####'; '#####'])) -***** test s = stk_sprintf_colvect_scientific (x, 6); -***** assert (isequal(s, [' 9e-01'; '-9e-01'; ' 1e+00'; ' 1e+00'])) -***** test s = stk_sprintf_colvect_scientific (x, 7); -***** assert (isequal(s, [' 9e-01'; '-9e-01'; ' 1e+00'; ' 1e+00'])) -***** test s = stk_sprintf_colvect_scientific (x, 8); -***** assert (isequal(s, [' 9.0e-01'; '-9.1e-01'; ' 9.9e-01'; ' 1.0e+00'])) +[inst/misc/pareto/stk_isdominated.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/pareto/stk_isdominated.m ***** test - x = [1e6; -1e10; 1e-221]; - s = stk_sprintf_colvect_scientific(x, 10); - assert(isequal(s, [' 1e+006'; '-1e+010'; ' 1e-221'])); -41 tests, 41 passed, 0 known failure, 0 skipped -[inst/misc/text/stk_disp_progress.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/text/stk_disp_progress.m -***** error stk_disp_progress ('toto ', 0, 1); -***** test stk_disp_progress ('toto ', 1, 1); -warning: implicit conversion from numeric to char -warning: called from - stk_disp_progress at line 53 column 1 - __test__ at line 2 column 3 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 1886 column 31 - -toto -***** error stk_disp_progress ('toto ', 2, 1); + A = [1 3 2]; + B = [0 0 0]; + [isdom, dpos] = stk_isdominated (A, B); + assert (isdom == 1); + assert (dpos == 1); ***** test - stk_disp_progress ('toto ', 1, 2); - stk_disp_progress ('toto ', 2, 2); -warning: implicit conversion from numeric to char -warning: called from - stk_disp_progress at line 53 column 1 - __test__ at line 3 column 2 - test at line 682 column 11 - /tmp/tmp.HScQcIRIlE at line 1886 column 31 - -toto toto -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/misc/text/stk_sprintf_colvect_fixedpoint.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/text/stk_sprintf_colvect_fixedpoint.m -***** shared x, s - x = [1.2; 3.48]; -***** test s = stk_sprintf_colvect_fixedpoint(x, 1); -***** assert (isequal(s, ['1'; '3'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 2); -***** assert (isequal(s, ['1'; '3'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 3); -***** assert (isequal(s, ['1.2'; '3.5'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 4); -***** assert (isequal(s, ['1.20'; '3.48'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 5); -***** assert (isequal(s, ['1.20'; '3.48'])) -***** shared x, s - x = [1.2; -3.48]; -***** test s = stk_sprintf_colvect_fixedpoint(x, 1); -***** assert (isequal(s, ['#'; '#'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 2); -***** assert (isequal(s, [' 1'; '-3'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 3); -***** assert (isequal(s, [' 1'; '-3'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 4); -***** assert (isequal(s, [' 1.2'; '-3.5'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 5); -***** assert (isequal(s, [' 1.20'; '-3.48'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 6); -***** assert (isequal(s, [' 1.20'; '-3.48'])) -***** shared x, s - x = [0.2; 0.48]; -***** test s = stk_sprintf_colvect_fixedpoint(x, 1); -***** assert (isequal(s, ['0'; '0'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 2); -***** assert (isequal(s, ['0'; '0'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 3); -***** assert (isequal(s, ['0.2'; '0.5'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 4); -***** assert (isequal(s, ['0.20'; '0.48'])) -***** test s = stk_sprintf_colvect_fixedpoint(x, 5); -***** assert (isequal(s, ['0.20'; '0.48'])) -32 tests, 32 passed, 0 known failure, 0 skipped + A = [1 3 2]; + B = [0 0 3]; + [isdom, dpos] = stk_isdominated (A, B); + assert (isdom == 0); + assert (dpos == 0); +***** test + A = [1 3 2]; + B = [0 0 0; 0 0 3]; + [isdom, dpos] = stk_isdominated (A, B); + assert (isdom == 1); + assert (dpos == 1); +***** test + A = [1 3 2]; + B = [0 0 3; 0 0 0]; + [isdom, dpos] = stk_isdominated (A, B); + assert (isdom == 1); + assert (dpos == 2); +***** test + A = [1 3 2; 1 0 1; -1 0 0; 1 3 2]; + B = [1 0 0; 0 0 3; 0 0 0]; + [isdom, dpos] = stk_isdominated (A, B); + assert (isequal (isdom, logical ([1; 1; 0; 1]))); + assert (isequal (dpos, [3; 3; 0; 3])); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/misc/design/stk_phipcrit.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/design/stk_phipcrit.m +***** shared x + x = [0, 0.2, 0.4, 0.6, 0.8, 1.0; + 0, 0.6, 0.8, 1.0, 0.2, 0.4]'; +***** assert (stk_isequal_tolabs ... + (stk_phipcrit (x, 10), 3.946317664423303, 1e-15)) +***** assert (stk_isequal_tolabs ... + (stk_phipcrit (x, 50), 3.614077252813102, 1e-15)); +***** assert (stk_isequal_tolabs ... + (stk_phipcrit (x, 100), 3.574589859827413, 1e-15)); +***** assert (stk_isequal_tolabs ... + (stk_phipcrit (x, 1e9), 1 / stk_mindist (x), 1e-8)); +***** assert (isequal (stk_phipcrit (ones (2)), Inf)); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/misc/design/stk_maxabscorr.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/design/stk_maxabscorr.m +***** assert (stk_isequal_tolabs (0.0, ... % Test on an OLHS(5) + stk_maxabscorr ([0.4 0.8 0 -0.4 -0.8; -0.8 0.4 0 0.8 -0.4]'))); +1 test, 1 passed, 0 known failure, 0 skipped Checking C++ files ... Done running the unit tests. Summary: 1558 tests, 1558 passed, 0 known failures, 0 skipped @@ -11272,8 +11264,8 @@ dpkg-gencontrol: warning: package octave-stk: substitution variable ${octave:Upstream-Description} unused, but is defined dh_md5sums -O--buildsystem=octave dh_builddeb -O--buildsystem=octave -dpkg-deb: building package 'octave-stk' in '../octave-stk_2.8.1-3_amd64.deb'. dpkg-deb: building package 'octave-stk-dbgsym' in '../octave-stk-dbgsym_2.8.1-3_amd64.deb'. +dpkg-deb: building package 'octave-stk' in '../octave-stk_2.8.1-3_amd64.deb'. dpkg-genbuildinfo --build=binary -O../octave-stk_2.8.1-3_amd64.buildinfo dpkg-genchanges --build=binary -O../octave-stk_2.8.1-3_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -11281,12 +11273,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/2120559/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/2120559/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/883036 and its subdirectories -I: Current time: Sat Sep 28 01:34:31 -12 2024 -I: pbuilder-time-stamp: 1727530471 +I: removing directory /srv/workspace/pbuilder/2120559 and its subdirectories +I: Current time: Sat Nov 1 10:07:01 +14 2025 +I: pbuilder-time-stamp: 1761941221