Diff of the two buildlogs: -- --- b1/build.log 2024-12-29 07:51:10.708575752 +0000 +++ b2/build.log 2024-12-29 07:58:37.316128917 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sat Jan 31 02:10:45 -12 2026 -I: pbuilder-time-stamp: 1769868645 +I: Current time: Sun Dec 29 21:51:15 +14 2024 +I: pbuilder-time-stamp: 1735458675 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -25,54 +25,86 @@ 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/112400/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/20066/tmp/hooks/D01_modify_environment starting +debug: Running on ionos2-i386. +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 Dec 29 07:51 /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/20066/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/20066/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='i386' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=22 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='i386' + 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]="37" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=i386 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=10 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=i686 + HOST_ARCH=i386 IFS=' ' - INVOCATION_ID='f327e8ee0b0f4fa9bb2c3ea16ca3a610' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - LD_LIBRARY_PATH='/usr/lib/libeatmydata' - LD_PRELOAD='libeatmydata.so' - 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='112400' - PS1='# ' - PS2='> ' + INVOCATION_ID=55fda0265084458992fede605f0d4a11 + LANG=C + LANGUAGE=de_CH:de + LC_ALL=C + LD_LIBRARY_PATH=/usr/lib/libeatmydata + LD_PRELOAD=libeatmydata.so + MACHTYPE=i686-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=20066 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.LTqckRNb/pbuilderrc_LlOL --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.LTqckRNb/b1 --logfile b1/build.log octave-stk_2.8.1-3.dsc' - SUDO_GID='112' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152: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.LTqckRNb/pbuilderrc_o9Xk --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.LTqckRNb/b2 --logfile b2/build.log octave-stk_2.8.1-3.dsc' + SUDO_GID=112 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos16-i386 6.1.0-28-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-22) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-28-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-22) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/112400/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/20066/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -643,7 +675,7 @@ Get: 531 http://deb.debian.org/debian unstable/main i386 gfortran i386 4:14.2.0-1 [1432 B] Get: 532 http://deb.debian.org/debian unstable/main i386 octave-dev i386 9.3.0-1 [1009 kB] Get: 533 http://deb.debian.org/debian unstable/main i386 dh-octave all 1.8.0 [22.7 kB] -Fetched 216 MB in 3s (67.5 MB/s) +Fetched 216 MB in 5s (43.8 MB/s) Preconfiguring packages ... 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 ... 19844 files and directories currently installed.) @@ -2828,7 +2860,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/20066/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/20066/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 @@ -2866,50 +2902,50 @@ make[1]: Entering directory '/build/reproducible-path/octave-stk-2.8.1/src' /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 +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_pairwise.c -o /tmp/oct-FP3Xbg.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG get_column_number.c -o /tmp/oct-Mv3Tc9.o /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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_matrixy.c -o /tmp/oct-RrVsk4.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_filldist_discr_mex.c -o /tmp/oct-I0Pg7B.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_pairwise.c -o /tmp/oct-IqChsh.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_matrixy.c -o /tmp/oct-nf2l84.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG get_column_number.c -o /tmp/oct-CWatF1.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_isdominated_mex.c -o /tmp/oct-B0JgR5.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_matrixy.c -o /tmp/oct-OdQ9l2.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_mindist_mex.c -o /tmp/oct-k4Ws92.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_filldist_discr_mex.c -o /tmp/oct-f2E3gs.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_matrixx.c -o /tmp/oct-o6eXVU.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_matrixy.c -o /tmp/oct-NyeNBz.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_isdominated_mex.c -o /tmp/oct-rkQcht.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_matrixx.c -o /tmp/oct-M2m7RL.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_pairwise.c -o /tmp/oct-3wG9ph.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_matrixx.c -o /tmp/oct-mQv7bk.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_paretofind_mex.c -o /tmp/oct-42zlWT.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_mindist_mex.c -o /tmp/oct-IkF8Ix.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_matrixx.c -o /tmp/oct-tJPMJG.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_pairwise.c -o /tmp/oct-9kYATq.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_sampling_vdc_rr2.c -o /tmp/oct-wraeAv.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_sampling_sobol_mex.c -o /tmp/oct-M2Uv9u.o +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_dist_matrixx__.mex /tmp/oct-o6eXVU.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_mindist_mex__.mex /tmp/oct-k4Ws92.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __get_column_number__.mex /tmp/oct-Mv3Tc9.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_gpquadform_pairwise__.mex /tmp/oct-3wG9ph.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_dist_matrixy__.mex /tmp/oct-RrVsk4.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_dist_pairwise__.mex /tmp/oct-FP3Xbg.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_gpquadform_matrixy__.mex /tmp/oct-nf2l84.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_gpquadform_matrixx__.mex /tmp/oct-M2m7RL.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_filldist_discr_mex__.mex /tmp/oct-I0Pg7B.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_sampling_vdc_rr2__.mex /tmp/oct-wraeAv.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_paretofind_mex__.mex /tmp/oct-42zlWT.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_sampling_sobol_mex__.mex /tmp/oct-M2Uv9u.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro /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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_paretofind_mex.c -o /tmp/oct-Akbqhp.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_sampling_vdc_rr2.c -o /tmp/oct-0574Uu.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_distrib_bivnorm0_cdf.c -o /tmp/oct-xVyYY9.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_sampling_sobol_mex.c -o /tmp/oct-UMyYx7.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dominatedhv_mex.c -o /tmp/oct-kKu7Ts.o -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_filldist_discr_mex__.mex /tmp/oct-f2E3gs.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_mindist_mex__.mex /tmp/oct-IkF8Ix.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_dist_matrixy__.mex /tmp/oct-OdQ9l2.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_gpquadform_pairwise__.mex /tmp/oct-9kYATq.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_dist_matrixx__.mex /tmp/oct-mQv7bk.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_dist_pairwise__.mex /tmp/oct-IqChsh.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_gpquadform_matrixx__.mex /tmp/oct-tJPMJG.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __get_column_number__.mex /tmp/oct-CWatF1.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_isdominated_mex__.mex /tmp/oct-rkQcht.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_paretofind_mex__.mex /tmp/oct-Akbqhp.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_gpquadform_matrixy__.mex /tmp/oct-NyeNBz.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_sampling_vdc_rr2__.mex /tmp/oct-0574Uu.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_sampling_sobol_mex__.mex /tmp/oct-UMyYx7.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_distrib_bivnorm0_cdf__.mex /tmp/oct-xVyYY9.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG wfg.c -o /tmp/oct-0LM61w.o -g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_dominatedhv_mex__.mex /tmp/oct-kKu7Ts.o /tmp/oct-0LM61w.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_distrib_bivnorm0_cdf.c -o /tmp/oct-XubXcf.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dominatedhv_mex.c -o /tmp/oct-sbFwQM.o +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_isdominated_mex__.mex /tmp/oct-B0JgR5.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_distrib_bivnorm0_cdf__.mex /tmp/oct-XubXcf.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.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -fexceptions -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG wfg.c -o /tmp/oct-PsBU6B.o +g++ -I/usr/include/octave-9.3.0/octave/.. -I/usr/include/octave-9.3.0/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-stk-2.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -o __stk_dominatedhv_mex__.mex /tmp/oct-sbFwQM.o /tmp/oct-PsBU6B.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/i686-pc-linux-gnu-api-v59 For information about changes from previous versions of the stk package, run 'news stk'. @@ -2918,1155 +2954,1694 @@ Checking package... Run the unit tests... Checking m files ... -[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/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 +[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/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/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 (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/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/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/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.KcqI54N01m at line 54 column 31 - n = 20; d = 1; - x_obs = stk_sampling_regulargrid (n, d, [0; 2*pi]); - z_obs = stk_feval (@sin, x_obs); - - lm_list = {stk_lm_null, stk_lm_constant, stk_lm_affine}; - - for j = 0:2 - for k = 1:(length (lm_list)) - - model = stk_model (@stk_materncov32_iso, d); - model.lm = lm_list{k}; - model.param = log ([1; 5]); - - switch j % test various scenarios for lognoisevariance - case 0 - model.lognoisevariance = -inf; - case 1 - model.lognoisevariance = 0; - case 2 - model.lognoisevariance = (1 + rand (n, 1)) * 1e-3; - end - - M_post = stk_model_gpposterior (model, x_obs, z_obs); - - [loo_pred, loo_res] = stk_predict_leaveoneout (M_post); - [direct_pred, direct_res] = stk_predict_leaveoneout_direct (M_post); - - assert (stk_isequal_tolrel (loo_pred, direct_pred)); - assert (stk_isequal_tolrel (loo_res, direct_res)); - - end - end +***** 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/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/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/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); - 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'); +[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'}))); 3 tests, 3 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); - z_obs = sin (x_obs); - x_prd = x0(idx_prd); +[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/isnan.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/isnan.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/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/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/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/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/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/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/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.KcqI54N01m at line 150 column 31 - M_prior = stk_model (@stk_materncov32_iso); - M_prior.param = log ([1.0; 2.1]); +***** 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/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/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/subsasgn.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/subsasgn.m +***** shared x, s, t, data + x = stk_dataframe (rand (3, 2)); + s = {'a'; 'b'; 'c'}; + t = {'xx' 'yy'}; +***** test + x.rownames = s; + assert (isequal (get (x, 'rownames'), s)) +***** test + x.colnames = t; + assert (isequal (get (x, 'rownames'), s)) + assert (isequal (get (x, 'colnames'), t)) +***** test + x.rownames{2} = 'dudule'; + assert (isequal (get (x, 'rownames'), {'a'; 'dudule'; 'c'})) + assert (isequal (get (x, 'colnames'), t)) +***** test + x.colnames{1} = 'martha'; + assert (isequal (get (x, 'rownames'), {'a'; 'dudule'; 'c'})) + assert (isequal (get (x, 'colnames'), {'martha' 'yy'})) +***** test + data = stk_dataframe (zeros(3, 2), {'x1' 'x2'}); + u = rand(3, 1); data.x2 = u; + assert (isequal (double (data), [zeros(3, 1) u])) +***** test + data = stk_dataframe (zeros (3, 2), {'x1' 'x2'}); + data.x2(3) = 27; + assert (isequal (double (data), [0 0; 0 0; 0 27])) +***** error data.toto = rand (3, 1); +***** shared x + x = stk_dataframe (reshape (1:12, 4, 3), {'u' 'v' 'w'}); +***** test + x(:, 2) = []; + assert (isequal (size (x), [4 2])) + assert (isequal (double (x), [1 9; 2 10; 3 11; 4 12])) + assert (isequal (get (x, 'colnames'), {'u' 'w'})) + assert (isempty (get (x, 'rownames'))) +***** test + x(2, :) = []; + assert (isequal (size (x), [3 2])) + assert (isequal (double (x), [1 9; 3 11; 4 12])) + assert (isempty (get (x, 'rownames'))) +***** test + x.rownames = {'a'; 'b'; 'c'}; + x(2, :) = []; + assert (isequal (size (x), [2 2])) + assert (isequal (double (x), [1 9; 4 12])) + assert (isequal (x.rownames, {'a'; 'c'})) +***** test % change one value with matrix-style indexing + x(1, 2) = 11; + assert (isequal (size (x), [2 2])) + assert (isequal (double (x), [1 11; 4 12])) +***** test % change one value with linear indexing + x(3) = 13; + assert (isequal (size (x), [2 2])) + assert (isequal (double (x), [1 13; 4 12])) +***** assert (isequal (double (x(:, :)), [1 13; 4 12])); +***** test % assignment to a variable that doesn't exist + A = stk_dataframe (7.1); + clear B; B(2) = A; + assert (strcmp (class (B), 'stk_dataframe')) + assert (isequal (B.data, [0 7.1])); +***** test % repmat + x = stk_dataframe (1); + y = repmat (x, 2, 3); + assert (isa (y, 'stk_dataframe')); + assert (isequal (y.data, ones (2, 3))); +***** test + x(:, :) = []; + assert (isempty (x)); +***** test % Delete the only row of a one-row dataframe + y1 = stk_dataframe ([1.2 3.33], {'mean', 'var'}); + y1(1, :) = []; % Remove the only row of data + assert (isequal (size (y1), [0 2])) + assert (isequal (y1.colnames, {'mean', 'var'})) + y11 = get (y1, 'mean'); + assert (isempty (y11)); +***** error x{1} = 2; +***** error x(1, 2) = []; +***** error x(1, 2).a = 3; +***** shared x + x = stk_dataframe((1:5)'); +***** test x(2) = 0; assert (isequal (double (x), [1; 0; 3; 4; 5])); +***** test x(3) = []; assert (isequal (double (x), [1; 0; 4; 5])); +***** test x(3, 1) = 0; assert (isequal(double(x), [1; 0; 0; 5])); +***** error x(3, 1, 1) = 297; +***** test % create a new row and a new column through subsasgn() + x = stk_dataframe (rand (5, 2)); x(6, 3) = 7; + assert(isequal(size(x), [6, 3])); +***** test + x = stk_dataframe ([]); + x.colnames{2} = 'v'; + x.rownames{2} = 'b'; + assert (isequal (x.rownames, {''; 'b'})); + assert (isequal (x.colnames, {'' 'v'})); + assert (isequal (size (x.data), [2 2]) && (all (isnan (x.data(:))))) +***** shared x + x = stk_dataframe (reshape (1:12, 4, 3), {'u' 'v' 'w'}); +***** test % change one column using ':', plain numeric argument + y = [0; 9; 0; 9]; + z = x; z(:, 2) = y; + assert (isequal (z(:, 1), x(:, 1))); + assert (isequal (z(:, 2).data, y)); +***** test % change one column using ':', skt_dataframe argument + y = stk_dataframe ([0; 9; 0; 9], {'y'}); + z = x; z(:, 2) = y; + assert (isequal (z(:, 1), x(:, 1))); + assert (isequal (z(:, 2), y)); +***** shared x + x = stk_dataframe (reshape (1:12, 4, 3), [], {'a'; 'b'; 'c'; 'd'}); +***** test % change one row using ':', plain numeric argument + y = [7 7 7]; + z = x; z(3, :) = y; + assert (isequal (z(1, :), x(1, :))); + assert (isequal (z(3, :).data, y)); +***** test % change one row using ':', skt_dataframe argument + y = stk_dataframe ([7 7 7], [], {'y'}); + z = x; z(3, :) = y; + assert (isequal (z(1, :), x(1, :))); + assert (isequal (z(3, :), y)); +***** shared x + x = stk_dataframe (zeros (2), {'u' 'v'}); +***** test % first column + x(1:2) = 1; + y = stk_dataframe ([1 0; 1 0], {'u' 'v'}); + assert (isequal (x, y)); +***** test % one more element + x(1:3) = 2; + y = stk_dataframe ([2 2; 2 0], {'u' 'v'}); + assert (isequal (x, y)); +***** error % too many elements + x(1:5) = 3; +***** shared x + x = stk_dataframe (randn (3, 3)); +***** test x.colnames{2} = 'y'; +***** assert (isequal (x.colnames, {'' 'y' ''})); +***** test x.rownames{2} = 'b'; +***** assert (isequal (x.rownames, {''; 'b'; ''})); +37 tests, 37 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/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/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/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 = 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/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/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/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/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/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/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/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/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); +No entry for terminal type "unknown"; +using dumb terminal settings. +warning: using the gnuplot graphics toolkit is discouraged - 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/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); - 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'); +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/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); +[inst/arrays/@stk_dataframe/stk_boundingbox.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_boundingbox.m +***** shared x, y, cn + cn = {'a', 'b', 'c'}; + x = stk_dataframe ([0 3 2; 1 4 1; 7 0 2], cn); +***** error y = stk_boundingbox (); +***** 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/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/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/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/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/mtimes.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mtimes.m +***** shared x, y, z, w - 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); + 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/cos.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cos.m +***** test + 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/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/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'); +[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/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 - n = 15; d = 4; - model = stk_model (@stk_materncov_aniso, d); - x = stk_sampling_randunif (n, d); - model = rmfield (model, 'lm'); % Test the old .order approach -***** error P = stk_ortho_func (); -***** error P = stk_ortho_func (model); -***** test P = stk_ortho_func (model, x); +[inst/arrays/@stk_dataframe/cosd.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cosd.m ***** test - model.order = -1; P = stk_ortho_func (model, x); - assert (isequal (size (P), [n, 0])); + 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/bsxfun.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/bsxfun.m +***** shared x1, x2, data1, data2 + x1 = rand (3, 2); data1 = stk_dataframe (x1); + x2 = rand (3, 2); data2 = stk_dataframe (x2); ***** test - model.order = 0; P = stk_ortho_func (model, x); - assert (isequal (size (P), [n, 1])); + z = bsxfun (@plus, data1, x2); + assert (isa (z, 'stk_dataframe') && isequal (double (z), x1 + x2)) ***** test - model.order = 1; P = stk_ortho_func (model, x); - assert (isequal (size (P), [n, d + 1])); + z = bsxfun (@plus, x1, data2); + assert (isa (z, 'stk_dataframe') && isequal (double (z), x1 + x2)) ***** test - model.order = 2; P = stk_ortho_func (model, x); - assert (isequal (size (P), [n, 1 + d * (d + 3) / 2])); + z = bsxfun (@plus, data1, data2); + assert (isa (z, 'stk_dataframe') && isequal (double (z), x1 + x2)) +***** shared x, y + x = stk_dataframe (randn (2), {'x1', 'x2'}, {'a'; 'b'}); + y = stk_dataframe (randn (2), {'y1', 'y2'}, {'c'; 'd'}); +***** test z = x + y; + assert (isequal (z.colnames, x.colnames)); + assert (isequal (z.rownames, x.rownames)); +***** test z = y + x; + 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/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/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/expm1.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/expm1.m ***** test - model.order = 3; P = stk_ortho_func (model, x); - assert (isequal (size (P), [n, 1 + d * (11 + d * (6 + d)) / 6])); + 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/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/stk_dataframe.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_dataframe.m +***** test stk_test_class ('stk_dataframe') +***** test % default constructor + x = stk_dataframe (); + assert (isa (x, 'stk_dataframe') && isequal (size (x), [0 0])) +***** test + y = stk_dataframe (rand (3, 2)); + assert (isa (y, 'stk_dataframe') && isequal (size (y), [3 2])) +***** test + y = stk_dataframe (rand (3, 2), {'x', 'y'}); + assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) + assert (isequal (y.colnames, {'x' 'y'})) +***** test + y = stk_dataframe (rand (3, 2), {'x', 'y'}, {'a', 'b', 'c'}); + assert (isa (y, 'stk_dataframe') && isequal (size (y), [3 2])) + assert (isequal (y.colnames, {'x' 'y'})) + assert (isequal (y.rownames, {'a'; 'b'; 'c'})) +***** test + x = stk_dataframe (rand (3, 2)); + y = stk_dataframe (x); + assert (isa (y, 'stk_dataframe') && isequal (size (y), [3 2])) ***** error - model.order = 4; P = stk_ortho_func (model, x); - % model.order > 3 is not allowed -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/model/prior_struct/stk_covmat_noise.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/prior_struct/stk_covmat_noise.m -***** shared model, model2, x1, x2, n1, n2, d, Ka, Kb, Kc, Pa, Pb, Pc, P1, P2, P3, K1, K2, K3 - n1 = 20; n2 = 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); - x1 = stk_sampling_randunif (n1, d); - x2 = stk_sampling_randunif (n2, d); -***** error [KK, PP] = stk_covmat_noise (); -***** error [KK, PP] = stk_covmat_noise (model); -***** test [Ka, Pa] = stk_covmat_noise (model, x1); % (1) -***** test [K1, P1] = stk_covmat_noise (model, x1, []); -***** test [K2, P2] = stk_covmat_noise (model, x1, [], -1); -***** test [K3, P3] = stk_covmat_noise (model, x1, [], -1, false); -***** assert (isequal (size (Ka), [n1 n1])); -***** assert (isequal (size (Pa), [n1 0])); -***** assert (isequal (P1, Pa) && (isequal (K1, Ka))) -***** assert (isequal (P2, Pa) && (isequal (K2, Ka))) -***** assert (isequal (P3, Pa) && (isequal (K3, Ka))) -***** test [Kb, Pb] = stk_covmat_noise (model, x1, x1); % (2) -***** test [K1, P1] = stk_covmat_noise (model, x1, x1, -1); -***** test [K2, P2] = stk_covmat_noise (model, x1, x1, -1, false); -***** assert (isequal (size (Kb), [n1 n1])); -***** assert (isequal (size (Pb), [n1 0])); -***** assert (isequal (P1, Pb) && (isequal (K1, Kb))) -***** assert (isequal (P2, Pb) && (isequal (K2, Kb))) -***** test [Kc, Pc] = stk_covmat_noise (model, x1, x2); % (3) -***** test [K1, P1] = stk_covmat_noise (model, x1, x2, -1); -***** test [K2, P2] = stk_covmat_noise (model, x1, x2, -1, false); -***** assert (isequal (size (Kc), [n1 n2])); -***** assert (isequal (size (Pc), [n1 0])); -***** assert (isequal (P1, Pc) && (isequal (K1, Kc))) -***** assert (isequal (P2, Pc) && (isequal (K2, Kc))) -***** assert (isequal (Kb, Ka)); -***** test [Ka, Pa] = stk_covmat_noise (model2, x1); % (1') -***** test [Kb, Pb] = stk_covmat_noise (model2, x1, x1); % (2') -***** error assert (isequal (Kb, Ka)); -***** assert (isequal (Pa, Pb)); -***** assert (isequal (Pa, Pc)); -31 tests, 31 passed, 0 known failure, 0 skipped -[inst/model/prior_struct/stk_model.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/prior_struct/stk_model.m -***** test model = stk_model (); -***** test model = stk_model (@stk_expcov_iso); -***** test model = stk_model (@stk_expcov_iso, 1); -***** test model = stk_model (@stk_expcov_iso, 3); -***** test model = stk_model (@stk_expcov_aniso); -***** test model = stk_model (@stk_expcov_aniso, 1); -***** test model = stk_model (@stk_expcov_aniso, 3); -***** test model = stk_model (@stk_materncov_iso); -***** test model = stk_model (@stk_materncov_iso, 1); -***** test model = stk_model (@stk_materncov_iso, 3); -***** test model = stk_model (@stk_materncov_aniso); -***** test model = stk_model (@stk_materncov_aniso, 1); -***** test model = stk_model (@stk_materncov_aniso, 3); -***** test model = stk_model (@stk_materncov32_iso); -***** test model = stk_model (@stk_materncov32_iso, 1); -***** test model = stk_model (@stk_materncov32_iso, 3); -***** test model = stk_model (@stk_materncov32_aniso); -***** test model = stk_model (@stk_materncov32_aniso, 1); -***** test model = stk_model (@stk_materncov32_aniso, 3); -***** test model = stk_model (@stk_materncov52_iso); -***** test model = stk_model (@stk_materncov52_iso, 1); -***** test model = stk_model (@stk_materncov52_iso, 3); -***** test model = stk_model (@stk_materncov52_aniso); -***** test model = stk_model (@stk_materncov52_aniso, 1); -***** test model = stk_model (@stk_materncov52_aniso, 3); -***** test model = stk_model (@stk_gausscov_iso); -***** test model = stk_model (@stk_gausscov_iso, 1); -***** test model = stk_model (@stk_gausscov_iso, 3); -***** test model = stk_model (@stk_gausscov_aniso); -***** test model = stk_model (@stk_gausscov_aniso, 1); -***** test model = stk_model (@stk_gausscov_aniso, 3); -***** test model = stk_model (@stk_sphcov_iso); -***** test model = stk_model (@stk_sphcov_iso, 1); -***** test model = stk_model (@stk_sphcov_iso, 3); -***** test model = stk_model (@stk_sphcov_aniso); -***** test model = stk_model (@stk_sphcov_aniso, 1); -***** test model = stk_model (@stk_sphcov_aniso, 3); -37 tests, 37 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_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_model_update.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/core/stk_model_update.m + x = stk_dataframe (rand (3, 2)); + y = stk_dataframe (x, pi); +***** error + x = stk_dataframe (rand (3, 2)); + y = stk_dataframe (x, {}, pi); ***** 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)) + x = stk_dataframe (rand (3, 2)); + y = stk_dataframe (x, {'x' 'y'}); + assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) + assert (isequal (y.colnames, {'x' 'y'})) +***** test + x = stk_dataframe (rand (3, 2)); + y = stk_dataframe (x, {'x' 'y'}, {'a', 'b', 'c'}); + assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) + assert (isequal (y.colnames, {'x' 'y'})) + assert (isequal (y.rownames, {'a'; 'b'; 'c'})) +***** test + x = stk_dataframe (rand (3, 2), {'x' 'y'}); + y = stk_dataframe (x, [], {'a', 'b', 'c'}); + assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) + assert (isequal (y.colnames, {'x' 'y'})) + assert (isequal (y.rownames, {'a'; 'b'; 'c'})) +***** test + x = stk_dataframe (rand (3, 2), {'x' 'y'}); + y = stk_dataframe (x, {}, {'a', 'b', 'c'}); + assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) + assert (isequal (y.colnames, {})) + assert (isequal (y.rownames, {'a'; 'b'; 'c'})) +***** test + x = stk_factorialdesign ({1:3, 1:2}, {'x' 'y'}); + y = stk_dataframe (x, [], {'a' 'b' 'c' 'd' 'e' 'f'}); + assert (isa (y, 'stk_dataframe') && isequal (size (y), [6 2])) + assert (isequal (y.colnames, {'x' 'y'})) + assert (isequal (y.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'})) +***** test + x = stk_factorialdesign ({1:3, 1:2}, {}, {'a' 'b' 'c' 'd' 'e' 'f'}); + y = stk_dataframe (x, {'x' 'y'}); + assert (isa (y, 'stk_dataframe') && isequal (size (y), [6 2])) + assert (isequal (y.colnames, {'x' 'y'})) + assert (isequal (y.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'})) +***** test + x = stk_factorialdesign ({1:3, 1:2}, {}, {'a' 'b' 'c' 'd' 'e' 'f'}); + y = stk_dataframe (x, {'x' 'y'}, []); + assert (isa (y, 'stk_dataframe') && isequal (size (y), [6 2])) + assert (isequal (y.colnames, {'x' 'y'})) + assert (isequal (y.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'})) +***** test + x = stk_factorialdesign ({1:3, 1:2}, {'x' 'y'}, {'a' 'b' 'c' 'd' 'e' 'f'}); + y = stk_dataframe (x); + assert (isa (y, 'stk_dataframe') && isequal (size (y), [6 2])) + assert (isequal (y.colnames, {'x' 'y'})) + assert (isequal (y.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'})) +***** error + x = stk_factorialdesign ({1:3, 1:2}); + y = stk_dataframe (x, pi); +***** error + x = stk_factorialdesign ({1:3, 1:2}); + y = stk_dataframe (x, {}, pi); +***** test + x = stk_dataframe ([], {'a', 'b'}); + assert (isequal (size (x), [0 2])) + assert (isequal (x.colnames, {'a' 'b'})); + assert (isequal (x.rownames, {})); +***** test + x = stk_dataframe ([], {'a', 'b'}, {'toto'}); + assert (isequal (size (x), [1 2])) + assert (isequal (x.colnames, {'a' 'b'})); + assert (isequal (x.rownames, {'toto'})); +***** shared x +***** test + x = stk_dataframe (randn (10, 1), 'NOx'); + assert (isequal (x.colnames, {'NOx'})); +***** test + y = stk_dataframe (x, 'toto'); + assert (isequal (y.colnames, {'toto'})); +***** test + x = stk_dataframe (randn (1, 2), {}, 'aaa'); + assert (isequal (x.rownames, {'aaa'})); +***** test + y = stk_dataframe (x, {}, 'tata'); + assert (isequal (y.rownames, {'tata'})); +24 tests, 24 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(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/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') +[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/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 +[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))); - model.lognoisevariance = (1 + rand (n, 1)) * 1e-6; - [loo_pred, loo_res] = stk_predict_leaveoneout (model, x_obs, z_obs); + = <3x2 stk_dataframe array> - assert (isequal (size (loo_pred), [n 2])); - assert (isequal (loo_pred.colnames, {'mean', 'var'})); - assert (all (isfinite (loo_pred(:)))); + : -------- -------- + * : 0.914584 0.173208 + * : 0.548676 0.269180 + * : 0.196082 0.638439 - assert (isequal (size (loo_res), [n 2])); - assert (isequal (loo_res.colnames, {'residuals', 'norm_res'})); - assert (all (isfinite (loo_res(:)))); +1 test, 1 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/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 (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/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_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); +[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)); +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/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])) +[inst/arrays/@stk_dataframe/reshape.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/reshape.m ***** 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)); + 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/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/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/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/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.218775 0.701493 + * : 0.189076 0.682650 + * : 0.184361 0.822047 +***** test format long; disp (x); + : ---------------- ---------------- + * : 0.21877483780076 0.70149324172765 + * : 0.18907585706241 0.68264969623390 + * : 0.18436111403077 0.82204698256243 +***** test format short; disp (x); format (fmt); + : -------- -------- + * : 0.218775 0.701493 + * : 0.189076 0.682650 + * : 0.184361 0.822047 +***** 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/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_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/arrays/@stk_dataframe/abs.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/abs.m ***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_regulargrid (n, dim, box); - assert (isequal (x.colnames, cn)); + 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/subsref.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/subsref.m +***** shared x, s, t, data + x = stk_dataframe(rand(3, 2)); + s = {'a'; 'b'; 'c'}; + t = {'xx' 'yy'}; ***** 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 + x = set(x, 'rownames', s); + assert (isequal (x.rownames, s)) + assert (isequal (x.rownames{2}, 'b')) ***** 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_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_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_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_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, {})); + x = set(x, 'colnames', t); + assert (isequal (x.rownames, s)) + assert (isequal (x.colnames, t)) + assert (isequal (x.colnames{2}, 'yy')) +***** shared u, data + u = rand(3, 2); + data = stk_dataframe(u, {'x1', 'x2'}); +***** assert (isequal (data.x2, u(:, 2))) +***** assert (data.x2(3) == u(3, 2)) +***** error t = data.toto; +***** error t = data(1, 1).zzz; % illegal multilevel indexing +***** error t = data(1, 1, 1); % too many indices +***** error t = data{1}; % curly braces not allowed +***** test % select rows and columns + x = stk_dataframe (reshape (1:15, 5, 3), {'u' 'v' 'w'}); + assert (isequal (x([3 5], 2), stk_dataframe ([8; 10], {'v'}))); +***** shared u, data + u = rand(3, 1); data = stk_dataframe(u, {'x'}); +***** assert (isequal (data.x, u)) +***** assert (isequal (double (data), u)) +***** assert (isequal (double (data(2)), u(2))) +***** assert (isequal (double (data(3, 1)), u(3))) +***** error t = data(1, 1, 1); % too many indices ***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_randunif (n, dim, box); - assert (isequal (x.colnames, cn)); + x = stk_dataframe (randn (2, 2), {'u' 'v'}); + y = x ([], :); + assert (isa (y, 'stk_dataframe')); + assert (isequal (size (y), [0 2])); + assert (isequal (y.colnames, {'u' 'v'})); ***** 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 + x = stk_dataframe (randn (2, 2), [], {'a' 'b'}); + y = x (:, []); + assert (isa (y, 'stk_dataframe')); + 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/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/sort.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sort.m +***** shared x, y + x = stk_dataframe ([3; 2; 1], {}, {'a', 'b', 'c'}); + y = sort (x); +***** assert (strcmp (class (y), 'stk_dataframe')) +***** assert (isequal (y.data, [1; 2; 3])) +***** assert (isequal (y.rownames, {'c'; 'b'; 'a'})) +***** error y = sort (x, []); +***** assert (isequal (sort (x, 1), y)) +***** assert (isequal (sort (x, 2), x)) +***** error sort (x, 3) +***** error y = sort (x, [], 'ascend'); +***** assert (isequal (sort (x, 1, 'ascend'), y)) +***** assert (isequal (sort (x, 2, 'ascend'), x)) +***** error y = sort (x, 3, 'ascend'); +***** error y = sort (x, [], 'descend'); +***** assert (isequal (sort (x, 1, 'descend'), x)) +***** 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/quantile.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/quantile.m +***** shared x1, df1, p + x1 = rand (9, 3); + df1 = stk_dataframe (x1, {'a', 'b', 'c'}); + p = 0.95; +***** assert (isequal (quantile (df1, p), quantile (x1, p))) +***** 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/log.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log.m +***** test + 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/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/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.345465 0.465011 + * : 0.000487 0.308555 + * : 0.907335 0.002875 +***** test format long; disp (x); + : ---------------- ---------------- + * : 0.34546541221719 0.46501113264487 + * : 0.00048709040669 0.30855528135266 + * : 0.90733464559984 0.00287525974948 +***** test format short; disp (x); format (fmt); + : -------- -------- + * : 0.345465 0.465011 + * : 0.000487 0.308555 + * : 0.907335 0.002875 +***** 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/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/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/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_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 +[inst/arrays/@stk_dataframe/log2.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log2.m +***** test + 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/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 = double(x); + assert (strcmp(class(v), 'double') && isequal(v, u)) +***** test + u = (rand(4, 3) < 0.5); + x = stk_dataframe(u); + v = double(x); + assert (strcmp(class(v), 'double') && isequal(v, double(u))) +***** test + 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/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/mean.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mean.m +***** shared x1, df1 + x1 = rand(9, 3); + df1 = stk_dataframe(x1, {'a', 'b', 'c'}); +***** assert (isequal (mean(df1), mean(x1))) +***** 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 +***** test + 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/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/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 = log10 (x); + assert (strcmp (class (v), class (u)) && isequal (v, log10 (u))) +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/ndgrid.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/ndgrid.m +***** shared data + data = stk_factorialdesign ({[0 1], [5 6 7]}); +***** test % nargout = 0 + ndgrid (data); + assert (isequal (ans, [0 0 0; 1 1 1])); +***** test % nargout = 1 + x = ndgrid (data); + assert (isequal (x, [0 0 0; 1 1 1])); +***** test % nargout = 2 + [x, y] = ndgrid (data); + assert (isequal ({x, y}, {[0 0 0; 1 1 1], [5 6 7; 5 6 7]})); +***** error % nargout = 3 + [x, y, z] = ndgrid (data); +***** test + data = stk_factorialdesign ({[], []}); + [x, y] = ndgrid (data); + assert (isequal ({x, y}, {[], []})); +***** test + data = stk_factorialdesign ({[1:3]}); + x = ndgrid (data); + assert (isequal (x, [1; 2; 3])); +6 tests, 6 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_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/@stk_factorialdesign/ismember.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/ismember.m +***** shared A, B, BB, b -F = -| -| model: -- (not instantiated) -| reference_grid: -- (use current evaluation points) -| + i_max = 10; n = 100; d = 5; -***** 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)) + A = randi (i_max, n, d); -F = -| -| model: -- (not instantiated) -| reference_grid: <5x1 double array> -| + levels = repmat ({1:i_max}, 1, d); + levels{4} = 1:2:i_max; + B = stk_factorialdesign (levels); -***** 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) + 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/uminus.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/uminus.m +***** test + x = stk_factorialdesign ({1:3, 1:2}); + y = stk_factorialdesign ({-(1:3), -(1:2)}); + assert (isequal (-x, y)) +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/stk_factorialdesign.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_factorialdesign.m +***** test stk_test_class ('stk_factorialdesign') +***** test % constructor with two factors + column names + x = stk_factorialdesign ({[0 1], [1 2 3]}, {'a', 'b'}); + assert (isequal(x.colnames, {'a', 'b'})); + assert (isequal(get (x, 'colnames'), {'a', 'b'})); +***** error stk_factorialdesign ('bouh'); +***** error stk_factorialdesign ({{'a' 'b'}}); +***** shared x, fmt + fmt = stk_disp_getformat (); + x = stk_sampling_regulargrid (3^2, 2); +***** test format rat; disp (x); + : --- --- + * : 0.0 0.0 + * : 0.5 0.0 + * : 1.0 0.0 + * : 0.0 0.5 + * : 0.5 0.5 + * : 1.0 0.5 + * : 0.0 1.0 + * : 0.5 1.0 + * : 1.0 1.0 +***** test format long; disp (x); + : --- --- + * : 0.0 0.0 + * : 0.5 0.0 + * : 1.0 0.0 + * : 0.0 0.5 + * : 0.5 0.5 + * : 1.0 0.5 + * : 0.0 1.0 + * : 0.5 1.0 + * : 1.0 1.0 +***** test format short; disp (x); format (fmt); + : --- --- + * : 0.0 0.0 + * : 0.5 0.0 + * : 1.0 0.0 + * : 0.0 0.5 + * : 0.5 0.5 + * : 1.0 0.5 + * : 0.0 1.0 + * : 0.5 1.0 + * : 1.0 1.0 +***** test disp (stk_sampling_regulargrid (0^1, 1)); + Empty data frame with 0 rows and 0 columns +***** test disp (stk_sampling_regulargrid (0^2, 2)); + Empty data frame with 0 rows and 0 columns +***** test display (x); -F = -| -| model: -| reference_grid: <5x1 double array> -| +x = <9x2 stk_factorialdesign array> -***** test F.reference_grid = []; - assert (isempty (F.reference_grid)) -***** test F = stk_sampcrit_akg (M) % ending ";" omitted on purpose, to test disp + : --- --- + * : 0.0 0.0 + * : 0.5 0.0 + * : 1.0 0.0 + * : 0.0 0.5 + * : 0.5 0.5 + * : 1.0 0.5 + * : 0.0 1.0 + * : 0.5 1.0 + * : 1.0 1.0 -F = -| -| model: -| reference_grid: -- (use current evaluation points) -| +***** error length (stk_sampling_regulargrid (7^2, 2)) % not defined +***** shared x + x = stk_factorialdesign ({[0 1], [0 1]}); +***** assert (isequal (x(2:end, :), x(2:4, :))) +***** assert (isequal (x(2, 1:end), x(2, :))) +***** assert (isequal (x(2:end, 2:end), x(2:4, 2))) +***** error x(1:end, 1:end, 1:end) +***** shared x, y + x = stk_sampling_regulargrid (3^2, 2); + y = x; +***** test %%%% vercat + z = vertcat (x, y); + assert (strcmp (class (z), 'stk_dataframe')); + assert (isequal (double (z), [double(x); double(y)])); +***** test %%%% same thing, using cat(1, ...) + z = cat (1, x, y); + assert (strcmp (class (z), 'stk_dataframe')); + assert (isequal (double (z), [double(x); double(y)])); +***** test %%%% horzcat + y.colnames = {'y1' 'y2'}; z = horzcat (x, y); + assert (strcmp (class (z), 'stk_dataframe')); + assert (isequal (double (z), [double(x) double(y)])); +***** test %%%% same thing, using cat (2, ...) + z = cat (2, x, y); + assert (strcmp (class (z), 'stk_dataframe')); + assert (isequal (double (z), [double(x) double(y)])); +***** error cat (3, x, y) +***** shared x, t + x = stk_sampling_regulargrid (3^2, 2); + t = double (x); +***** assert (isequal (apply (x, 1, @sum), sum (t, 1))) +***** assert (isequal (apply (x, 2, @sum), sum (t, 2))) +***** error u = apply (x, 3, @sum); +***** assert (isequal (apply (x, 1, @min, []), min (t, [], 1))) +***** assert (isequal (apply (x, 2, @min, []), min (t, [], 2))) +***** error u = apply (x, 3, @min, []); +***** assert (isequal (min (x), min (t))) +***** assert (isequal (max (x), max (t))) +***** assert (isequal (std (x), std (t))) +***** assert (isequal (var (x), var (t))) +***** assert (isequal (sum (x), sum (t))) +***** assert (isequal (mean (x), mean (t))) +***** assert (isequal (mode (x), mode (t))) +***** assert (isequal (prod (x), prod (t))) +***** assert (isequal (median (x), median (t))) +***** shared x1, x2, x3, u1, u2, u3 + x1 = stk_sampling_regulargrid ([4 3], 2); u1 = double (x1); + x2 = stk_sampling_regulargrid ([3 4], 2); u2 = double (x2); + x3 = x1 + 1; u3 = u1 + 1; +***** test + z = bsxfun (@plus, x1, u2); + assert (isa (z, 'stk_dataframe') && isequal (double (z), u1 + u2)) +***** test + z = bsxfun (@plus, u1, x2); + assert (isa (z, 'stk_dataframe') && isequal (double (z), u1 + u2)) +***** test + z = bsxfun (@plus, x1, x2); + assert (isa (z, 'stk_dataframe') && isequal (double (z), u1 + u2)) +***** test z = min (x1, x2); assert (isequal (double (z), min (u1, u2))); +***** test z = max (x1, x2); assert (isequal (double (z), max (u1, u2))); +***** error z = min (x1, x2, 1); +***** error z = max (x1, x2, 1); +***** test z = x1 + x2; assert (isequal (double (z), u1 + u2)); +***** test z = x1 - x2; assert (isequal (double (z), u1 - u2)); +***** test z = x1 .* x2; assert (isequal (double (z), u1 .* u2)); +***** test z = x3 .\ x2; assert (isequal (double (z), u3 .\ u2)); +***** test z = x2 ./ x3; assert (isequal (double (z), u2 ./ u3)); +***** test z = x3 .^ x2; assert (isequal (double (z), u3 .^ u2)); +***** test z = realpow (x3, x2); assert (isequal (double (z), realpow (u3, u2))); +***** test z = (x1 == x2); assert (isequal (double (z), (u1 == u2))); +***** test z = (x1 ~= x2); assert (isequal (double (z), (u1 ~= u2))); +***** test z = (x1 <= x2); assert (isequal (double (z), (u1 <= u2))); +***** test z = (x1 >= x2); assert (isequal (double (z), (u1 >= u2))); +***** test z = (x1 < x2); assert (isequal (double (z), (u1 < u2))); +***** test z = (x1 > x2); assert (isequal (double (z), (u1 > u2))); +***** test z = x1 & x2; assert (isequal (double (z), u1 & u2)); +***** test z = x1 | x2; assert (isequal (double (z), u1 | u2)); +***** test z = xor (x1, x2); assert (isequal (double (z), xor (u1, u2))); +***** shared x + x = stk_factorialdesign ({[0 1], [0 1 2]}); +***** 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_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_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.KcqI54N01m at line 710 column 31 -***** 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_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_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, {})); +4 tests, 4 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 - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_randomlhs (n, dim, box); - assert (isequal (x.colnames, cn)); + z = vertcat (x, x); + assert (isequal (size (z), [4 d])); + assert (strcmp (class (z), 'stk_dataframe')); ***** 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_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 + z = vertcat (x, y); + assert (isequal (size (z), [4 d])); + assert (strcmp (class (z), 'stk_dataframe')); ***** test - n = 300; d = 25; - x = stk_sampling_halton_rr2 (n, d); - assert (isequal (size (x), [n d])) + 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_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 - 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)); + y = stk_rescale(0.5, [], [0; 2]); + assert (stk_isequal_tolabs (y, 1.0)); ***** test - dim = 2; box = stk_hrect (dim); - x = stk_sampling_halton_rr2 (5, dim, box); - assert (isequal (x.colnames, {})); + y = stk_rescale (0.5, [0; 1], [0; 2]); + assert (stk_isequal_tolabs (y, 1.0)); ***** test - dim = 2; cn = {'W', 'H'}; box = stk_hrect (dim, cn); - x = stk_sampling_halton_rr2 (5, dim, box); - assert (isequal (x.colnames, cn)); + 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/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 + 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_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/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/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, {})); +[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/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/generic/stk_rescale.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_rescale.m +***** shared x + x = rand (10, 4); + y = stk_rescale (x, [], []); + assert (stk_isequal_tolabs (x, y)); ***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_maximinlhs (n, dim, box); - assert (isequal (x.colnames, cn)); + y = stk_rescale(0.5, [], [0; 2]); + assert (stk_isequal_tolabs (y, 1.0)); ***** 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, {})); + y = stk_rescale (0.5, [0; 1], [0; 2]); + assert (stk_isequal_tolabs (y, 1.0)); ***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_olhs (n, d, box); - assert (isequal (x.colnames, cn)); + y = stk_rescale (0.5, [0; 2], []); + assert (stk_isequal_tolabs (y, 0.25)); ***** 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/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)); + 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/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_feval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_feval.m +***** shared f, xt + f = @(x)(- (0.7 * x + sin (5 * x + 1) + 0.1 * sin (10 * x))); + xt = stk_sampling_regulargrid (20, 1, [0; 1]); +***** error yt = stk_feval (); +***** error yt = stk_feval (f); +***** test yt = stk_feval (f, xt); +***** test yt = stk_feval (f, xt, false); +***** test yt = stk_feval (f, xt, false, false); +***** test yt = stk_feval (f, xt, false, false, false); +***** test + N = 15; + xt = stk_sampling_regulargrid (N, 1, [0; 1]); + yt = stk_feval (f, xt); + assert (isequal (size (yt), [N 1])); +***** test + x = stk_dataframe ([1; 2; 3], {'x'}, {'a'; 'b'; 'c'}); + y = stk_feval (@(u)(2 * u), x); + assert (isequal (y.data, [2; 4; 6])); + assert (isequal (y.rownames, {'a'; 'b'; 'c'})); +***** shared t, z_ref, n + n = 20; + t = stk_sampling_regulargrid (n, 1, [0; 2*pi]); + z_ref = [sin(t.data) cos(t.data)]; +***** test + t.colnames = {'time'}; + z = stk_feval ({@sin, @cos}, t); + assert (isa (z, 'stk_dataframe')); + assert (isequal (z.data, z_ref)); +***** test + F = @(x)([sin(x) cos(x)]); + z = stk_feval (F, t); + assert (isequal (z.data, z_ref)); +***** test + t = stk_sampling_regulargrid (n, 1, [0; 2*pi]); + F = {'sin', 'cos'}; + z = stk_feval (F, t); + assert (isequal (z.data, [sin(t.data) cos(t.data)])); + assert (isequal (z.colnames, {'sin' 'cos'})); +***** test % vectorized + F = @(t)([sin(t) cos(t)]); + G = @(t)(0.365 * t.^2 + (cos ((t - 1).*(t - 2) + 0.579033))); + z = stk_feval ({@sin, @cos, G, F, 'tan'}, t); + assert (isequal (z.colnames, {'sin' 'cos' 'F3' 'F4_1' 'F4_2' 'tan'})); +***** test % not vectorized + F = @(t)([sin(t) cos(t)]); + G = @(t)(0.365 * t^2 + (cos ((t - 1)*(t - 2) + 0.579033))); + 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_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/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/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 +[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 (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); + 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; 2.4; 2.6]); + 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_aniso (param, x, y); - K2 = stk_gausscov_aniso (param, x, y, -1); + 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:(dim + 1), - dK = stk_gausscov_aniso (param, x, y, i); + for i = 1:2, + dK = stk_gausscov_iso (param, x, y, i); assert (isequal (size (dK), [nx ny])); end ***** test @@ -4074,54 +4649,190 @@ 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_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:(dim + 1), - dK1 = stk_gausscov_aniso (param, x, y, i); - dK2 = stk_gausscov_aniso (param, x, y, i, true); + 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 -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 +18 tests, 18 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/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_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_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_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_expcov_aniso.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_expcov_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 (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); + y = stk_sampling_randunif (6, dim); +***** error K0 = stk_expcov_aniso (); +***** error K0 = stk_expcov_aniso (param); +***** error K0 = stk_expcov_aniso (param, x); +***** test K1 = stk_expcov_aniso (param, x, y); +***** test K2 = stk_expcov_aniso (param, x, y, -1); +***** test K3 = stk_expcov_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_expcov_aniso (param, u, v, -1); + K2 = stk_expcov_aniso (param, stk_dataframe (u), stk_dataframe (v), -1); +***** error stk_expcov_aniso (param, x, y, -2); +***** test stk_expcov_aniso (param, x, y, -1); +***** error stk_expcov_aniso (param, x, y, 0); +***** test stk_expcov_aniso (param, x, y, 1); +***** test stk_expcov_aniso (param, x, y, 2); +***** error stk_expcov_aniso (param, x, y, 3); +***** error stk_expcov_aniso (param, x, y, nan); +***** error stk_expcov_aniso (param, x, y, inf); ***** shared dim, param, x, y, nx, ny dim = 3; - param = log ([1.0; 2.5]); - nx = 4; ny = 10; + 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_materncov32_iso (param, x, y); - K2 = stk_materncov32_iso (param, x, y, -1); - assert (isequal (size (K1), [nx ny])); + K1 = stk_expcov_aniso (param, x, y); + K2 = stk_expcov_aniso (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); + for i = 1:(dim + 1), + dK = stk_expcov_aniso (param, x, y, i); assert (isequal (size (dK), [nx ny])); end ***** test @@ -4129,18 +4840,18 @@ 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); + K1 = stk_expcov_aniso (param, x, y); + K2 = stk_expcov_aniso (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); + for i = 1:(dim + 1), + dK1 = stk_expcov_aniso (param, x, y, i); + dK2 = stk_expcov_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 +20 tests, 20 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 @@ -4251,88 +4962,33 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 18 tests, 18 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 +[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_materncov32_aniso (); -***** error K0 = stk_materncov32_aniso (param); -***** error K0 = stk_materncov32_aniso (param, x); -***** test K1 = stk_materncov32_aniso (param, x, y); -***** test K2 = stk_materncov32_aniso (param, x, y, -1); -***** test K3 = stk_materncov32_aniso (param, x, y, -1, false); +***** 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_materncov32_aniso (param, u, v, -1); - K2 = stk_materncov32_aniso (param, stk_dataframe (u), stk_dataframe (v), -1); - assert (isequal (K1, K2)); -***** error stk_materncov32_aniso (param, x, y, -2); -***** test stk_materncov32_aniso (param, x, y, -1); -***** error stk_materncov32_aniso (param, x, y, 0); -***** test stk_materncov32_aniso (param, x, y, 1); -***** test stk_materncov32_aniso (param, x, y, 2); -***** error stk_materncov32_aniso (param, x, y, 3); -***** error stk_materncov32_aniso (param, x, y, nan); -***** error stk_materncov32_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_materncov32_aniso (param, x, y); - K2 = stk_materncov32_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_materncov32_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_materncov32_aniso (param, x, y); - K2 = stk_materncov32_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_materncov32_aniso (param, x, y, i); - dK2 = stk_materncov32_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 - dim = 1; - param = log ([1.0; 2.5]); - x = stk_sampling_randunif (5, dim); - y = stk_sampling_randunif (5, dim); -***** error stk_materncov52_aniso (); -***** error stk_materncov52_aniso (param); -***** error stk_materncov52_aniso (param, x); -***** test stk_materncov52_aniso (param, x, y); -***** test stk_materncov52_aniso (param, x, y, -1); -***** test stk_materncov52_aniso (param, x, y, -1, false); -***** error stk_materncov52_aniso (param, x, y, -2); -***** test stk_materncov52_aniso (param, x, y, -1); -***** error stk_materncov52_aniso (param, x, y, 0); -***** test stk_materncov52_aniso (param, x, y, 1); -***** test stk_materncov52_aniso (param, x, y, 2); -***** error stk_materncov52_aniso (param, x, y, 3); -***** error stk_materncov52_aniso (param, x, y, nan); -***** error stk_materncov52_aniso (param, x, y, inf); + 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]); @@ -4340,13 +4996,13 @@ x = stk_sampling_randunif (nx, dim); y = stk_sampling_randunif (ny, dim); ***** test - K1 = stk_materncov52_aniso (param, x, y); - K2 = stk_materncov52_aniso (param, x, y, -1); + 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 for i = 1:(dim + 1), - dK = stk_materncov52_aniso (param, x, y, i); + dK = stk_gausscov_aniso (param, x, y, i); assert (isequal (size (dK), [nx ny])); end ***** test @@ -4354,45 +5010,46 @@ x = stk_sampling_randunif (n, dim); y = stk_sampling_randunif (n, dim); - K1 = stk_materncov52_aniso (param, x, y); - K2 = stk_materncov52_aniso(param, x, y, -1, true); + 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))); for i = 1:(dim + 1), - dK1 = stk_materncov52_aniso (param, x, y, i); - dK2 = stk_materncov52_aniso (param, x, y, i, true); + 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 -17 tests, 17 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 +20 tests, 20 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_expcov_aniso (); -***** error K0 = stk_expcov_aniso (param); -***** error K0 = stk_expcov_aniso (param, x); -***** test K1 = stk_expcov_aniso (param, x, y); -***** test K2 = stk_expcov_aniso (param, x, y, -1); -***** test K3 = stk_expcov_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_expcov_aniso (param, u, v, -1); - K2 = stk_expcov_aniso (param, stk_dataframe (u), stk_dataframe (v), -1); -***** error stk_expcov_aniso (param, x, y, -2); -***** test stk_expcov_aniso (param, x, y, -1); -***** error stk_expcov_aniso (param, x, y, 0); -***** test stk_expcov_aniso (param, x, y, 1); -***** test stk_expcov_aniso (param, x, y, 2); -***** error stk_expcov_aniso (param, x, y, 3); -***** error stk_expcov_aniso (param, x, y, nan); -***** error stk_expcov_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]); @@ -4400,13 +5057,13 @@ x = stk_sampling_randunif (nx, dim); y = stk_sampling_randunif (ny, dim); ***** test - K1 = stk_expcov_aniso (param, x, y); - K2 = stk_expcov_aniso (param, x, y, -1); + 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_expcov_aniso (param, x, y, i); + dK = stk_sphcov_aniso (param, x, y, i); assert (isequal (size (dK), [nx ny])); end ***** test @@ -4414,14 +5071,14 @@ x = stk_sampling_randunif (n, dim); y = stk_sampling_randunif (n, dim); - K1 = stk_expcov_aniso (param, x, y); - K2 = stk_expcov_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_expcov_aniso (param, x, y, i); - dK2 = stk_expcov_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 @@ -4456,102 +5113,34 @@ 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_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_sphcov_aniso.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_sphcov_aniso.m +[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 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); +***** error K0 = stk_materncov32_aniso (); +***** error K0 = stk_materncov32_aniso (param); +***** error K0 = stk_materncov32_aniso (param, x); +***** test K1 = stk_materncov32_aniso (param, x, y); +***** test K2 = stk_materncov32_aniso (param, x, y, -1); +***** test K3 = stk_materncov32_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); + K1 = stk_materncov32_aniso (param, u, v, -1); + K2 = stk_materncov32_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); +***** error stk_materncov32_aniso (param, x, y, -2); +***** test stk_materncov32_aniso (param, x, y, -1); +***** error stk_materncov32_aniso (param, x, y, 0); +***** test stk_materncov32_aniso (param, x, y, 1); +***** test stk_materncov32_aniso (param, x, y, 2); +***** error stk_materncov32_aniso (param, x, y, 3); +***** error stk_materncov32_aniso (param, x, y, nan); +***** error stk_materncov32_aniso (param, x, y, inf); ***** shared dim, param, x, y, nx, ny dim = 3; param = log ([1.0; 2.5; 2.4; 2.6]); @@ -4559,13 +5148,13 @@ 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); + K1 = stk_materncov32_aniso (param, x, y); + K2 = stk_materncov32_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); + dK = stk_materncov32_aniso (param, x, y, i); assert (isequal (size (dK), [nx ny])); end ***** test @@ -4573,159 +5162,40 @@ 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); + K1 = stk_materncov32_aniso (param, x, y); + K2 = stk_materncov32_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); + dK1 = stk_materncov32_aniso (param, x, y, i); + dK2 = stk_materncov32_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_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_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_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_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/stk_gausscov_iso.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_gausscov_iso.m +[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_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); +***** 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]); @@ -4733,13 +5203,13 @@ 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); + 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_gausscov_iso (param, x, y, i); + dK = stk_materncov32_iso (param, x, y, i); assert (isequal (size (dK), [nx ny])); end ***** test @@ -4747,14 +5217,14 @@ 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); + 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_gausscov_iso (param, x, y, i); - dK2 = stk_gausscov_iso (param, x, y, i, true); + 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 @@ -4869,26 +5339,120 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 18 tests, 18 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]'))); +[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_materncov52_aniso.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/covfcs/stk_materncov52_aniso.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 stk_materncov52_aniso (); +***** error stk_materncov52_aniso (param); +***** error stk_materncov52_aniso (param, x); +***** test stk_materncov52_aniso (param, x, y); +***** test stk_materncov52_aniso (param, x, y, -1); +***** test stk_materncov52_aniso (param, x, y, -1, false); +***** error stk_materncov52_aniso (param, x, y, -2); +***** test stk_materncov52_aniso (param, x, y, -1); +***** error stk_materncov52_aniso (param, x, y, 0); +***** test stk_materncov52_aniso (param, x, y, 1); +***** test stk_materncov52_aniso (param, x, y, 2); +***** error stk_materncov52_aniso (param, x, y, 3); +***** error stk_materncov52_aniso (param, x, y, nan); +***** error stk_materncov52_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_materncov52_aniso (param, x, y); + K2 = stk_materncov52_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_materncov52_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_materncov52_aniso (param, x, y); + K2 = stk_materncov52_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_materncov52_aniso (param, x, y, i); + dK2 = stk_materncov52_aniso (param, x, y, i, true); + assert (isequal (size (dK1), [n n])); + assert (stk_isequal_tolabs (dK2, diag (dK1))); + end +17 tests, 17 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/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/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 @@ -4923,25 +5487,6 @@ ***** 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_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_isequal_tolabs.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/test/stk_isequal_tolabs.m ***** shared r1, r2, a, b, tolabs @@ -4959,463 +5504,45 @@ 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/pareto/stk_dominatedhv.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/pareto/stk_dominatedhv.m -***** error hv = stk_dominatedhv (); -***** error hv = stk_dominatedhv (-y, 'incorrect ref type'); -***** error hv = stk_dominatedhv (-y, [0 0]); -***** error hv = stk_dominatedhv (-y, [0 0 0 0 0], 0, 'too many input args'); -***** shared y, hv0 % Example from README.TXT in WFG 1.10 - - y = [ ... - 0.598 0.737 0.131 0.916 6.745; ... - 0.263 0.740 0.449 0.753 6.964; ... - 0.109 8.483 0.199 0.302 8.872 ]; - - hv0 = 1.1452351120; -***** test - hv = stk_dominatedhv (-y); - assert (stk_isequal_tolrel (hv, hv0, 1e-10)); -***** test - yy = stk_dataframe (- y); % Check that @stk_dataframe inputs are accepted - hv = stk_dominatedhv (yy); - assert (stk_isequal_tolrel (hv, hv0, 1e-10)); -***** test - hv = stk_dominatedhv (-y, [], 0); - assert (stk_isequal_tolrel (hv, hv0, 1e-10)); -***** test - hv = stk_dominatedhv (-y, [0 0 0 0 0]); - assert (stk_isequal_tolrel (hv, hv0, 1e-10)); -***** test - hv = stk_dominatedhv (1 - y, [1 1 1 1 1]); - assert (stk_isequal_tolrel (hv, hv0, 1e-10)); -***** test - r = stk_dominatedhv (-y, [], 1); - hv = sum (r.sign .* prod (r.xmax - r.xmin, 2)); - assert (stk_isequal_tolrel (hv, hv0, 1e-10)); -***** shared y1, y2, y0, S, S1 - y0 = [1.00 1.00]; % Reference point - y1 = [1.50 1.50]; % Above the reference point - y2 = [0.50 0.50]; % Below the reference point -***** assert (isequal (0.00, stk_dominatedhv (y1, y0))); -***** assert (isequal (0.25, stk_dominatedhv (y2, y0))); -***** assert (isequal (0.25, stk_dominatedhv ([y1; y2], y0))); -***** assert (isequal (0.25, stk_dominatedhv ([y2; y1; y2], y0))); -***** test S = stk_dominatedhv (y1, y0, 1); % empty decomposition -***** assert (isequal (size (S.xmin, 1), 0)); -***** test S = stk_dominatedhv (y2, y0, 1); % trivial decomposition -***** assert (isequal (S.sign, 1)); -***** assert (isequal (S.xmin, y2)); -***** assert (isequal (S.xmax, y0)); -***** test S1 = stk_dominatedhv ([y2; y0], y0, 1); % shoud be the same as before -***** assert (isequal (S1, S)); -***** test S1 = stk_dominatedhv ([y2; y1], y0, 1); % shoud be the same as before -***** assert (isequal (S1, S)); -***** test S1 = stk_dominatedhv ([y2; y2], y0, 1); % shoud be the same as before -***** assert (isequal (S1, S)); -***** test - for d = 1:10, - y = - 0.5 * ones (1, d); - hv = stk_dominatedhv (y); - assert (isequal (stk_dominatedhv (y), 0.5 ^ d)); - end -***** test - for d = 1:10, - y = - 0.5 * ones (1, d); - r = stk_dominatedhv (y, [], 1); - hv = sum (r.sign .* prod (r.xmax - r.xmin, 2)); - assert (isequal (stk_dominatedhv (y), 0.5 ^ d)); - end -***** shared y, y_ref, dv, hv0 - y1 = [0.25 0.75]; - y2 = [0.50 0.50]; - y3 = [0.75 0.25]; - - y_ref = [1 1]; - - y = {[], y1, y2, y3; [y1; y2], [y1; y3], [y2; y3], [y1; y2; y3]}; - - dv = 0.25 ^ 2; hv0 = [0 3 4 3; 5 5 5 6] * dv; -***** test - hv1 = stk_dominatedhv (y, y_ref); - assert (isequal (hv0, hv1)); -***** test - r = stk_dominatedhv (y, y_ref, 1); - - % Check the first decomposition, which should be empty - assert (isempty (r(1).sign)); - assert (isempty (r(1).xmin)); - assert (isempty (r(1).xmax)); - - % Check the other decompositions - for i = 2:6, - hv2 = sum (r(i).sign .* prod (r(i).xmax - r(i).xmin, 2)); - assert (isequal (hv0(i), hv2)); - end -***** test - y = (0.3:0.1:0.8)'; - hv0 = 0.7; - hv1 = stk_dominatedhv (y, 1); - r = stk_dominatedhv (y, 1, true); - hv2 = sum (r.sign .* prod (r.xmax - r.xmin, 2)); -***** test % four non-dominated points (hypervolume) - zr = [1 1]; - zi = [0.2 0.8; 0.4 0.6; 0.6 0.4; 0.8 0.2] - P = perms (1:4); - for i = 1:24 - HV = stk_dominatedhv (zi(P(i, :), :), zr, 0); - assert (stk_isequal_tolrel (HV, 0.4, 1e-15)); - end -zi = - - 0.2000 0.8000 - 0.4000 0.6000 - 0.6000 0.4000 - 0.8000 0.2000 - -***** test % four non-dominated points (decomposition) - zr = [1 1]; - zi = [0.2 0.8; 0.4 0.6; 0.6 0.4; 0.8 0.2] - P = perms (1:4); - for i = 1:24 - S = stk_dominatedhv (zi(P(i, :), :), zr, 1); - HV = sum (S.sign .* prod (S.xmax - S.xmin, 2)); - assert (stk_isequal_tolrel (HV, 0.4, 1e-15)); - end -zi = - - 0.2000 0.8000 - 0.4000 0.6000 - 0.6000 0.4000 - 0.8000 0.2000 - -***** test % a case with 8 points and 5 objectives - % http://sourceforge.net/p/kriging/tickets/33 - - yr = [1.03 0.91 0.96 1.99 16.2]; - - y = [ ... - 0.8180 0.5600 0.1264 1.0755 1.2462; ... - 0.8861 0.6928 0.2994 0.7228 0.9848; ... - 0.9021 0.8829 0.6060 0.1642 0.4282; ... - 0.9116 0.3097 0.8601 0.0468 0.2813; ... - 0.9306 0.1429 0.6688 0.1462 1.3661; ... - 0.9604 0.3406 0.4046 0.7239 1.8741; ... - 0.9648 0.7764 0.5199 0.4098 1.3436; ... - 0.9891 0.4518 0.7956 0.1164 1.2025]; - - hv1 = stk_dominatedhv (y, yr, 0); - - S = stk_dominatedhv (y, yr, 1); - hv2 = sum (S.sign .* prod (S.xmax - S.xmin, 2)); - - assert (isequal (size (S.sign), [87 1])); - assert (isequal (size (S.xmin), [87 5])); - assert (isequal (size (S.xmax), [87 5])); - assert (stk_isequal_tolrel (hv1, 1.538677420906463, 2 * eps)); - assert (stk_isequal_tolrel (hv1, hv2, eps)); -***** test % with random data - NREP = 5; - for p = 1:5 - for n = 1:10 - for i = 1:NREP - % Draw random data - y = rand (n, p); - y = - y ./ (norm (y)); - % Compute hypervolume directly - hv1 = stk_dominatedhv (y, [], 0); - % Compute decomposition, then hypervolume - R = stk_dominatedhv (y, [], 1); - hv2 = sum (R.sign .* prod (R.xmax - R.xmin, 2)); - % Compare results - assert (stk_isequal_tolabs (hv1, hv2, eps)); - end - end - end -35 tests, 35 passed, 0 known failure, 0 skipped -[inst/misc/pareto/stk_paretofind.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/pareto/stk_paretofind.m -***** shared x, ndpos, drank - x = [ ... - 0 2; ... - 2 2; ... - ]; -***** test [ndpos, drank] = stk_paretofind (x); -***** assert (isequal (ndpos, 1)); -***** assert (isequal (drank, [0; 1])); -***** shared x, ndpos, drank - x = [ ... - 3 2; ... - 2 2; ... - ]; -***** test [ndpos, drank] = stk_paretofind (x); -***** assert (isequal (ndpos, 2)); -***** assert (isequal (drank, [1; 0])); -***** shared x, ndpos, drank - x = [ ... - 1 0; ... - 2 0; ... - 0 2; ... - 2 2; ... - -1 3 ]; -***** test [ndpos, drank] = stk_paretofind (x); -***** assert (isequal (ndpos, [5; 3; 1])); -***** assert (isequal (drank, [0; 3; 0; 2; 0])); -***** shared x, ndpos, drank - x = [ ... - 1 0; ... - 2 0; ... - 0 2; ... - 2 2; ... - -1 3; ... - -1 4; ... - 2 2 ]; -***** test [ndpos, drank] = stk_paretofind (x); -***** 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/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); +[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 = [1 3 2]; - B = [0 0 3; 0 0 0]; - [isdom, dpos] = stk_isdominated (A, B); - assert (isdom == 1); - assert (dpos == 2); + a = struct('u', []); b = struct('v', []); + assert(~ stk_isequal_tolrel(a, b)) ***** 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])); + 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/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/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/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'])) -***** 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.yTb5CMg86Z at line 526 column 31 - -toto -***** error stk_disp_progress ('toto ', 2, 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.yTb5CMg86Z at line 526 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/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') +[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_gpquadform.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_gpquadform.m -***** shared x, y, z, rx, ry, rz - x = rand(5, 2); rx = rand(5, 2) + 1; - y = rand(6, 2); ry = rand(6, 2) + 1; - z = rand(5, 3); rz = rand(5, 3) + 1; -***** error Q = stk_gpquadform(x, ry, y, ry) -***** error Q = stk_gpquadform(x, rz, y, ry) -***** error Q = stk_gpquadform(x, rx, y, rx) -***** error Q = stk_gpquadform(x, rx, y, rz) -***** error Q = stk_gpquadform(x, rx, z, ry) -***** shared x, y, z, rx, ry, rz - x = zeros (11, 5); rx = 1/sqrt(2) * ones (11, 5); - y = zeros (13, 5); ry = 1/sqrt(2) * ones (13, 5); - z = ones ( 7, 5); rz = 1/sqrt(2) * ones ( 7, 5); -***** test - Qx = stk_gpquadform(x, [], rx); - assert(isequal(Qx, zeros(11))); -***** test - Qxx = stk_gpquadform(x, x, rx, rx); - assert(isequal(Qxx, zeros(11))); -***** test - Qxy = stk_gpquadform(x, y, rx, ry); - assert(isequal(Qxy, zeros(11, 13))); -***** test - Qzz = stk_gpquadform(z, [], rz); - assert(isequal(Qzz, zeros(7))); -***** test - Qxz = stk_gpquadform(x, z, rx, rz); - assert(stk_isequal_tolabs(Qxz, 5 * ones(11, 7))); -***** test - x = randn(5, 3); rx = 1 + rand(5, 3); - y = randn(5, 3); ry = 1 + rand(5, 3); - Q1 = stk_gpquadform(x, y, rx, ry, true); % pairwise - Q2 = stk_gpquadform(x, y, rx, ry, false); - assert(isequal(size(Q1), [5 1])); - assert(isequal(size(Q2), [5 5])); - assert(stk_isequal_tolabs(Q1, diag(Q2))); -***** test - x = randn(5, 3); rx = 1 + rand(5, 3); - Q1 = stk_gpquadform(x, [], rx, [], true); % pairwise - assert(stk_isequal_tolabs(Q1, zeros(5, 1))); - Q1 = stk_gpquadform(x, x, rx, rx, true); % pairwise - assert(stk_isequal_tolabs(Q1, zeros(5, 1))); -***** shared x, y, z, rx, ry, rz - x = zeros (11, 5); rx = 2 * ones (11, 5); - y = zeros (13, 5); ry = 2 * ones (13, 5); - z = ones ( 7, 5); rz = 2 * ones ( 7, 5); -***** test - Qx = stk_gpquadform(x, [], rx); - assert(isequal(Qx, zeros(11))); -***** test - Qxx = stk_gpquadform(x, x, rx, rx); - assert(isequal(Qxx, zeros(11))); -***** test - Qxy = stk_gpquadform(x, y, rx, ry); - assert(isequal(Qxy, zeros(11, 13))); -***** test - Qzz = stk_gpquadform(z, [], rz); - assert(isequal(Qzz, zeros(7))); -***** test - 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_filldist.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_filldist.m ***** test %%% exact @@ -5479,6 +5606,94 @@ assert(stk_isequal_tolabs(ymax, ones(1, dim))); end 9 tests, 9 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 +***** error stk_filldist_discretized(0.0, []) % second arg is empty +***** error stk_filldist_discretized([], 0.0) % first arg is empty +***** test + d = 3; x = rand(7, d); y = rand(20, d); + fd1 = stk_filldist_discretized(x, y); + fd2 = stk_filldist_discretized(stk_dataframe(x), stk_dataframe(y)); + assert(stk_isequal_tolabs(fd1, fd2)); +***** test + n = 5; + for dim = 1:10, + x = rand(n, dim); + fd = stk_filldist_discretized(x, x); + assert(stk_isequal_tolabs(fd, 0.0)); + end +***** test + for dim = 1:10, + x = rand(1, dim); + y = rand(1, dim); + fd = stk_filldist_discretized(x, y); + assert(stk_isequal_tolabs(fd, norm(x - y))); + end +***** test + n = 4; + for dim = 2:10, + x = zeros(n, dim); + y = rand(1, dim); + fd = stk_filldist_discretized(x, y); + assert(stk_isequal_tolabs(fd, max(stk_dist(x, y)))); + end +***** test + for dim = [1 3 6], + x = 0.5 * ones(1, dim); + y = stk_sampling_regulargrid(2^dim, dim); % [0; 1]^d is the default box + fd = stk_filldist_discretized(x, y); + assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); + end +***** test + for dim = [1 3 7], + x = zeros(1, dim); + y = stk_sampling_regulargrid(3^dim, dim); + [fd, ymax] = stk_filldist_discretized(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 +[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_mindist.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_mindist.m ***** test @@ -5531,6 +5746,70 @@ end 5 tests, 5 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 + x = rand(5, 2); rx = rand(5, 2) + 1; + y = rand(6, 2); ry = rand(6, 2) + 1; + z = rand(5, 3); rz = rand(5, 3) + 1; +***** error Q = stk_gpquadform(x, ry, y, ry) +***** error Q = stk_gpquadform(x, rz, y, ry) +***** error Q = stk_gpquadform(x, rx, y, rx) +***** error Q = stk_gpquadform(x, rx, y, rz) +***** error Q = stk_gpquadform(x, rx, z, ry) +***** shared x, y, z, rx, ry, rz + x = zeros (11, 5); rx = 1/sqrt(2) * ones (11, 5); + y = zeros (13, 5); ry = 1/sqrt(2) * ones (13, 5); + z = ones ( 7, 5); rz = 1/sqrt(2) * ones ( 7, 5); +***** test + Qx = stk_gpquadform(x, [], rx); + assert(isequal(Qx, zeros(11))); +***** test + Qxx = stk_gpquadform(x, x, rx, rx); + assert(isequal(Qxx, zeros(11))); +***** test + Qxy = stk_gpquadform(x, y, rx, ry); + assert(isequal(Qxy, zeros(11, 13))); +***** test + Qzz = stk_gpquadform(z, [], rz); + assert(isequal(Qzz, zeros(7))); +***** test + Qxz = stk_gpquadform(x, z, rx, rz); + assert(stk_isequal_tolabs(Qxz, 5 * ones(11, 7))); +***** test + x = randn(5, 3); rx = 1 + rand(5, 3); + y = randn(5, 3); ry = 1 + rand(5, 3); + Q1 = stk_gpquadform(x, y, rx, ry, true); % pairwise + Q2 = stk_gpquadform(x, y, rx, ry, false); + assert(isequal(size(Q1), [5 1])); + assert(isequal(size(Q2), [5 5])); + assert(stk_isequal_tolabs(Q1, diag(Q2))); +***** test + x = randn(5, 3); rx = 1 + rand(5, 3); + Q1 = stk_gpquadform(x, [], rx, [], true); % pairwise + assert(stk_isequal_tolabs(Q1, zeros(5, 1))); + Q1 = stk_gpquadform(x, x, rx, rx, true); % pairwise + assert(stk_isequal_tolabs(Q1, zeros(5, 1))); +***** shared x, y, z, rx, ry, rz + x = zeros (11, 5); rx = 2 * ones (11, 5); + y = zeros (13, 5); ry = 2 * ones (13, 5); + z = ones ( 7, 5); rz = 2 * ones ( 7, 5); +***** test + Qx = stk_gpquadform(x, [], rx); + assert(isequal(Qx, zeros(11))); +***** test + Qxx = stk_gpquadform(x, x, rx, rx); + assert(isequal(Qxx, zeros(11))); +***** test + Qxy = stk_gpquadform(x, y, rx, ry); + assert(isequal(Qxy, zeros(11, 13))); +***** test + Qzz = stk_gpquadform(z, [], rz); + assert(isequal(Qzz, zeros(7))); +***** test + 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_filldist_exact.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/dist/stk_filldist_exact.m ***** test @@ -5559,115 +5838,251 @@ assert(stk_isequal_tolabs(ymax, ones(1, dim))); end 4 tests, 4 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))); -***** 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_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 -***** error stk_filldist_discretized(0.0, []) % second arg is empty -***** error stk_filldist_discretized([], 0.0) % first arg is empty +[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.KcqI54N01m at line 1094 column 31 + +toto +***** error stk_disp_progress ('toto ', 2, 1); ***** test - d = 3; x = rand(7, d); y = rand(20, d); - fd1 = stk_filldist_discretized(x, y); - fd2 = stk_filldist_discretized(stk_dataframe(x), stk_dataframe(y)); - assert(stk_isequal_tolabs(fd1, fd2)); + 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.KcqI54N01m at line 1094 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 - n = 5; - for dim = 1:10, - x = rand(n, dim); - fd = stk_filldist_discretized(x, x); - assert(stk_isequal_tolabs(fd, 0.0)); + 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_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_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 - for dim = 1:10, - x = rand(1, dim); - y = rand(1, dim); - fd = stk_filldist_discretized(x, y); - assert(stk_isequal_tolabs(fd, norm(x - y))); +***** 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 - n = 4; - for dim = 2:10, - x = zeros(n, dim); - y = rand(1, dim); - fd = stk_filldist_discretized(x, y); - assert(stk_isequal_tolabs(fd, max(stk_dist(x, y)))); +***** test % Call sqp using function name + if stk_optim_isavailable ('octavesqp') + assert (stk_optim_testmin_box ('octavesqp')); end -***** test - for dim = [1 3 6], - x = 0.5 * ones(1, dim); - y = stk_sampling_regulargrid(2^dim, dim); % [0; 1]^d is the default box - fd = stk_filldist_discretized(x, y); - assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); +***** test % Call sqp directly, using algorithm object + if stk_optim_isavailable ('octavesqp') + algo = stk_optim_octavesqp (); + assert (stk_optim_testmin_box (algo)); end -***** test - for dim = [1 3 7], - x = zeros(1, dim); - y = stk_sampling_regulargrid(3^dim, dim); - [fd, ymax] = stk_filldist_discretized(x, y); - assert(stk_isequal_tolabs(fd, sqrt(dim))); - assert(stk_isequal_tolabs(ymax, ones(1, dim))); +***** 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_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_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_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_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 -9 tests, 9 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]), ... - [0.5, ... % normcdf ((1 - 1) / 1) - 0.5; ... % normcdf ((1 - 1) / 10) - 0.5 * erfc(-sqrt(2)), ... % normcdf ((3 - 1) / 1) - 0.5 * erfc(-0.1*sqrt(2)) ... % normcdf ((3 - 1) / 10) +***** 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/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/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]), ... + [1 / sqrt(2 * pi) ... % normpdf ((1 - 1) / 1) + 0.1 / sqrt(2 * pi); ... % normpdf ((1 - 1) / 10) / 10 + exp(-2) / sqrt(2 * pi) ... % normpdf ((3 - 1) / 1) + 3.910426939754558780e-2 ... % normpdf ((3 - 1) / 10) / 10 ], eps)); -***** test - [p, q] = stk_distrib_normal_cdf (10); - assert (isequal (p, 1.0)); - assert (stk_isequal_tolrel (q, 7.6198530241604975e-24, eps)); -***** assert (isequal (stk_distrib_normal_cdf ( 0.0), 0.5)); -***** assert (isequal (stk_distrib_normal_cdf ( inf), 1.0)); -***** assert (isequal (stk_distrib_normal_cdf (-inf), 0.0)); -***** assert (isnan (stk_distrib_normal_cdf ( nan))); -***** assert (isnan (stk_distrib_normal_cdf (0, 0, -1))); -***** assert (isequal (stk_distrib_normal_cdf (0, 0, 0), 1.0)); -***** 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 +***** assert (isequal (stk_distrib_normal_pdf (inf), 0.0)); +***** assert (isequal (stk_distrib_normal_pdf (-inf), 0.0)); +***** 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_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 ( ... @@ -5688,6 +6103,44 @@ ***** 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_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_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]), ... + [0.5, ... % normcdf ((1 - 1) / 1) + 0.5; ... % normcdf ((1 - 1) / 10) + 0.5 * erfc(-sqrt(2)), ... % normcdf ((3 - 1) / 1) + 0.5 * erfc(-0.1*sqrt(2)) ... % normcdf ((3 - 1) / 10) + ], eps)); +***** test + [p, q] = stk_distrib_normal_cdf (10); + assert (isequal (p, 1.0)); + assert (stk_isequal_tolrel (q, 7.6198530241604975e-24, eps)); +***** assert (isequal (stk_distrib_normal_cdf ( 0.0), 0.5)); +***** assert (isequal (stk_distrib_normal_cdf ( inf), 1.0)); +***** assert (isequal (stk_distrib_normal_cdf (-inf), 0.0)); +***** assert (isnan (stk_distrib_normal_cdf ( nan))); +***** assert (isnan (stk_distrib_normal_cdf (0, 0, -1))); +***** assert (isequal (stk_distrib_normal_cdf (0, 0, 0), 1.0)); +***** 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_bivnorm_cdf.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/distrib/stk_distrib_bivnorm_cdf.m ***** test @@ -5755,49 +6208,22 @@ 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_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]), ... - [1 / sqrt(2 * pi) ... % normpdf ((1 - 1) / 1) - 0.1 / sqrt(2 * pi); ... % normpdf ((1 - 1) / 10) / 10 - exp(-2) / sqrt(2 * pi) ... % normpdf ((3 - 1) / 1) - 3.910426939754558780e-2 ... % normpdf ((3 - 1) / 10) / 10 - ], eps)); -***** assert (isequal (stk_distrib_normal_pdf (inf), 0.0)); -***** assert (isequal (stk_distrib_normal_pdf (-inf), 0.0)); -***** 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_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)) +[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_student_ei (linspace (-10, 10, 200), 3.33); + ei = stk_distrib_normal_ei (linspace (-10, 10, 200)); assert (all (diff (ei) < 0)) -***** shared M, mu, sigma, ei, nu +***** shared M, mu, sigma, ei 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); + ei = stk_distrib_normal_ei (M, 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))); +***** 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_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_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)) @@ -5823,166 +6249,1474 @@ 3.455697443411153 ]; assert (stk_isequal_tolabs (crps, crps_ref, 1e-10)); 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))); -6 tests, 6 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')); +[inst/misc/pareto/stk_paretofind.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/pareto/stk_paretofind.m +***** shared x, ndpos, drank + x = [ ... + 0 2; ... + 2 2; ... + ]; +***** test [ndpos, drank] = stk_paretofind (x); +***** assert (isequal (ndpos, 1)); +***** assert (isequal (drank, [0; 1])); +***** shared x, ndpos, drank + x = [ ... + 3 2; ... + 2 2; ... + ]; +***** test [ndpos, drank] = stk_paretofind (x); +***** assert (isequal (ndpos, 2)); +***** assert (isequal (drank, [1; 0])); +***** shared x, ndpos, drank + x = [ ... + 1 0; ... + 2 0; ... + 0 2; ... + 2 2; ... + -1 3 ]; +***** test [ndpos, drank] = stk_paretofind (x); +***** assert (isequal (ndpos, [5; 3; 1])); +***** assert (isequal (drank, [0; 3; 0; 2; 0])); +***** shared x, ndpos, drank + x = [ ... + 1 0; ... + 2 0; ... + 0 2; ... + 2 2; ... + -1 3; ... + -1 4; ... + 2 2 ]; +***** test [ndpos, drank] = stk_paretofind (x); +***** 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/pareto/stk_dominatedhv.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/misc/pareto/stk_dominatedhv.m +***** error hv = stk_dominatedhv (); +***** error hv = stk_dominatedhv (-y, 'incorrect ref type'); +***** error hv = stk_dominatedhv (-y, [0 0]); +***** error hv = stk_dominatedhv (-y, [0 0 0 0 0], 0, 'too many input args'); +***** shared y, hv0 % Example from README.TXT in WFG 1.10 + + y = [ ... + 0.598 0.737 0.131 0.916 6.745; ... + 0.263 0.740 0.449 0.753 6.964; ... + 0.109 8.483 0.199 0.302 8.872 ]; + + hv0 = 1.1452351120; +***** test + hv = stk_dominatedhv (-y); + assert (stk_isequal_tolrel (hv, hv0, 1e-10)); +***** test + yy = stk_dataframe (- y); % Check that @stk_dataframe inputs are accepted + hv = stk_dominatedhv (yy); + assert (stk_isequal_tolrel (hv, hv0, 1e-10)); +***** test + hv = stk_dominatedhv (-y, [], 0); + assert (stk_isequal_tolrel (hv, hv0, 1e-10)); +***** test + hv = stk_dominatedhv (-y, [0 0 0 0 0]); + assert (stk_isequal_tolrel (hv, hv0, 1e-10)); +***** test + hv = stk_dominatedhv (1 - y, [1 1 1 1 1]); + assert (stk_isequal_tolrel (hv, hv0, 1e-10)); +***** test + r = stk_dominatedhv (-y, [], 1); + hv = sum (r.sign .* prod (r.xmax - r.xmin, 2)); + assert (stk_isequal_tolrel (hv, hv0, 1e-10)); +***** shared y1, y2, y0, S, S1 + y0 = [1.00 1.00]; % Reference point + y1 = [1.50 1.50]; % Above the reference point + y2 = [0.50 0.50]; % Below the reference point +***** assert (isequal (0.00, stk_dominatedhv (y1, y0))); +***** assert (isequal (0.25, stk_dominatedhv (y2, y0))); +***** assert (isequal (0.25, stk_dominatedhv ([y1; y2], y0))); +***** assert (isequal (0.25, stk_dominatedhv ([y2; y1; y2], y0))); +***** test S = stk_dominatedhv (y1, y0, 1); % empty decomposition +***** assert (isequal (size (S.xmin, 1), 0)); +***** test S = stk_dominatedhv (y2, y0, 1); % trivial decomposition +***** assert (isequal (S.sign, 1)); +***** assert (isequal (S.xmin, y2)); +***** assert (isequal (S.xmax, y0)); +***** test S1 = stk_dominatedhv ([y2; y0], y0, 1); % shoud be the same as before +***** assert (isequal (S1, S)); +***** test S1 = stk_dominatedhv ([y2; y1], y0, 1); % shoud be the same as before +***** assert (isequal (S1, S)); +***** test S1 = stk_dominatedhv ([y2; y2], y0, 1); % shoud be the same as before +***** assert (isequal (S1, S)); +***** test + for d = 1:10, + y = - 0.5 * ones (1, d); + hv = stk_dominatedhv (y); + assert (isequal (stk_dominatedhv (y), 0.5 ^ d)); 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)); +***** test + for d = 1:10, + y = - 0.5 * ones (1, d); + r = stk_dominatedhv (y, [], 1); + hv = sum (r.sign .* prod (r.xmax - r.xmin, 2)); + assert (isequal (stk_dominatedhv (y), 0.5 ^ d)); end -***** test % Call sqp using function name - if stk_optim_isavailable ('octavesqp') - assert (stk_optim_testmin_unc ('octavesqp')); +***** shared y, y_ref, dv, hv0 + y1 = [0.25 0.75]; + y2 = [0.50 0.50]; + y3 = [0.75 0.25]; + + y_ref = [1 1]; + + y = {[], y1, y2, y3; [y1; y2], [y1; y3], [y2; y3], [y1; y2; y3]}; + + dv = 0.25 ^ 2; hv0 = [0 3 4 3; 5 5 5 6] * dv; +***** test + hv1 = stk_dominatedhv (y, y_ref); + assert (isequal (hv0, hv1)); +***** test + r = stk_dominatedhv (y, y_ref, 1); + + % Check the first decomposition, which should be empty + assert (isempty (r(1).sign)); + assert (isempty (r(1).xmin)); + assert (isempty (r(1).xmax)); + + % Check the other decompositions + for i = 2:6, + hv2 = sum (r(i).sign .* prod (r(i).xmax - r(i).xmin, 2)); + assert (isequal (hv0(i), hv2)); end -***** test % Call sqp directly, using algorithm object - if stk_optim_isavailable ('octavesqp') - algo = stk_optim_octavesqp (); - assert (stk_optim_testmin_unc (algo)); +***** test + y = (0.3:0.1:0.8)'; + hv0 = 0.7; + hv1 = stk_dominatedhv (y, 1); + r = stk_dominatedhv (y, 1, true); + hv2 = sum (r.sign .* prod (r.xmax - r.xmin, 2)); +***** test % four non-dominated points (hypervolume) + zr = [1 1]; + zi = [0.2 0.8; 0.4 0.6; 0.6 0.4; 0.8 0.2] + P = perms (1:4); + for i = 1:24 + HV = stk_dominatedhv (zi(P(i, :), :), zr, 0); + assert (stk_isequal_tolrel (HV, 0.4, 1e-15)); end -***** error assert (stk_optim_testmin_unc ('InexistentOptimizer')); -***** error assert (stk_optim_testmin_unc (100)); +zi = + + 0.2000 0.8000 + 0.4000 0.6000 + 0.6000 0.4000 + 0.8000 0.2000 + +***** test % four non-dominated points (decomposition) + zr = [1 1]; + zi = [0.2 0.8; 0.4 0.6; 0.6 0.4; 0.8 0.2] + P = perms (1:4); + for i = 1:24 + S = stk_dominatedhv (zi(P(i, :), :), zr, 1); + HV = sum (S.sign .* prod (S.xmax - S.xmin, 2)); + assert (stk_isequal_tolrel (HV, 0.4, 1e-15)); + end +zi = + + 0.2000 0.8000 + 0.4000 0.6000 + 0.6000 0.4000 + 0.8000 0.2000 + +***** test % a case with 8 points and 5 objectives + % http://sourceforge.net/p/kriging/tickets/33 + + yr = [1.03 0.91 0.96 1.99 16.2]; + + y = [ ... + 0.8180 0.5600 0.1264 1.0755 1.2462; ... + 0.8861 0.6928 0.2994 0.7228 0.9848; ... + 0.9021 0.8829 0.6060 0.1642 0.4282; ... + 0.9116 0.3097 0.8601 0.0468 0.2813; ... + 0.9306 0.1429 0.6688 0.1462 1.3661; ... + 0.9604 0.3406 0.4046 0.7239 1.8741; ... + 0.9648 0.7764 0.5199 0.4098 1.3436; ... + 0.9891 0.4518 0.7956 0.1164 1.2025]; + + hv1 = stk_dominatedhv (y, yr, 0); + + S = stk_dominatedhv (y, yr, 1); + hv2 = sum (S.sign .* prod (S.xmax - S.xmin, 2)); + + assert (isequal (size (S.sign), [87 1])); + assert (isequal (size (S.xmin), [87 5])); + assert (isequal (size (S.xmax), [87 5])); + assert (stk_isequal_tolrel (hv1, 1.538677420906463, 2 * eps)); + assert (stk_isequal_tolrel (hv1, hv2, eps)); +***** test % with random data + NREP = 5; + for p = 1:5 + for n = 1:10 + for i = 1:NREP + % Draw random data + y = rand (n, p); + y = - y ./ (norm (y)); + % Compute hypervolume directly + hv1 = stk_dominatedhv (y, [], 0); + % Compute decomposition, then hypervolume + R = stk_dominatedhv (y, [], 1); + hv2 = sum (R.sign .* prod (R.xmax - R.xmin, 2)); + % Compare results + assert (stk_isequal_tolabs (hv1, hv2, eps)); + end + end + end +35 tests, 35 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 +[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 + 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]); + + NI = 6; xi_ind = [1 20 90 200 300 350]; + xi = xt(xi_ind, 1); + zi = (1:NI)'; % linear response ;-) + + % 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); + + % 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/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/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); + 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/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); + 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/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/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/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); + 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_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 + + n = 20; d = 1; + x_obs = stk_sampling_regulargrid (n, d, [0; 2*pi]); + z_obs = stk_feval (@sin, x_obs); + + lm_list = {stk_lm_null, stk_lm_constant, stk_lm_affine}; + + for j = 0:2 + for k = 1:(length (lm_list)) + + model = stk_model (@stk_materncov32_iso, d); + model.lm = lm_list{k}; + model.param = log ([1; 5]); + + switch j % test various scenarios for lognoisevariance + case 0 + model.lognoisevariance = -inf; + case 1 + model.lognoisevariance = 0; + case 2 + model.lognoisevariance = (1 + rand (n, 1)) * 1e-3; + end + + M_post = stk_model_gpposterior (model, x_obs, z_obs); + + [loo_pred, loo_res] = stk_predict_leaveoneout (M_post); + [direct_pred, direct_res] = stk_predict_leaveoneout_direct (M_post); + + assert (stk_isequal_tolrel (loo_pred, direct_pred)); + assert (stk_isequal_tolrel (loo_res, direct_res)); + + end + end +1 test, 1 passed, 0 known failure, 0 skipped +[inst/model/prior_struct/stk_model.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/prior_struct/stk_model.m +***** test model = stk_model (); +***** test model = stk_model (@stk_expcov_iso); +***** test model = stk_model (@stk_expcov_iso, 1); +***** test model = stk_model (@stk_expcov_iso, 3); +***** test model = stk_model (@stk_expcov_aniso); +***** test model = stk_model (@stk_expcov_aniso, 1); +***** test model = stk_model (@stk_expcov_aniso, 3); +***** test model = stk_model (@stk_materncov_iso); +***** test model = stk_model (@stk_materncov_iso, 1); +***** test model = stk_model (@stk_materncov_iso, 3); +***** test model = stk_model (@stk_materncov_aniso); +***** test model = stk_model (@stk_materncov_aniso, 1); +***** test model = stk_model (@stk_materncov_aniso, 3); +***** test model = stk_model (@stk_materncov32_iso); +***** test model = stk_model (@stk_materncov32_iso, 1); +***** test model = stk_model (@stk_materncov32_iso, 3); +***** test model = stk_model (@stk_materncov32_aniso); +***** test model = stk_model (@stk_materncov32_aniso, 1); +***** test model = stk_model (@stk_materncov32_aniso, 3); +***** test model = stk_model (@stk_materncov52_iso); +***** test model = stk_model (@stk_materncov52_iso, 1); +***** test model = stk_model (@stk_materncov52_iso, 3); +***** test model = stk_model (@stk_materncov52_aniso); +***** test model = stk_model (@stk_materncov52_aniso, 1); +***** test model = stk_model (@stk_materncov52_aniso, 3); +***** test model = stk_model (@stk_gausscov_iso); +***** test model = stk_model (@stk_gausscov_iso, 1); +***** test model = stk_model (@stk_gausscov_iso, 3); +***** test model = stk_model (@stk_gausscov_aniso); +***** test model = stk_model (@stk_gausscov_aniso, 1); +***** test model = stk_model (@stk_gausscov_aniso, 3); +***** test model = stk_model (@stk_sphcov_iso); +***** test model = stk_model (@stk_sphcov_iso, 1); +***** test model = stk_model (@stk_sphcov_iso, 3); +***** test model = stk_model (@stk_sphcov_aniso); +***** test model = stk_model (@stk_sphcov_aniso, 1); +***** test model = stk_model (@stk_sphcov_aniso, 3); +37 tests, 37 passed, 0 known failure, 0 skipped +[inst/model/prior_struct/stk_covmat_noise.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/model/prior_struct/stk_covmat_noise.m +***** shared model, model2, x1, x2, n1, n2, d, Ka, Kb, Kc, Pa, Pb, Pc, P1, P2, P3, K1, K2, K3 + n1 = 20; n2 = 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); + x1 = stk_sampling_randunif (n1, d); + x2 = stk_sampling_randunif (n2, d); +***** error [KK, PP] = stk_covmat_noise (); +***** error [KK, PP] = stk_covmat_noise (model); +***** test [Ka, Pa] = stk_covmat_noise (model, x1); % (1) +***** test [K1, P1] = stk_covmat_noise (model, x1, []); +***** test [K2, P2] = stk_covmat_noise (model, x1, [], -1); +***** test [K3, P3] = stk_covmat_noise (model, x1, [], -1, false); +***** assert (isequal (size (Ka), [n1 n1])); +***** assert (isequal (size (Pa), [n1 0])); +***** assert (isequal (P1, Pa) && (isequal (K1, Ka))) +***** assert (isequal (P2, Pa) && (isequal (K2, Ka))) +***** assert (isequal (P3, Pa) && (isequal (K3, Ka))) +***** test [Kb, Pb] = stk_covmat_noise (model, x1, x1); % (2) +***** test [K1, P1] = stk_covmat_noise (model, x1, x1, -1); +***** test [K2, P2] = stk_covmat_noise (model, x1, x1, -1, false); +***** assert (isequal (size (Kb), [n1 n1])); +***** assert (isequal (size (Pb), [n1 0])); +***** assert (isequal (P1, Pb) && (isequal (K1, Kb))) +***** assert (isequal (P2, Pb) && (isequal (K2, Kb))) +***** test [Kc, Pc] = stk_covmat_noise (model, x1, x2); % (3) +***** test [K1, P1] = stk_covmat_noise (model, x1, x2, -1); +***** test [K2, P2] = stk_covmat_noise (model, x1, x2, -1, false); +***** assert (isequal (size (Kc), [n1 n2])); +***** assert (isequal (size (Pc), [n1 0])); +***** assert (isequal (P1, Pc) && (isequal (K1, Kc))) +***** assert (isequal (P2, Pc) && (isequal (K2, Kc))) +***** assert (isequal (Kb, Ka)); +***** test [Ka, Pa] = stk_covmat_noise (model2, x1); % (1') +***** test [Kb, Pb] = stk_covmat_noise (model2, x1, x1); % (2') +***** error assert (isequal (Kb, Ka)); +***** assert (isequal (Pa, Pb)); +***** assert (isequal (Pa, Pc)); +31 tests, 31 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 + n = 15; d = 4; + model = stk_model (@stk_materncov_aniso, d); + x = stk_sampling_randunif (n, d); + model = rmfield (model, 'lm'); % Test the old .order approach +***** error P = stk_ortho_func (); +***** error P = stk_ortho_func (model); +***** test P = stk_ortho_func (model, x); +***** test + model.order = -1; P = stk_ortho_func (model, x); + assert (isequal (size (P), [n, 0])); +***** test + model.order = 0; P = stk_ortho_func (model, x); + assert (isequal (size (P), [n, 1])); +***** test + model.order = 1; P = stk_ortho_func (model, x); + assert (isequal (size (P), [n, d + 1])); +***** test + model.order = 2; P = stk_ortho_func (model, x); + assert (isequal (size (P), [n, 1 + d * (d + 3) / 2])); +***** test + model.order = 3; P = stk_ortho_func (model, x); + assert (isequal (size (P), [n, 1 + d * (11 + d * (6 + d)) / 6])); +***** error + model.order = 4; P = stk_ortho_func (model, x); + % model.order > 3 is not allowed +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/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 + 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 + 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_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 + 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_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')); +***** test + lm = stk_lm_polynomial (2); + assert (isa (lm, 'stk_lm_quadratic')); +***** test + lm = stk_lm_polynomial (3); + assert (isa (lm, 'stk_lm_cubic')); 6 tests, 6 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') +[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/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') +[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/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')); +[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/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')); +[inst/lm/@stk_lm_constant/feval.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_constant/feval.m +***** 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/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 % 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)); +***** 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 -***** test % Call sqp using function name - if stk_optim_isavailable ('octavesqp') - assert (stk_optim_testmin_box ('octavesqp')); +10 tests, 10 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_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_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 -***** test % Call sqp directly, using algorithm object - if stk_optim_isavailable ('octavesqp') - algo = stk_optim_octavesqp (); - assert (stk_optim_testmin_box (algo)); +***** 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_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 -***** 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_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_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/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 +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 = @(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); +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_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_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_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_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/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_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_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_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_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_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_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/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_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 +***** 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 439 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.KcqI54N01m at line 1606 column 31 - f = @stk_testfun_braninhoo; - DIM = 2; - BOX = [[-5; 10], [0; 15]]; - NI = 20; - TOL_REL = 1e-2; - DELTA = 1e-6; +***** 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 439 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.KcqI54N01m at line 1606 column 31 - model = stk_model (@stk_materncov52_iso, DIM); - model.param = [1 1]; +***** 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 439 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.KcqI54N01m at line 1606 column 31 - xi = stk_sampling_halton_rr2 (NI, DIM, BOX); +***** 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 439 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.KcqI54N01m at line 1606 column 31 - 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 +warning: sqp: QP subproblem is non-convex and unbounded +warning: called from + sqp at line 439 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.KcqI54N01m at line 1606 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.KcqI54N01m at line 1606 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.KcqI54N01m at line 1606 column 31 + +warning: Something went wrong during the optimization +crit0 = -15.421654, crit_opt = -15.421654: crit0 < crit_opt +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 @@ -6035,7 +7769,7 @@ stk_param_estim at line 139 column 15 __test__ at line 5 column 14 test at line 682 column 11 - /tmp/tmp.yTb5CMg86Z at line 734 column 31 + /tmp/tmp.KcqI54N01m at line 1614 column 31 ***** test model = stk_model (@stk_materncov32_iso); @@ -6077,224 +7811,88 @@ stk_predict at line 104 column 16 __test__ at line 6 column 5 test at line 682 column 11 - /tmp/tmp.yTb5CMg86Z at line 734 column 31 + /tmp/tmp.KcqI54N01m at line 1614 column 31 ***** 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 = 1.97535e-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.yTb5CMg86Z at line 734 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.yTb5CMg86Z at line 734 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.yTb5CMg86Z at line 734 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.yTb5CMg86Z at line 734 column 31 - -15 tests, 15 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 439 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.yTb5CMg86Z at line 742 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 439 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.yTb5CMg86Z at line 742 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 439 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.yTb5CMg86Z at line 742 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 439 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 + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +warning: matrix singular to machine precision, rcond = 1.97535e-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.yTb5CMg86Z at line 742 column 31 + /tmp/tmp.KcqI54N01m at line 1614 column 31 -warning: sqp: QP subproblem is non-convex and unbounded +***** 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 - sqp at line 439 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 + 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.yTb5CMg86Z at line 742 column 31 + /tmp/tmp.KcqI54N01m at line 1614 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 +***** 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)); - param = stk_param_estim (model, x, z); +***** test % Constant response, noiseless model + [param, lnv] = stk_param_init (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. + assert (isequal (lnv, -inf)); +warning: Parameter estimation is impossible with constant-response data. warning: called from - stk_param_estim at line 95 column 5 - __test__ at line 5 column 8 + 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.yTb5CMg86Z at line 742 column 31 + /tmp/tmp.KcqI54N01m at line 1614 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 - 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 4 column 15 test at line 682 column 11 - /tmp/tmp.yTb5CMg86Z at line 742 column 31 - -warning: Something went wrong during the optimization -crit0 = -15.421654, crit_opt = -15.421654: crit0 < crit_opt -11 tests, 11 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); + /tmp/tmp.KcqI54N01m at line 1614 column 31 - assert ((isscalar (lnv)) && (lnv > -30) && (lnv < 30)); -1 test, 1 passed, 0 known failure, 0 skipped +15 tests, 15 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 @@ -6317,177 +7915,273 @@ ***** 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/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])); +[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 - 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 + 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); - 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))); + 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/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 - DIM = 1; nt = 400; - xt = stk_sampling_regulargrid (nt, DIM, [-1.0; 1.0]); + 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 - NI = 6; xi_ind = [1 20 90 200 300 350]; - xi = xt(xi_ind, 1); - zi = (1:NI)'; % linear response ;-) + f = @stk_testfun_braninhoo; + DIM = 2; + BOX = [[-5; 10], [0; 15]]; + NI = 20; + TOL_REL = 1e-2; + DELTA = 1e-6; - % 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); + model = stk_model (@stk_materncov52_iso, DIM); + model.param = [1 1]; - % 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); + 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/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_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 - 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_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 - 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_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/lm/@stk_lm_constant/feval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_constant/feval.m -***** 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_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')); -***** test - lm = stk_lm_polynomial (2); - assert (isa (lm, 'stk_lm_quadratic')); -***** 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_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') +[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/lm/@stk_lm_quadratic/feval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/lm/@stk_lm_quadratic/feval.m +[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 ***** 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])); + 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/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/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/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/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_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/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_kb07 # +# stk_example_kb08 # #========================# -'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_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 - STK_EXAMPLE_KB07 Simulation of sample paths from a Matern process + STK_EXAMPLE_KB08 Generation of conditioned sample paths made easy + + It has been demonstrated, in stk_example_kb05, how to generate conditioned + sample paths using unconditioned sample paths and conditioning by kriging. + + This example shows how to do the same in a more concise way, letting STK + take care of the details. Additional help for built-in functions and operators is @@ -6497,45 +8191,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. -No entry for terminal type "unknown"; -using dumb terminal settings. -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. -No entry for terminal type "unknown"; -using dumb terminal settings. - line 0: warning: iconv failed to convert degree sign - - |--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 #|#***&##=====*########==%| -response z*|###**##==#$**##=@@##=@*response z=|##**##*%%%*****===$$**==| - 0 #|==####******%*#####&=**&| -1 *|==###******#**==&&&&&**$| - -1 =|=@%%#*****=##=###*****&%| #|###***$$*****$$$#@@#****| - *|------------------------| -2 +|------------------------| - -2 +-+###+######+#####+###+-+ -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/01_kriging_basics/stk_example_kb02.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb02.m @@ -6612,34 +8267,17 @@ -1 -0.5 0 0.5 1 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; +[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_kb05 # +# stk_example_kb07 # #========================# -'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). +'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 - See also: stk_generate_samplepaths, stk_conditioning, stk_example_kb09 + STK_EXAMPLE_KB07 Simulation of sample paths from a Matern process Additional help for built-in functions and operators is @@ -6649,29 +8287,54 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. +No entry for terminal type "unknown"; +using dumb terminal settings. + line 0: warning: iconv failed to convert degree sign + + |--Matern, nu = 0.5------| |--Matern, nu = 1.5------| + 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 + |--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/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; +[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; -#========================# -# stk_example_kb03 # -#========================# +#=========================# +# stk_example_kb02n # +#=========================# -'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_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_KB03 Ordinary kriging in 2D + STK_EXAMPLE_KB02N Noisy ordinary kriging in 1D with parameter estimation - 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. + This example shows how to estimate covariance parameters and compute + ordinary kriging predictions on a one-dimensional noisy dataset. - 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 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. - The function is sampled on a space-filling Latin Hypercube design, and the - data is assumed to be noiseless. + See also: stk_example_kb01n, stk_example_kb02 Additional help for built-in functions and operators is @@ -6681,13 +8344,54 @@ 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 = -BOX = 2-dimensional hyper-rectangle (stk_hrect object): + scalar structure containing the fields: - : x_1 x_2 - lower_bounds : -5 0 - upper_bounds : 10 15 + 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 +No entry for terminal type "unknown"; +using dumb terminal settings. + 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_kb06.m] >>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/01_kriging_basics/stk_example_kb06.m @@ -6720,26 +8424,60 @@ 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; +[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/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_kb02n # +# stk_example_kb01n # #=========================# -'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_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_KB02N Noisy ordinary kriging in 1D with parameter estimation + STK_EXAMPLE_KB01N Ordinary kriging in 1D, with noisy data - This example shows how to estimate covariance parameters and compute - ordinary kriging predictions on a one-dimensional noisy dataset. + This example shows how to compute ordinary kriging predictions on a + one-dimensional noisy dataset. - 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. + The Gaussian Process (GP) prior is the same as in stk_example_kb01. - See also: stk_example_kb01n, stk_example_kb02 + 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 @@ -6761,60 +8499,62 @@ dim = 1 param = - -0.098610 - 2.302585 - 0.613435 - - lognoisevariance = -3.0915 + -0.6931 + 1.3863 + 0.9163 -True noise variance = 0.0400 -Estimated noise variance = 0.0454 + lognoisevariance = -3.2189 No entry for terminal type "unknown"; using dumb terminal settings. line 0: warning: iconv failed to convert degree sign - | True function and noisy observed data + | True function and 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##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**######################## + #|##############################**#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; +[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_kb08 # +# stk_example_kb03 # #========================# -'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 +'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_KB08 Generation of conditioned sample paths made easy + STK_EXAMPLE_KB03 Ordinary kriging in 2D - It has been demonstrated, in stk_example_kb05, how to generate conditioned - sample paths using unconditioned sample paths and conditioning by kriging. + 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. - This example shows how to do the same in a more concise way, letting STK - take care of the details. + 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 @@ -6824,6 +8564,13 @@ 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 + 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 @@ -6906,30 +8653,82 @@ input variable x 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; +[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_kb01n # -#=========================# +#========================# +# stk_example_kb05 # +#========================# -'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_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_KB01N Ordinary kriging in 1D, with noisy data + STK_EXAMPLE_KB05 Generation of conditioned sample paths - This example shows how to compute ordinary kriging predictions on a - one-dimensional noisy dataset. + A Matern Gaussian process model is used, with constant but unknown mean + (ordinary kriging) and known covariance parameters. - The Gaussian Process (GP) prior is the same as in stk_example_kb01. + 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). - The observation noise is Gaussian and homoscedastic (constant variance). - Its variance is assumed to be known. + 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). - 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_generate_samplepaths, stk_conditioning, stk_example_kb09 - See also: stk_example_kb01, stk_example_kb02n + +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/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 # +#==========================# + +'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 + + DESCRIPTION + + We consider a 1d prediction problem with noisy data, where the variance of + the noise depends on the input location. + + 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 + + tau^2(x) = phi * (x + 1) ^ 2, + + and the dispersion parameter phi is estimated together with the parameters + of the covariance function. + + EXPERIMENTAL FEATURE WARNING + + 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_kb09 Additional help for built-in functions and operators is @@ -6943,7 +8742,7 @@ scalar structure containing the fields: - covariance_type = @stk_materncov_iso + covariance_type = @stk_materncov52_iso lm = @@ -6951,60 +8750,62 @@ dim = 1 param = - -0.6931 - 1.3863 - 0.9163 + 0.066833 + 0.707310 - lognoisevariance = -3.2189 + lognoisevariance = + + + + + +gn = +| +| Heteroscedastic variance model: tau^2(x) = dispersion * variance_function(x) +| +| dispersion: 2.4169 [log_dispersion = 0.8825] +| variance_function: @(x) (x + 1) .^ 2 +| -No entry for terminal type "unknown"; -using dumb terminal settings. - 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_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; +[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_kb09 # -#========================# +#==========================# +# stk_example_misc04 # +#==========================# -'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_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_KB09 Generation of sample paths conditioned on noisy observations + STK_EXAMPLE_MISC04 Pareto front simulation - A Matern Gaussian process model is used, with constant but unknown mean - (ordinary kriging) and known covariance parameters. + DESCRIPTION - 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). + 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. - See also: stk_generate_samplepaths, stk_conditioning, stk_example_kb05 + 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. + + 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 + + This script uses the stk_plot_probdom2d function, which is currently + considered an experimental function. Read the help for more information. + + REFERENCE + + [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. + + See also: stk_plot_probdom2d Additional help for built-in functions and operators is @@ -7014,608 +8815,145 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. +No entry for terminal type "unknown"; +using dumb terminal settings. + line 0: warning: iconv failed to convert degree sign + +multiplot> set style increment default; + ^ + line 0: warning: deprecated command + Proba. of being dominated + simulated Pareto fronts--| || + |+ &&&$&&%&#&&&&&=&&*&&| +--+--+---+--+--+-+ ++||00% + 1000 +|+ % #$$*%%# @ @ =+ *-+| 1000 +---+##|###|##|+---+ || + #|####%##$$*%%##@#@#=##* | +##+##+###+##+##+#| || + #|####%##$$*%%##@#@#=##* | |#################| || + #|####%##$$*%%%%%%%%%%%%%%| |#################| || + 500 +|+###%##$$*#%##@#@#=##*-+| 500 +---+##########+---+ ++||5% + #|####%##$$*#%##@#@#=##* | |#################| || + #|####%##$$*#%##@#@#=##*##| |#################| || + #|####%##$$*#%#$@#@#=##* | |#################| || + 0 +|+###%##$$*#%#######second objective---+##########+---+ ++||0% + #|####%##$$*#%*#@#@@@@@*@@| |#################| || + #|####%%%$$$$$$$$$$$$$$$$$| |#################| || + #|#######**##%%%%%%%%%%*%%| -500 |#################| || + -500 +|+#######****************| +---+##########+---+ || + #|############*######### | |#################| ++||5% + #|############*######### | |#################| || + #|############************| -1000 |#################| || + -1000 +|+####################+-+| +---+##+###+##++---+ || + #|------------------------| |--|--|---|--|--|-+ || + ##+###+###+###+###+##+## -30-20-100001002000 ++-0% + -300-200-1000 0 1002000 + first objective first objective 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 -***** test stk_example_doe06; close all; +[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; -#=========================# -# stk_example_doe06 # -#=========================# +#==========================# +# stk_example_misc03 # +#==========================# -'stk_example_doe06' 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_doe06.m +'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_DOE06 Sequential design for the estimation of an excursion set + STK_EXAMPLE_MISC03 How to deal with (known) seasonality - In this example, we consider the problem of estimating the set - Gamma = { x in X | f(x) > z_crit }, +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. - where z_crit is a given value, and/or its volume. +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 = - In a typical "structural reliability analysis" problem, Gamma would - represent the failure region of a certain system, and its volume would - correspond to the probability of failure (assuming a uniform distribution - for the input). + scalar structure containing the fields: - A Matern 5/2 prior with known parameters is used for the function f, and - the evaluations points are chosen sequentially using any of the sampling - criterion described in [1] (see also [2], section 4.3). + covariance_type = @stk_materncov52_iso + lm = - REFERENCE + - [1] B. Echard, N. Gayton and M. Lemaire (2011). AK-MCS: an active - learning reliability method combining Kriging and Monte Carlo - simulation. Structural Safety, 33(2), 145-154. + dim = 1 + param = - [2] J. Bect, D. Ginsbourger, L. Li, V. Picheny and E. Vazquez (2012). - Sequential design of computer experiments for the estimation of a - probability of failure. Statistics and Computing, 22(3), 773-793. + 1.0666 + -1.6210 + lognoisevariance = -4.5610 -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. +model2 = -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): 19.93% + scalar structure containing the fields: -data_init = <4x2 stk_dataframe array> + covariance_type = @stk_materncov52_iso + lm = - : x z - initial design #1 : 0.000000 0.00000 - initial design #2 : 0.333333 -0.43063 - initial design #3 : 0.666667 -0.66886 - initial design #4 : 1.000000 -1.20558 +@(t) [ones(length (t), 1), sin(2 * pi * t / T0), cos(2 * pi * t / T0)] -No entry for terminal type "unknown"; -using dumb terminal settings. - line 0: warning: iconv failed to convert degree sign - - - |-------------------------Groung truth----------------------------| - 1 +|+ + + + + +-+| - +| + + + + +| - #|############################################################### | - 0.5 +|+#############################################################+-+| - #|############################################################### | - #|############################################################### | - $|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$| - 0 *|*****##***####***#######**#######**##########**########**#####+-+| - #|####****########**#####**#########*##########*##########*###### | - z #|#################***#***###########*########**##########**##### | - -0.5 +|+##################***#############**######**############*####+-+| - #|####################################**####**#############**#### | - #|#####################################******###############**### | - #|----------------------------+##############################**## | - -1 +|***?***z = f(x), below zcrit|###############################*#+-+| - #|###?###z = f(x), above zcrit|###############################*****| - +|-----------------------------------------------------------------| - -1.5 +-+##########+############+#############+############+##########+-+ - 0 0.2 0.4 0.6 0.8 1 - x - -Iteration #1 -| Current sample size: n = 4 -| Volume estimate (plugin): 0.00000 [ref: 0.19930] -| Upper-bound on posterior std: 4.1068e-01 [target: 5.000e-04] -No entry for terminal type "unknown"; -using dumb terminal settings. - line 0: warning: iconv failed to convert degree sign - - | - 4 +|+ ### - | #%%%%%%%%%## ###%%%### ######## - 2 +|+&&&&&&&&&&&&&&%#####%%&&&&&&&&&&&%#######%%&&&&&&&&%%### - 0 +|+###F###################################################### - z #|&&&&##########&***G*******************G*******************G - -2 +|+%%&&&&&&&&&&&&%#####%&&&&&&&&&&&&&&%###%&&&&&&#####&&&&&& - -4 +|+#####%%%%%##############%%%%%%%###########%%%&&&&&&&%%## - +|------------------------------------------------------------ - -6 +-+#########+###########+###########+###########+########## - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.5 +|+ + + + + +-+| - +| + + + + | - 0.4 +|****F******#############################################+-+| - 0.3 +|*#########****##########################################+-+| -criterion #|#############**#########********######################### | - 0.2 +|+#############**######***######***############***#######+-+| - 0.1 +|+##############**####**##########**########****#*****###+-+| - *|-----------------------------------------------------------| - 0 *-+#########+#####*****#+###########+*******####+#######***** - 0 0.2 0.4 0.6 0.8 - x -Iteration #2 -| Current sample size: n = 5 -| Volume estimate (plugin): 0.00000 [ref: 0.19930] -| Upper-bound on posterior std: 3.0305e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 4 +|+ - | ######## ######## - 2 +|+##########%%#########%&&&&&&&&&&&%#######%%&&&&&&&&%%### - 0 +|+########################################################## - z #|%%%##%&&&&&&&&&***G*********F*********G*******************G - -2 +|+####################%&&&&&&&&&&&&&&####%&&&&&&#####&&&&&& - -4 +|+#########################%%%%%%###########%%%&&&&&&&%%## - +|------------------------------------------------------------ - -6 +-+#########+###########+###########+###########+########## - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.25 +|+ + + **F* + + +-+| - +| + + *** *** + + | - 0.2 +|+######################**######***######################+-+| - 0.15 +|+########*****########**#########*###########*****######+-+| - #|########**###**#######*##########**########***###***##### | - 0.1 +|**#####**#####*######**###########**######**#######**###+-+| - 0.05 +|***####*######**#####*#############*#####**#########**##+-+| - +|-----------------------------------------------------------| - 0 **+#*****###+#####*****#+###########+#******####+########**** - 0 0.2 0.4 0.6 0.8 - x -Iteration #3 -| Current sample size: n = 6 -| Volume estimate (plugin): 0.09940 [ref: 0.19930] -| Upper-bound on posterior std: 2.7961e-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 +-+#########+###########+###########+###########+########## - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.5 +|+ + + * F + + +-+| - +| + + ** *** + + | - 0.4 +|+#######################***###*#*#######################+-+| - 0.3 +|+######################*##*###*#**######################+-+| -criterion #|######################**##*##**##*####################### | - 0.2 +|+#####################*###**#*###**#####################+-+| - 0.1 +|**###################**####*#*####*#####################+-+| - +|-----------------------------------------------------------| - 0 **+#******##+##*********+####***####+**********#+######****** - 0 0.2 0.4 0.6 0.8 - x -Iteration #4 -| Current sample size: n = 7 -| Volume estimate (plugin): 0.11280 [ref: 0.19930] -| Upper-bound on posterior std: 2.2823e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 3 +|+ - 2 +|+ ######## - 1 +|+###########################################%%&&&&&&%%### - 0 +|+#####################F#################################### - z &|&&=*G*************G***=&%#####*G******G**************==&&&# - -1 +|+######%&&&&&&&&&######################%&&&&&#######******G - -2 +|+##########################################%&&&&&&&&&&&&&# - -3 +|------------------------------------------------------------ - -4 +-+#########+###########+###########+###########+########## - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.5 +|+ + F * + + +-+| - +| + * * + + | - 0.4 +|+####################***#####*##########################+-+| - 0.3 +|+####################*#*#####*##########################+-+| -criterion #|#####################*#*#####*########################### | - 0.2 +|+####################*#**####*#################**#######+-+| - 0.1 +|***##################*##*####*##############*********###+-+| - +|-----------------------------------------------------------| - 0 **+##******************#+##******************###+#######***** - 0 0.2 0.4 0.6 0.8 - x -Iteration #5 -| Current sample size: n = 8 -| Volume estimate (plugin): 0.08010 [ref: 0.19930] -| Upper-bound on posterior std: 2.0839e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 3 +|+ - 2 +|+ ######## - 1 +|+##########################################%%&&&&&&&&%### - 0 +|+############################F############################# - z &|&&**G*************G***G%######*G******G***************=&&&# - -1 +|+#######%&&&&&&%###################%%##%&&&&&########*****G - -2 +|+##########################################%&&&&&&&&&&&&&# - -3 +|------------------------------------------------------------ - -4 +-+#########+###########+###########+###########+########## - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.5 +|+ + + * F + + +-+| - +| + + * * + + | - 0.4 +|+#######################*####*##########################+-+| - 0.3 +|+#######################*####*##########################+-+| -criterion #|########################*####*########################### | - 0.2 +|+#######################*####*###############******#####+-+| - 0.1 +|+######################***###*#############***####***###+-+| - +|-----------------------------------------------------------| - 0 **+#******##+#************#******************###+#######***** - 0 0.2 0.4 0.6 0.8 - x -Iteration #6 -| Current sample size: n = 9 -| Volume estimate (plugin): 0.07940 [ref: 0.19930] -| Upper-bound on posterior std: 2.0499e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 3 +|+ - 2 +|+ ######## - 1 +|+##########################################%%&&&&&&&&%### - 0 +|+#######################F################################## - z &|&&**G*************G***G#######*G******G****************&&&# - -1 +|+#######%&&&&&&%########################&&&&&&########****G - -2 +|+##########################################%%&&&&&&&&&&&&# - -3 +|------------------------------------------------------------ - -4 +-+#########+###########+###########+###########+########## - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.5 +|+ + + F + + +-+| - +| + + * + + | - 0.4 +|+#######################*###############################+-+| - 0.3 +|+#######################*###############################+-+| -criterion #|########################*################################ | - 0.2 +|+#######################*####################*******####+-+| - 0.1 +|+#######################**#################***#####***##+-+| - +|-----------------------------------------------------------| - 0 **+#******##+#************#******************###+#######***** - 0 0.2 0.4 0.6 0.8 - x -Iteration #7 -| Current sample size: n = 10 -| Volume estimate (plugin): 0.08300 [ref: 0.19930] -| Upper-bound on posterior std: 1.9771e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 3 +|+ - 2 +|+ ######## - 1 +|+##########################################%%&&&&&&&&%### - 0 +|+#######################F################################## - z &|&&**G*************G***G#######*G******G****************&&&# - -1 +|+#######%%&&&&%#########################&&&&&&########****G - -2 +|+##########################################%%&&&&&&&&&&&&# - -3 +|------------------------------------------------------------ - -4 +-+#########+###########+###########+###########+########## - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.5 +|+ + + F + + +-+| - +| + + * + + | - 0.4 +|+#######################*###############################+-+| - 0.3 +|+#######################*###############################+-+| -criterion #|########################*################################ | - 0.2 +|+#######################*####################*******####+-+| - 0.1 +|+#######################*##################***#####***##+-+| - +|-----------------------------------------------------------| - 0 **+#******##+##******************************###+#######***** - 0 0.2 0.4 0.6 0.8 - x -Iteration #8 -| Current sample size: n = 11 -| Volume estimate (plugin): 0.08310 [ref: 0.19930] -| Upper-bound on posterior std: 1.9699e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 3 +|+ - 2 +|+ ######## - 1 +|+##########################################%%&&&&&&&&%### - 0 +|+########################################################## - z &|&***G*************G***G#######*G******G********F*******&&&# - -1 +|+#######%%&&&&%#########################&&&&&&########****G - -2 +|+##########################################%%&&&&&&&&&&&&# - -3 +|------------------------------------------------------------ - -4 +-+#########+###########+###########+###########+########## - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.25 +|+ + + + + +-+| - +| + + + + | - 0.2 +|+############################################**F***#####+-+| - 0.15 +|+###########################################**####**####+-+| - #|###########################################**######**#### | - 0.1 +|+########**################################*########**##+-+| - 0.05 +|***####******#############################**#########**#+-+| - +|-----------------------------------------------------------| - 0 **+#*****###+##*****************************####+########**** - 0 0.2 0.4 0.6 0.8 - x -Iteration #9 -| Current sample size: n = 12 -| Volume estimate (plugin): 0.21330 [ref: 0.19930] -| Upper-bound on posterior std: 2.1427e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 1.5 +|+ - 1 +|+ #### - #|###########################################%&&&%&&&&&&%## - 0.5 +|+&&###%&&&&&&%%#########****G*###########%==***G****#&&%# - z 0 +|+###################################################F###### - -0.5 +|+&&&&&************G***#########G**&&%#%****&&%####%==***&& - #|######%&&&&##&&&&&###############*****G*&&%#########===***# - -1 +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+########### - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.5 +|+ + + + * + *F +-+| - +| + + + ** + ** | - 0.4 +|+##########################################**######**###+-+| - 0.3 +|+##########################################***#####***##+-+| -criterion #|###########################################*#*####**#*### | - 0.2 +|+##########################################*#*####*##*##+-+| - 0.1 +|+#########################################*##*####*##**#+-+| - +|-----------------------------------------------------------| - 0 **+#******##+##******************************###****####***** - 0 0.2 0.4 0.6 0.8 - x -Iteration #10 -| Current sample size: n = 13 -| Volume estimate (plugin): 0.19620 [ref: 0.19930] -| Upper-bound on posterior std: 1.5099e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 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 - |-----------------------------------------------------------| - 0.5 +|+ + + + F + * +-+| - +| + + + * + * | - 0.4 +|+#########################################**#####*######+-+| - 0.3 +|+#########################################**#####*######+-+| -criterion #|##########################################**#####*####### | - 0.2 +|+#########################################**#####*######+-+| - 0.1 +|+########################################***#####*######+-+| - +|-----------------------------------------------------------| - 0 **+#******##+##*****************************##*************** - 0 0.2 0.4 0.6 0.8 - x -Iteration #11 -| Current sample size: n = 14 -| Volume estimate (plugin): 0.19770 [ref: 0.19930] -| Upper-bound on posterior std: 1.1225e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 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 - |-----------------------------------------------------------| - 0.5 +|+ + + + * + F +-+| - +| + + + * + * | - 0.4 +|+#########################################*######*######+-+| - 0.3 +|+#########################################*######*######+-+| -criterion #|##########################################*######*####### | - 0.2 +|+#########################################*######*######+-+| - 0.1 +|+#########################################*######*######+-+| - +|-----------------------------------------------------------| - 0 **+#******##+##********************************************** - 0 0.2 0.4 0.6 0.8 - x -Iteration #12 -| Current sample size: n = 15 -| Volume estimate (plugin): 0.19930 [ref: 0.19930] -| Upper-bound on posterior std: 1.0040e-01 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 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 - |-----------------------------------------------------------| - 0.5 +|+ + + + + +-+| - +| + + + + | - 0.4 +|+#########################################F#############+-+| - 0.3 +|+#########################################*#############+-+| -criterion #|##########################################*############## | - 0.2 +|+#########################################*#############+-+| - 0.1 +|+#########################################*#############+-+| - +|-----------------------------------------------------------| - 0 **+#******##+##********************************************** - 0 0.2 0.4 0.6 0.8 - x -Iteration #13 -| Current sample size: n = 16 -| Volume estimate (plugin): 0.19930 [ref: 0.19930] -| Upper-bound on posterior std: 9.9046e-02 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 1 +|+ - | ###### &*** - 0.5 +|+%%###%&&&&&&%##########****G##############***&G**####### - 0 +|+########################################################## - z %|&&&*G****F****====&****#######*G*%#####&**########**##### - -0.5 +|+#####&&&#####****G*&###########***&&&G**###########G*### - -1 +|+######%&&&&&&&&%################&*****##############***&% - +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+#########%% - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.12 +|+ + + + + +-+| - 0.1 +|+ + + + + +-+| - #|######################################################### | - 0.08 +|**######*F**############################################+-+| - 0.06 +|**######*##**###########################################+-+| - 0.04 +|***####**###*###########################################+-+| - #|##*####*####**########################################### | - 0.02 +|-----------------------------------------------------------| - 0 **+##****###+###********************************************* - 0 0.2 0.4 0.6 0.8 - x -Iteration #14 -| Current sample size: n = 17 -| Volume estimate (plugin): 0.19930 [ref: 0.19930] -| Upper-bound on posterior std: 9.7818e-02 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 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 - |-----------------------------------------------------------| - 0.2 +|+ + + + + +-+| - +| + + + + | - 0.15 +|+#######***F############################################+-+| - #|########*****############################################ | - 0.1 +|+#######***#*###########################################+-+| - #|#######****#*############################################ | - 0.05 +|+######*#**#**##########################################+-+| - +|-----------------------------------------------------------| - 0 **********#**##********************************************** - 0 0.2 0.4 0.6 0.8 - x -Iteration #15 -| Current sample size: n = 18 -| Volume estimate (plugin): 0.19930 [ref: 0.19930] -| Upper-bound on posterior std: 2.8618e-02 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 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 - |-----------------------------------------------------------| - 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 - x -Iteration #16 -| Current sample size: n = 19 -| Volume estimate (plugin): 0.19930 [ref: 0.19930] -| Upper-bound on posterior std: 1.0965e-02 [target: 5.000e-04] - line 0: warning: iconv failed to convert degree sign - - | - 1 +|+ - | &*** - 0.5 +|+#######################****G##############***&G**####### - 0 +|+########################################################## - z %|F***G*=&#####&****&****#######*G*%#####&**########**##### - -0.5 +|+###############&*G*&###########***&&&G**###########G*### - -1 +|+################################&*****##############***&% - +|------------------------------------------------------------ - -1.5 +-+#########+###########+###########+###########+#########%% - 0 0.2 0.4 0.6 0.8 - |-----------------------------------------------------------| - 0.005 +|+ + + + + +-+| - +|F + + + + | - 0.004 +|**######################################################+-+| - 0.003 +|**######################################################+-+| - #|**####################################################### | - 0.002 +|+*######################################################+-+| - 0.001 +|+*######################################################+-+| - +|-----------------------------------------------------------| - 0 **+#********************************************************* - 0 0.2 0.4 0.6 0.8 - x -Iteration #17 -| Current sample size: n = 20 -| Volume estimate (plugin): 0.19930 [ref: 0.19930] -| Upper-bound on posterior std: 2.5334e-04 [target: 5.000e-04] + dim = 1 + param = -history = <20x5 stk_dataframe array> + 3.2657 + -8.1781 - : 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.1993 1993 - MC point #06938 : 0.104143 -0.13300 0.0000 -0.1993 1993 - MC point #01855 : 0.497466 0.26575 0.0994 -0.0999 1667 - MC point #04851 : 0.548828 -0.19838 0.1128 -0.0865 1503 - MC point #05438 : 0.400536 -0.08705 0.0801 -0.1192 1192 - MC point #05180 : 0.514002 0.15515 0.0794 -0.1199 1199 - MC point #02713 : 0.432856 0.17728 0.0830 -0.1163 1163 - MC point #07019 : 0.429135 0.15046 0.0831 -0.1162 1162 - MC point #05054 : 0.823878 0.46118 0.2133 0.0140 658 - MC point #08968 : 0.893445 -0.43563 0.1962 -0.0031 31 - MC point #04522 : 0.738594 0.17298 0.1977 -0.0016 16 - MC point #03349 : 0.852858 0.16902 0.1993 0.0000 0 - MC point #00383 : 0.736716 0.15078 0.1993 0.0000 0 - MC point #01081 : 0.191198 0.12436 0.1993 0.0000 0 - MC point #09120 : 0.210763 0.14264 0.1993 0.0000 0 - MC point #09050 : 0.224502 0.12036 0.1993 0.0000 0 - MC point #05205 : 0.035213 0.01555 0.1993 0.0000 0 + lognoisevariance = -4.5472 -Final result: -| Number of evaluations: 4 + 16 = 20. -| Volume estimate (plugin): 19.9300% [ref: 19.9300%] +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 # +#==========================# + +'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_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 +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/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; +[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_doe01 # -#=========================# +#==========================# +# stk_example_misc02 # +#==========================# -'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_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 - STK_EXAMPLE_DOE01 Examples of two-dimensional designs + STK_EXAMPLE_MISC02 How to use priors on the covariance parameters - All designs are constructed on the hyper-rectangle BOX = [0; 2] x [0; 4]. + 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. - 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. + 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 @@ -7625,6 +8963,33 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. +No entry for terminal type "unknown"; +using dumb terminal settings. + 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 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 @@ -7977,26 +9342,26 @@ - |----------------------n = 10, fd = 3.72e-01-------------------------| - 1 +|+ + +F + + +-F| + |----------------------n = 10, fd = 3.36e-01-------------------------| + 1 +|+ F + + + + +-+| +| + + + + +| + #|######################################F############################ | #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### | + 0.8 +|+#################################################################F-+| #|################################################################### | - 0.6 +|+###############F#################################################+-+| #|################################################################### | - #|######################################################F############ | + 0.6 +|+#########F#######################################################+-+| + #|#######################################################F########### | #|################################################################### | - 0.4 +|+#################################################################+-+| + #|######################F############################################ | + 0.4 +|+########################################F########################+-+| #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+#################################################################+-+| + #|################################################################### F| + 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 @@ -8007,26 +9372,26 @@ - |----------------------n = 11, fd = 3.54e-01-------------------------| - 1 +|+ + +F + + +-F| + |----------------------n = 11, fd = 3.25e-01-------------------------| + 1 +|+ F + + + + +-+| +| + + + + +| + #|######################################F############################ | #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### | + 0.8 +|+#################################################################F-+| #|################################################################### | - 0.6 +|+###############F#################################################+-+| #|################################################################### | - #|######################################################F############ | + 0.6 +|+#########F#######################################################+-+| + #|#######################################################F########### | #|################################################################### | - 0.4 +|+#################################################################+-+| + #|######################F############################################ | + 0.4 +|+########################################F########################+-+| #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+#################################################################+-+| + #|################################################################### F| + 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 @@ -8037,26 +9402,26 @@ - |----------------------n = 12, fd = 3.18e-01-------------------------| - 1 +|+ + +F + + +-F| + |----------------------n = 12, fd = 3.07e-01-------------------------| + 1 +|+ F + + + + +-+| +| + + + + +| + #|######################################F############################ | #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### | + 0.8 +|+#################################################################F-+| #|################################################################### | - 0.6 +|+###############F#################################################+-+| #|################################################################### | - #|######################################################F############ | + 0.6 +|+#########F#######################################################+-+| + #|#######################################################F########### | #|################################################################### | - 0.4 +|+#################################################################+-+| + #|######################F############################################ | + 0.4 F|+########################################F########################+-+| #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+#################################################################+-+| + #|################################################################### F| + 0.2 +|+###############F#################################################+-+| #|################################################################### | - #|#####################F############################################# | + #|###############################################F################### | +|---------------------------------------------------------------------| - 0 F-+###########+#############+#############+#############+####F######+-+ + 0 F-+###########+#############+####F########+#############+###########+-+ 0 0.2 0.4 0.6 0.8 1 line 0: warning: iconv failed to convert degree sign @@ -8067,26 +9432,26 @@ - |----------------------n = 13, fd = 2.80e-01-------------------------| - 1 +|+ + +F + + +-F| + |----------------------n = 13, fd = 2.78e-01-------------------------| + 1 +|+ F + + + + +-+| +| + + + + +| + #|######################################F############################ | #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| + 0.8 +|+#################################################################F-+| #|################################################################### | #|################################################################### | - 0.6 +|+###############F#################################################+-+| - #|##################################F################################ | - #|######################################################F############ | + 0.6 +|+#########F#######################################################+-+| + #|#######################################################F########### | #|################################################################### | - 0.4 +|+#################################################################+-+| + #|######################F############################################ | + 0.4 F|+########################################F########################+-+| #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+#################################################################+-+| + #|################################################################### 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 @@ -8097,26 +9462,26 @@ - |----------------------n = 14, fd = 2.79e-01-------------------------| - 1 +|+ + +F + + +-F| + |----------------------n = 14, fd = 2.72e-01-------------------------| + 1 +|+ F + + + +F +-+| +| + + + + +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+#################################################################F-+| #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### F| #|################################################################### | - 0.6 +|+###############F#################################################+-+| - #|##################################F################################ | - #|######################################################F############ | + 0.6 +|+#########F#######################################################+-+| + #|#######################################################F########### | #|################################################################### | - 0.4 +|+#################################################################+-+| + #|######################F############################################ | + 0.4 F|+########################################F########################+-+| #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+#################################################################+-+| + #|################################################################### 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 @@ -8127,26 +9492,26 @@ - |----------------------n = 15, fd = 2.58e-01-------------------------| - 1 +|+ + +F + + +-F| + |----------------------n = 15, fd = 2.66e-01-------------------------| + 1 +|+ F + F + + +F +-+| +| + + + + +| + #|######################################F############################ | #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### F| + 0.8 +|+#################################################################F-+| #|################################################################### | - 0.6 +|+###############F#################################################+-+| - #|##################################F################################ | - #|######################################################F############ | #|################################################################### | - 0.4 +|+####################F############################################+-+| + 0.6 +|+#########F#######################################################+-+| + #|#######################################################F########### | #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+#################################################################+-+| + #|######################F############################################ | + 0.4 F|+########################################F########################+-+| + #|################################################################### | + #|################################################################### 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 @@ -8157,26 +9522,26 @@ - |----------------------n = 16, fd = 2.44e-01-------------------------| - 1 +|+ + +F + + +-F| + |----------------------n = 16, fd = 2.53e-01-------------------------| + 1 +|+ F + F + + +F +-+| +| + + + + +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+#################################################################F-+| #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### F| - F|################################################################### | - 0.6 +|+###############F#################################################+-+| - #|##################################F################################ | - #|######################################################F############ | #|################################################################### | - 0.4 +|+####################F############################################+-+| + 0.6 +|+#########F#########################F#############################+-+| + #|#######################################################F########### | #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+#################################################################+-+| + #|######################F############################################ | + 0.4 F|+########################################F########################+-+| + #|################################################################### | + #|################################################################### 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 @@ -8187,26 +9552,26 @@ - |----------------------n = 17, fd = 2.40e-01-------------------------| - 1 +|+ + +F + F + +-F| + |----------------------n = 17, fd = 2.33e-01-------------------------| + 1 +|+ F + F + + +F +-+| +| + + + + +| + #|######################################F############################ | + #|################################################################### | + 0.8 +|+######################F##########################################F-+| #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### F| - F|################################################################### | - 0.6 +|+###############F#################################################+-+| - #|##################################F################################ | - #|######################################################F############ | #|################################################################### | - 0.4 +|+####################F############################################+-+| + 0.6 +|+#########F#########################F#############################+-+| + #|#######################################################F########### | #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+#################################################################+-+| + #|######################F############################################ | + 0.4 F|+########################################F########################+-+| + #|################################################################### | + #|################################################################### 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 @@ -8217,26 +9582,26 @@ - |----------------------n = 18, fd = 2.40e-01-------------------------| - 1 +|+ + +F + F + +-F| + |----------------------n = 18, fd = 2.23e-01-------------------------| + 1 +|+ F + F + + +F +-+| +| + + + + +| + #|######################################F############################ | + #|################################################################### | + 0.8 F|+######################F##########################################F-+| #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### F| - F|################################################################### | - 0.6 +|+###############F#################################################+-+| - #|##################################F################################ | - #|######################################################F############ | #|################################################################### | - 0.4 +|+####################F############################################+-+| + 0.6 +|+#########F#########################F#############################+-+| + #|#######################################################F########### | #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+####F############################################################+-+| + #|######################F############################################ | + 0.4 F|+########################################F########################+-+| + #|################################################################### | + #|################################################################### 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 @@ -8247,26 +9612,26 @@ - |----------------------n = 19, fd = 2.21e-01-------------------------| - 1 F|+ + +F + F + +-F| + |----------------------n = 19, fd = 2.12e-01-------------------------| + 1 +|+ F + F + + +F +-+| +| + + + + +| + #|######################################F############################ | + #|################################################################### | + 0.8 F|+######################F##########################################F-+| #|################################################################### | - #|##########F######################################################## | - 0.8 +|+###############################################F#################+-+| - #|################################################################### F| - F|################################################################### | - 0.6 +|+###############F#################################################+-+| - #|##################################F################################ | - #|######################################################F############ | #|################################################################### | - 0.4 +|+####################F############################################+-+| + 0.6 +|+#########F#########################F#############################+-+| + #|#######################################################F########### | #|################################################################### | - #|##########################################F######################## F| - 0.2 +|+####F############################################################+-+| + #|######################F############################################ | + 0.4 F|+########################################F########################+-+| + #|################################################################### | + #|################################################################### F| + 0.2 +|+###############F##############F##################################+-+| #|################################################################### | - #|#####################F############################################# | + #|###############################################F################### | +|---------------------------------------------------------------------| - 0 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 @@ -8310,25 +9675,25 @@ | n = 5 + 0 = 5. 15 +|+ - 10 +|+ ######## ###### ### - #|#%%&&&&&&&&%%%%%%%%%%%%###########========&%&&&&&%%%##### - 5 +|+&&&#######&&&&&&&&&&&&&&%####%====&&#####*G=###&&&&&&%## - z 0 +|+************G*******###&&&&====##********&&*******##&&&&%# - -5 +|+&&####&&&&&&&&&====********G******###&&&&&%&&===#*****#&&& - %|%%&&&&&&%%#####%%&&&&&&&&&&&&&&&&&&&&&&%######%&===&###***G + 10 +|+######## ##%%%%%%%%%%%%%%### + %|&&&&&&&&%%#########%%%#########%%&========&G&&&&&&&&%%### + 5 +|+#######&&&&&&&&&&&&&&&&&&%%%&&====#*************##&&&&%# + z 0 +|+************G*==########&&&==*******##&&&&&===#*****#&&&&% + -5 +|+&&&#######&&&**************G**###&&&&&&%####%===&##******& + #|#%%%&&&&&&&&%%&&&&&&&&&&&&&&&&&&&&&%%%##########===&&&&&==G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+#########+ + -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.16 +|+ + + + + + +-+| - 0.14 +|+ + + + + + +-+| - 0.12 +|+#####################*F**###########################***+-+| - 0.1 +|+####################**##*##########################**#*+-+| - AKG0.08 +|+###################**####*####****#################*###*-+| - 0.06 +|+###################*#####**#**###**###############*####*-+| - 0.04 +|+##################*#######***#####**#############*#####+**| - 0.02 +|-----------------------------------------------------------| - 0 ******##************+#########+########*************######+-+ + 0.4 +|+ + + + + + +-+| + 0.35 +|+ + + + + + +-+| + 0.3 +|+##################**F**################################+-+| + 0.25 +|+##################*###**###############################+-+| + AKG 0.2 +|+#################*#####**##############################+-+| + 0.15 +|+################*#######*##############################+-+| + 0.1 +|+###############**########*##########################**#+-+| + 0.05 +|-----------------------------------------------------------| + 0 ******####+#*****###+#########+######****************#####+-+ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign @@ -8339,26 +9704,26 @@ | n = 5 + 5 = 10. - 15 +|+ - 10 +|+ ######## #%%&&%%## - #|#%%&&&&&&&&&%%%%%%%#############%&========&&%############ - 5 +|+&&########&&&&&&&&&&&%%####%%&=G**********G=&&&%######## - z 0 +|+************G********&&&&&&=****&&&&&&&&&&&****&&&%##### - -5 +|+&&####&&&&&&&&&=====**G****G&&&%#########%%&&=*****&&&&&&& - #|%%&&&&&&%%#######%%&&&&&&&&&%#################%&===*G*G***G + 15 +|+ #### + 10 +|+ ####### ##%%&&&&&%## + %|%&&&&&&&%%#####################%&&========&G&############ + 5 +|+######&&&&&&%%%%%%%########%&&====**********&&%######### + z 0 +|+************G===&&&&&&&&&&&=******###&&&&&&***&&######## + -5 +|+&&&########&&*******G******G*##&&&&&&&%%###&&=**&&######%& + #|#%%&&&&&&&&&%%%&&&&&&&&&&&&&&&&&%%%%%#########%&=***&&G&**G -10 +|------------------------------------------------------------ -15 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.5 +|+ + + + + + +-+| - +| + + + + + +| - 0.4 +|+##################################################**F##+-*| - 0.3 +|+#################################################*###*#+-*| - AKG #|################################################**####*## *| - 0.2 +|+##############################################**######*+*+| - 0.1 +|+#############################################**#######*+*+| - +|-----------------------------------------------------------| - 0 **********************************************####+#######+-+ + 0.12 +|+ + + + + + +-+| + 0.1 +|+ + + + + +*F* +-+| + #|################################################**#*####** | + 0.08 +|+##############################################**###*##****| + AKG0.06 +|+##############################################*####*##*+-+| + 0.04 +|+#############################################*#####**#*+-+| + #|#############################################**######**## | + 0.02 +|-----------------------------------------------------------| + 0 ***********************************************###+####**#+-+ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign @@ -8369,26 +9734,26 @@ | n = 5 + 10 = 15. - 20 +|+ - | ####### #%%%%%%# - 10 +|+%%&&&&&&&&%###%%%%%############%&&&====&&&%############# - &|&&&&######&&&&&&&&&&&&&%#####%&=G**********G=&%%######### - z 0 +|+************G*********G&&&==****&&&&&&&&&&****&&%####### - &|&&&#####&&&&&%&&&======*****G&&&#####%%%%##%&&****&&&&G&&&G - -10 +|+%&&&&&&&%%######%%%%%%#%%%%%################%&&&***GG**G*G + 20 +|+ ##### + | ######## ##%%&&&&&%# + 10 +|+&&&&&&&&%%####################%&&&&====&&&&%############ + &|&&######&&&&&%%&&&&%%###%%###%&====********G*&&########## + z 0 +|+************G*****&&&&&&&&==*******###&&&&&***&%######## + %|&&&#######&&&&&&&=***G******G*&&##&&&&&&%###%&&**=&####%&&G + -10 +|+%%&&&&&&&&%%##%%&&%%%%%&&%%%%%&&&&%%%########%&&*G*G*G*G** +|------------------------------------------------------------ -20 +-+#######+#########+#########+#########+#########+######## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.4 +|+ + + + + + +-+| - 0.35 +|+ + + + + + +-+| - 0.3 +|+################################################*F#####+-+| - 0.25 +|+################################################*#*####+-+| - AKG 0.2 +|+###############################################*##*####+-+| - 0.15 +|+##############################################*###*##**+-+| - 0.1 +|+############################################***####*#*#*-+| - 0.05 +|-----------------------------------------------------------| - 0 ******###*************************************####+###**##+-* + 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 @@ -8399,26 +9764,26 @@ | n = 5 + 15 = 20. - 20 +|+ - | ####### #%%%%%%# - 10 +|+%%&&&&&&&&%###%%%%%############%&&&====&&&%############# - &|&&&&######&&&&&&&&&&&&&%#####%&=G**********G=&%########## - z 0 +|+************G*********G&&&==****&&&&&&&&&&****&%######## - &|&&&#####&&&&&%&&&======*****G&&&#####%%%%##%&&***G&%%%GG&&G - -10 +|+%&&&&&&&%%######%%%%%%#%%%%%#################%&&GG*GG**G*G - +|------------------------------------------------------------ - -20 +-+#######+#########+#########+#########+#########+######## + + 20 +|+ ##### + 15 +|+ #%%%%%%%% + 10 +|+###############################%&&&&&&&&&&%############# + 5 +|+&&&&%########################%&&=====*****G&&########### + z G|****==========&&&&&&&&&&&&&&&&===******##&&***&&######### + 0 +|+=#***G******G*******G******G*****####&&&&%%&***&######## % + -5 +|+&&&&&&&&&&&&&&&&&&&======&&&&&&&&&&&&%%#####%&**G=%#G%&&*G + -10 +|------------------------------------------------------------ + -15 +-+#######+#########+#########+#########+#########+#G%%%### + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.12 +|+ + + + + + F* *+-+| - 0.1 +|+ + + + + + ** ***-+| - #|#################################################*#*##*#* | - 0.08 +|+################################################*##**##*-+| - AKG0.06 +|+###############################################**##**##+*+| - 0.04 +|+###############################################*###**##+*+| - #|###****########################################**###**###* | - 0.02 +|-----------------------------------------------------------| - 0 *****#####+***************************************+#######+-+ + 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 @@ -8430,25 +9795,25 @@ | n = 5 + 20 = 25. 20 +|+ - 15 +|+ ### ###### - 10 +|+##%%%%%%%########################&&&&&&&&############### - 5 +|+&&&&&&&&&&&&&&&&&&&%%#########&G=*******==&%############ - z &|&====********G****#&&&&&%%%%&&=****&&&&##**G*=&########## - 0 +|+*****####&&&====******G*******&&&&%%%&&&&&&****&######## - -5 +|+&&&&&&&&&&%%#%%&&&&======&&G&%#############%&&**GG&G&GG**G + 15 +|+ ##%%%%%%# + 10 +|+###############################%%&&&&&&&&&%############# + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&&***&&######### + 0 +|+=&***G******G*******G******G****####&&&&&%&&***&######## # + -5 +|+%&&&&&&&&&&&&&&&&&&======&&&&&&&&&&&&%######%&**G=##G#%&*G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + -15 +-+#######+#########+#########+#########+#########+#G#%%G## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| 0.08 +|+ + + + + + +-+| - 0.07 +|+ + + + + + F+-+| - 0.06 +|+#################################################**##***-+| + 0.07 +|+ + + + + + +-+| + 0.06 +|+#################################################**##*F*-+| 0.05 +|+#################################################**##*#*-+| - AKG0.04 +|+################################################*#*##*#*-+| - 0.03 +|+################################################*##**##+*+| - 0.02 +|+###############################################*###**##+*+| + 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 @@ -8460,25 +9825,25 @@ | n = 5 + 25 = 30. 20 +|+ - 15 +|+ ### ###### - 10 +|+##%%%%%%%########################&&&&&&&&############### - 5 +|+&&&&&&&&&&&&&&&&&&&%%#########&G=*******==&%############ - z &|&====********G****#&&&&&%%%%&&=****&&&###**G*=&########## - 0 +|+*****####&&&====******G*******&&&&%%%&&&&&&****&######## - -5 +|+&&&&&&&&&&%%#%%&&&&======&&G&%#############%&&**GG&G%GG&*G + 15 +|+ ##%%%%%%# + 10 +|+###############################%%&&&&&&&&&%############# + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&&***&&######### + 0 +|+=&***G******G*******G******G****####&&&&&%&&***&######## # + -5 +|+%&&&&&&&&&&&&&&&&&&======&&&&&&&&&&&&%######%&**G=G#G##&*G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + -15 +-+#######+#########+#########+#########+#########+#GG#%G## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.08 +|+ + + + + + +-+| - 0.07 +|+ + + + + + F* *-+| - 0.06 +|+#################################################***##**-+| - 0.05 +|+#################################################*#*#**+*+| - AKG0.04 +|+#################################################*##**#+*+| - 0.03 +|+#################################################*##**#+*+| - 0.02 +|+################################################*###**#+-*| + 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 @@ -8489,26 +9854,26 @@ | n = 5 + 30 = 35. - 15 +|+ ### ###### - 10 +|+##%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&&%%%%%%%###########%&&==***===&&%############ - 5 +|+&##########&&&&&&&&&&&%#####%&=G****##****G=&%########## - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+########&&&&&&&======*G****G*&&%#########%%&&***&########& - %|%&&&&&&&&&%#####%%&&&&&&&&&&&%###############%&&*GG*GGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&%############# + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****####&&&&%%&&***&##G##### # + -5 +|+%%&&&&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*G#G##&*G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + -15 +-+#######+#########+#########+#########+#########+#GG##G## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.04 +|+ + + + + + F +-+| - +| + + + + + * * ** +| - 0.03 +|+#################################################*#*##**-+| - #|##################################################*#*#*#* | - AKG0.02 +|+#################################################*#*#*#*-+| - #|##################################################*##**##* | - 0.01 +|+################################################*###**#+*+| - +|-----------------------------------------------------------| - 0 ******###******************************************#######+-+ + 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 @@ -8519,26 +9884,26 @@ | n = 5 + 35 = 40. - 15 +|+ ### ###### - 10 +|+##%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&&%%%%%%%###########%&&==***===&&%############ - 5 +|+&##########&&&&&&&&&&&%#####%&=G****##****G=&%########## - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+########&&&&&&&======*G****G*&&%#########%%&&***&########& - %|%&&&&&&&&&%#####%%&&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&%############# + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****####&&&&&%&&***&##G##### # + -5 +|+%%&&&&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG##G*G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + -15 +-+#######+#########+#########+#########+#########+#GG##G## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.04 +|+ + + + + + +-+| - 0.035 +|+ + + + + + F +-+| - 0.03 +|+##################################################**##**-+| - 0.025 +|+#################################################*#*#*#*-+| - AKG 0.02 +|+#################################################*#*#*#*-+| - 0.015 +|+#################################################*##**#+*+| - 0.01 +|+#################################################*##**#+*+| + 0.03 +|+ + + + + + +-+| + 0.025 +|+ + + + + + ** *F-+| + #|###################################################**##** | + 0.02 +|+##################################################*#*#*+*+| + AKG0.015 +|+##################################################*#*#*+*+| + 0.01 +|+#################################################*##**#+-*| + #|##################################################*##**## | 0.005 +|-----------------------------------------------------------| - 0 ******###*******************************************######+-+ + 0 *****************************************************#####+-+ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign @@ -8549,26 +9914,26 @@ | n = 5 + 40 = 45. - 15 +|+ ### ###### - 10 +|+##%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&&%%%%%%%%##########%&&==****==&&%############ - 5 +|+&##########&&&&&&&&&&&%#####%&=G****##****G=&%########## - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+########&&&&&&&======*G****G*&&%#########%%&&***&########& - %|%&&&&&&&&&%#####%%&&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&############## + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG##G=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + -15 +-+#######+#########+#########+#########+#########+#GGG#G## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| 0.03 +|+ + + + + + +-+| - 0.025 +|+ + + + + + F +-+| - #|###################################################**##** | - 0.02 +|+#################################################*#*#*#*-+| - AKG0.015 +|+#################################################*#*#*#*-+| - 0.01 +|+#################################################*##**#*-+| - #|##################################################*##*##** | + 0.025 +|+ + + + + + *F **-+| + #|###################################################*#*#** | + 0.02 +|+##################################################*#*#***+| + AKG0.015 +|+##################################################*#*#*+*+| + 0.01 +|+##################################################*#*#*+**| + #|##################################################*##**## | 0.005 +|-----------------------------------------------------------| - 0 ******###******************************************#######+-+ + 0 *****************************************************##*##+-+ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign @@ -8579,26 +9944,26 @@ | n = 5 + 45 = 50. - 15 +|+ ### ###### - 10 +|+##%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&&%%%%%%%%##########%&&==****==&&%############ - 5 +|+&##########&&&&&&&&&&&%#####%&=G****##****G=&%########## - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+########&&&&&&&======*G****G*&&%#########%%&&***&########& - %|%&&&&&&&&&%#####%%&&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&%############# + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG##G*G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###G# + + -15 +-+#######+#########+#########+#########+#########+#GGG#G## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.03 +|+ + + + + + +-+| - 0.025 +|+ + + + + + F +-+| - #|###################################################**##** | - 0.02 +|+#################################################*#*#*#*-+| - AKG0.015 +|+#################################################*#*#*#*-+| - 0.01 +|+#################################################*##**#*-+| + 0.012 +|+ + + + + + +-+| + 0.01 +|+ + + + + + F+-+| + #|#######################################################** | + 0.008 +|+##################################################**#*#*-+| + AKG0.006 +|+##################################################**#*#*-+| + 0.004 +|+#################################################*##**#***| #|##################################################*##*##** | - 0.005 +|-----------------------------------------------------------| - 0 *****#####******************************************######+-+ + 0.002 +|-----------------------------------------------------------| + 0 ****************************************************###*##+-+ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign @@ -8609,26 +9974,26 @@ | n = 5 + 50 = 55. - 15 +|+ ### ###### - 10 +|+##%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&&%%%%%%%###########%&&==***===&&############# - 5 +|+&##########&&&&&&&&&&&%#####%&=G****##****G=&%########## - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+########&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%###############%&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&%############# + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG##G=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#G## + 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.014 +|+ + + + + + F +-+| + 0.012 +|+ + + + + + ** **-+| + 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 @@ -8639,26 +10004,26 @@ | n = 5 + 55 = 60. - 15 +|+ ### ###### - 10 +|+##%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&&%%%%%%%###########%&&==***===&&%############ - 5 +|+&##########&&&&&&&&&&&%#####%&=G****##****G=&%########## - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+########&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&%############# + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG##G=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#G## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.03 +|+ + + + + + +-+| - 0.025 +|+ + + + + + F *-+| - #|###################################################**##** | - 0.02 +|+##################################################*#*#**-+| - AKG0.015 +|+##################################################*#*#*+*+| - 0.01 +|+##################################################*#**#+*+| - #|##################################################*###*##**| - 0.005 +|-----------------------------------------------------------| - 0 ******###********************************************#####+-+ + 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 @@ -8669,26 +10034,26 @@ | n = 5 + 60 = 65. - 15 +|+ ### ###### - 10 +|+##%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&&%%%%%%%###########%&&==***===&&%############ - 5 +|+&##########&&&&&&&&&&&%#####%&=G****##****G=&%########## - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+&######&&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&############## + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG##G=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#G## + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.03 +|+ + + + + + +-+| - 0.025 +|+ + + + + + F +-+| - #|###################################################**##** | - 0.02 +|+##################################################*#*#**-+| - AKG0.015 +|+##################################################*#**#*-+| - 0.01 +|+#################################################*##**#+*+| - #|##################################################*##**##* | - 0.005 +|-----------------------------------------------------------| - 0 ******###********************************************#####+-+ + 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 @@ -8699,26 +10064,26 @@ | n = 5 + 65 = 70. - 15 +|+ ### ###### - 10 +|+##%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&&%%%%%%%###########%&&==***===&&############# - 5 +|+&##########&&&&&&&&&&&%#####%&=G****##****G=&########### - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+&######&&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&############## + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG##G=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#GG# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.03 +|+ + + + + + +-+| - 0.025 +|+ + + + + + +-+| - #|####################################################*###F | - 0.02 +|+###################################################**##**+| - AKG0.015 +|+##################################################*#*#*+*+| - 0.01 +|+##################################################*#*#*+**| - #|###################################################*##*## *| + 0.04 +|+ + + + + + +-+| + 0.035 +|+ + + + + + F **-+| + 0.03 +|+##################################################***#**-+| + 0.025 +|+##################################################*#*#**-+| + AKG 0.02 +|+##################################################*#*#***+| + 0.015 +|+##################################################*#**#+*+| + 0.01 +|+#################################################*##**#+**| 0.005 +|-----------------------------------------------------------| - 0 ******###********************************************#####+-+ + 0 *****************************************************#####+-+ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign @@ -8729,26 +10094,26 @@ | n = 5 + 70 = 75. - 15 +|+ # ###### - 10 +|+ #%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&%%%%%%%%###########%&&==***===&&############# - 5 +|+&##########&&&&&&&&&&&%#####%&=G****#*****G=&########### - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+&######&&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&############## + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&===*****###&****&&######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG#GG=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#GG# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.02 +|+ + + + + + +-+| - +| + + + + + F +| - 0.015 +|+###################################################*##**-+| + 0.02 +|+ + + + + + * F+-+| + +| + + + + + * ** +| + 0.015 +|+##################################################*#*#**-+| #|###################################################*#*#** | - AKG 0.01 +|+##################################################*#*#*+*+| - #|###################################################*#**##* | - 0.005 +|+##################################################*##*#+-*| + AKG 0.01 +|+##################################################*#*#**-+| + #|###################################################*#**##**| + 0.005 +|+##################################################*#**#+-+| +|-----------------------------------------------------------| - 0 *****#####*******************************************#####+-+ + 0 *****************************************************#####+-+ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign @@ -8759,26 +10124,26 @@ | n = 5 + 75 = 80. - 15 +|+ # ###### - 10 +|+ #%%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&%%%%%%%%###########%&&==***===&&############# - 5 +|+&##########&&&&&&&&&&&%#####%&=G****#*****G=&%########## - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+&######&&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&############## + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&==******###&****&%######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG#GG*G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#GG# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.014 +|+ + + + + + F +-+| - 0.012 +|+ + + + + + * **-+| + 0.014 +|+ + + + + + +-+| + 0.012 +|+ + + + + + F **-+| 0.01 +|+##################################################*#*#**-+| 0.008 +|+##################################################*#*#**-+| - AKG #|###################################################*#**#* | - 0.006 +|+##################################################*#**#+*+| - 0.004 +|+###***###########################################*###*#+**| + AKG #|###################################################*#**#***| + 0.006 +|+##################################################*#**#**+| + 0.004 +|+##################################################*#*##+-+| 0.002 +|-----------------------------------------------------------| - 0 *****#####*******************************************#####+-+ + 0 *****************************************************#####+-+ 0 2 4 6 8 10 12 x line 0: warning: iconv failed to convert degree sign @@ -8789,26 +10154,26 @@ | n = 5 + 80 = 85. - 15 +|+ ###### - 10 +|+ ##%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&%%%%%%%%###########%&&==***===&&############# - 5 +|+&##########&&&&&&&&&&&%#####%&=G****#*****G=&########### - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+&######&&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&############## + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&==******###&****&%######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG#GG=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#GG# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.03 +|+ + + + + + +-+| - 0.025 +|+ + + + + + F+-+| - #|###################################################**##** | - 0.02 +|+##################################################**#*#*-+| - AKG0.015 +|+##################################################*#**#*-+| - 0.01 +|+#################################################*##**#*-+| - #|##################################################*##**#** | - 0.005 +|-----------------------------------------------------------| - 0 ******###********************************************#####+-+ + 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 @@ -8819,26 +10184,26 @@ | n = 5 + 85 = 90. - 15 +|+ ###### - 10 +|+ ##%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&%%%%%%%%###########%&&===**===&&############# - 5 +|+&##########&&&&&&&&&&&%#####%&=G****#*****G=&########### - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+&######&&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&############## + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&==******###&****&%######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG#GG=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#GG# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.02 +|+ + + + + + +-+| - +| + + + + + +| - 0.015 +|+###################################################F##*+-+| - #|###################################################**##** | - AKG 0.01 +|+##################################################*#**#*-+| - #|###################################################*#**#* | - 0.005 +|+##################################################*#**#**+| - +|-----------------------------------------------------------| - 0 ******###********************************************#####+-+ + 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 @@ -8849,264 +10214,152 @@ | n = 5 + 90 = 95. - 15 +|+ ###### - 10 +|+ ##%%%%%%## #%&&&&&&%# - #|%%&&&&&&&&&&%%%%%%%%###########%&&==***===&&############# - 5 +|+&##########&&&&&&&&&&&%#####%&=G****#*****G=&########### - z 0 +|+************G********&&&&&&=***&&&&&&&&&&&***=&######### - -5 +|+&######&&&&&&&&=====**G****G&&&%#########%%&&***&####### % - %|%&&&&&&&&%%#####%%%&&&&&&&&&&%################&&*GGGGGGGG*G + 20 +|+ + 15 +|+ ##%%%%## + 10 +|+################################%&&&&&&&&&############## + 5 +|+&&&%%########################%&&=====*****G&%########### + z G|****==========&&&&&&&&&&&&&&&&==******###&****&%######### + 0 +|+=&***G******G*******G******G****###&&&&&%%&&***&##G##### # + -5 +|+%%%%%&&&&&&&&&&&&&&======&&&&&&&&&&&%%######%&**G*GGG#GG=G -10 +|------------------------------------------------------------ - -15 +-+#######+#########+#########+#########+#########+##G###GG + + -15 +-+#######+#########+#########+#########+#########+#GGG#GG# + 0 2 4 6 8 10 12 |-----------------------------------------------------------| - 0.014 +|+ + + + + + F+-+| - 0.012 +|+ + + + + + * **-+| - 0.01 +|+##################################################**##**-+| - 0.008 +|+##################################################*#**#*-+| - AKG #|###################################################*#**#* | - 0.006 +|+##################################################*#**#**+| - 0.004 +|+###***###########################################*###*#+**| - 0.002 +|-----------------------------------------------------------| - 0 *****#####*******************************************#####+-+ + 0.02 +|+ + + + + + +-+| + +| + + + + + F +| + 0.015 +|+###################################################*##**-+| + #|###################################################*#*#** | + AKG 0.01 +|+##################################################*#*#**-*| + #|###################################################*#**#** | + 0.005 +|+##################################################*#**#**+| + +|-----------------------------------------------------------| + 0 *****************************************************#####+-+ 0 2 4 6 8 10 12 x : x z - init001 : 0.00000 -0.7229 - init002 : 3.00000 1.6337 - init003 : 6.00000 -5.0918 - init004 : 9.00000 2.9718 - init005 : 12.00000 -8.3406 - xg(085) : 5.06533 -2.2997 - xg(186) : 11.15578 -6.0295 - xg(115) : 6.87437 4.7863 - xg(180) : 10.79397 -7.7655 - xg(200) : 12.00000 -5.8218 - xg(182) : 10.91457 -9.4601 - xg(200) : 12.00000 -7.9985 - xg(183) : 10.97487 -8.8010 - xg(193) : 11.57789 -9.1805 - xg(178) : 10.67337 -13.2956 - xg(173) : 10.37186 -8.6231 - xg(171) : 10.25126 -8.8367 - xg(170) : 10.19095 -6.7096 - xg(189) : 11.33668 -13.0645 - xg(191) : 11.45729 -7.1417 - xg(175) : 10.49246 -9.2225 - xg(189) : 11.33668 -10.4249 - xg(175) : 10.49246 -6.6684 - xg(191) : 11.45729 -9.0325 - xg(177) : 10.61307 -12.0079 - xg(190) : 11.39698 -7.9406 - xg(174) : 10.43216 -7.6733 - xg(190) : 11.39698 -13.4911 - xg(177) : 10.61307 -9.6218 - xg(192) : 11.51759 -10.5684 - xg(178) : 10.67337 -9.9152 - xg(192) : 11.51759 -6.2098 - xg(190) : 11.39698 -12.3982 - xg(178) : 10.67337 -11.0057 - xg(191) : 11.45729 -9.1153 - xg(177) : 10.61307 -9.7265 - xg(191) : 11.45729 -8.0064 - xg(176) : 10.55276 -7.5173 - xg(177) : 10.61307 -9.9711 - xg(190) : 11.39698 -10.5357 - xg(177) : 10.61307 -10.6828 - xg(190) : 11.39698 -7.8675 - xg(190) : 11.39698 -11.6278 - xg(177) : 10.61307 -10.7377 - xg(190) : 11.39698 -10.3146 - xg(177) : 10.61307 -8.5857 - xg(178) : 10.67337 -10.3299 - xg(190) : 11.39698 -8.2252 - xg(190) : 11.39698 -10.7493 - xg(178) : 10.67337 -8.9604 - xg(178) : 10.67337 -6.0693 - xg(178) : 10.67337 -8.2786 - xg(179) : 10.73367 -8.1897 - xg(179) : 10.73367 -8.1537 - xg(192) : 11.51759 -13.9072 - xg(180) : 10.79397 -12.8219 - xg(192) : 11.51759 -10.2361 - xg(179) : 10.73367 -10.5095 - xg(192) : 11.51759 -12.7131 - xg(180) : 10.79397 -10.9360 - xg(180) : 10.79397 -12.9779 - xg(191) : 11.45729 -9.1229 - xg(191) : 11.45729 -6.8266 - xg(191) : 11.45729 -11.7884 - xg(179) : 10.73367 -6.3839 - xg(179) : 10.73367 -8.7316 - xg(179) : 10.73367 -7.8164 - xg(180) : 10.79397 -7.4449 - xg(193) : 11.57789 -8.6254 - xg(180) : 10.79397 -8.6956 - xg(193) : 11.57789 -9.4305 - xg(180) : 10.79397 -8.6367 - xg(181) : 10.85427 -9.8607 - xg(194) : 11.63819 -7.0775 - xg(180) : 10.79397 -9.2024 - xg(192) : 11.51759 -10.6817 - xg(180) : 10.79397 -12.8111 - xg(192) : 11.51759 -8.4897 - xg(191) : 11.45729 -8.5258 - xg(190) : 11.39698 -12.6700 - xg(180) : 10.79397 -8.8923 - xg(180) : 10.79397 -11.5472 - xg(190) : 11.39698 -8.5063 - xg(190) : 11.39698 -8.4517 - xg(190) : 11.39698 -7.3581 - xg(190) : 11.39698 -14.0558 - xg(179) : 10.73367 -9.6989 - xg(190) : 11.39698 -8.1432 - xg(190) : 11.39698 -11.7583 - xg(179) : 10.73367 -10.1321 - xg(179) : 10.73367 -8.1882 - xg(180) : 10.79397 -9.6161 - xg(180) : 10.79397 -8.3209 - xg(180) : 10.79397 -11.1489 - xg(190) : 11.39698 -8.7026 - xg(190) : 11.39698 -11.7874 - xg(180) : 10.79397 -10.8301 - xg(190) : 11.39698 -9.3440 - xg(190) : 11.39698 -11.2798 - xg(180) : 10.79397 -14.8872 + init001 : 0.00000 1.7373 + init002 : 3.00000 -1.8571 + init003 : 6.00000 -3.0623 + init004 : 9.00000 5.7888 + init005 : 12.00000 -6.7908 + xg(078) : 4.64322 -2.9283 + xg(187) : 11.21608 -8.9782 + xg(181) : 10.85427 -11.9255 + xg(173) : 10.37186 -9.3924 + xg(195) : 11.69849 -10.3553 + xg(174) : 10.43216 -9.7851 + xg(194) : 11.63819 -8.8462 + xg(174) : 10.43216 -14.2832 + xg(193) : 11.57789 -9.3877 + xg(174) : 10.43216 -8.9091 + xg(184) : 11.03518 -8.4348 + xg(170) : 10.19095 -6.6141 + xg(028) : 1.62814 -0.7097 + xg(187) : 11.21608 -11.2193 + xg(190) : 11.39698 -10.0148 + xg(177) : 10.61307 -9.8846 + xg(188) : 11.27638 -13.8206 + xg(177) : 10.61307 -10.6765 + xg(177) : 10.61307 -10.6446 + xg(189) : 11.33668 -10.5923 + xg(190) : 11.39698 -9.7154 + xg(176) : 10.55276 -9.9501 + xg(190) : 11.39698 -12.0167 + xg(176) : 10.55276 -7.3991 + xg(177) : 10.61307 -14.1458 + xg(189) : 11.33668 -8.6972 + xg(189) : 11.33668 -10.0987 + xg(176) : 10.55276 -3.5955 + xg(177) : 10.61307 -10.7532 + xg(190) : 11.39698 -10.6191 + xg(177) : 10.61307 -5.7331 + xg(179) : 10.73367 -6.9018 + xg(193) : 11.57789 -7.5439 + xg(179) : 10.73367 -9.0786 + xg(179) : 10.73367 -11.4677 + xg(192) : 11.51759 -12.4233 + xg(180) : 10.79397 -8.7416 + xg(193) : 11.57789 -9.8898 + xg(180) : 10.79397 -14.9652 + xg(192) : 11.51759 -11.3536 + xg(179) : 10.73367 -11.1411 + xg(192) : 11.51759 -8.6616 + xg(179) : 10.73367 -9.8311 + xg(191) : 11.45729 -11.0055 + xg(179) : 10.73367 -14.9754 + xg(190) : 11.39698 -11.0039 + xg(191) : 11.45729 -10.0194 + xg(179) : 10.73367 -8.6154 + xg(179) : 10.73367 -10.6602 + xg(191) : 11.45729 -11.3750 + xg(180) : 10.79397 -9.5771 + xg(180) : 10.79397 -9.0985 + xg(180) : 10.79397 -9.4052 + xg(192) : 11.51759 -8.3961 + xg(191) : 11.45729 -10.3074 + xg(180) : 10.79397 -10.4912 + xg(180) : 10.79397 -11.1964 + xg(191) : 11.45729 -9.0164 + xg(191) : 11.45729 -9.6337 + xg(191) : 11.45729 -11.5724 + xg(180) : 10.79397 -8.1311 + xg(180) : 10.79397 -12.9160 + xg(191) : 11.45729 -14.6485 + xg(180) : 10.79397 -8.2745 + xg(180) : 10.79397 -9.3308 + xg(180) : 10.79397 -10.6600 + xg(180) : 10.79397 -9.7723 + xg(192) : 11.51759 -9.0478 + xg(180) : 10.79397 -10.6007 + xg(191) : 11.45729 -7.5333 + xg(191) : 11.45729 -8.3966 + xg(180) : 10.79397 -11.8384 + xg(191) : 11.45729 -11.2838 + xg(180) : 10.79397 -8.6245 + xg(191) : 11.45729 -8.1009 + xg(180) : 10.79397 -9.7798 + xg(191) : 11.45729 -9.9289 + xg(180) : 10.79397 -10.3603 + xg(191) : 11.45729 -12.3152 + xg(180) : 10.79397 -9.8959 + xg(180) : 10.79397 -7.8847 + xg(191) : 11.45729 -10.5841 + xg(180) : 10.79397 -10.1817 + xg(191) : 11.45729 -13.4409 + xg(180) : 10.79397 -12.3836 + xg(180) : 10.79397 -6.3656 + xg(180) : 10.79397 -12.1289 + xg(191) : 11.45729 -6.9896 + xg(191) : 11.45729 -8.5413 + xg(191) : 11.45729 -8.6591 + xg(180) : 10.79397 -12.9057 + xg(191) : 11.45729 -11.0705 + xg(180) : 10.79397 -11.9406 + xg(191) : 11.45729 -12.6643 + xg(180) : 10.79397 -9.8113 Number of evaluations: 5 + 95 = 100. 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_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_doe04 # +# stk_example_doe01 # #=========================# -'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_DOE04 Probability of misclassification - - The upper panel shows posterior means and variances as usual, and the - threshold of interest, which is at T = 0.85 (dashed line). - - 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). - - We also plot the expected future probability of misclassification (magenta - curve), should a new evaluation be made at x = 3. - - Note that both probabilities are obtained using stk_pmisclass. - - -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/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; - - x2 = [0.20168952 0.15001069 0.47687398 0.27533243 0.31165162 0.65730054]; - y2 = -3.322368011415512; - - 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_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_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_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; - - 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/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_misc04 # -#==========================# - -'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_MISC04 Pareto front simulation - - DESCRIPTION - - 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. - - 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. - - 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 - - This script uses the stk_plot_probdom2d function, which is currently - considered an experimental function. Read the help for more information. +'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 - REFERENCE + STK_EXAMPLE_DOE01 Examples of two-dimensional designs - [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. + All designs are constructed on the hyper-rectangle BOX = [0; 2] x [0; 4]. - See also: stk_plot_probdom2d + 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 @@ -9116,79 +10369,30 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. -No entry for terminal type "unknown"; -using dumb terminal settings. - line 0: warning: iconv failed to convert degree sign - -multiplot> set style increment default; - ^ - line 0: warning: deprecated command - Proba. of being dominated - simulated Pareto fronts--| || - 600 +|+$** @$%%* &*# * $++| 600 +---+-+----+---+---+ ++||00% - | $** @$%%* &*# * $+ | ||###|####|###|###| || - #|#$**#@$%%**&*####*###$ | |+###+####+###+###+ || - 400 +|+$**#@$%%=**************| 400 +---+##########+---+ || - #|#$######%###############| |#################| || - 200 +|+$**#@$%%$$&*#$$$*$$$$$$| 200 +---+##########+---+ ++||5% - #|#$**#@#%%===*#===*======| |#################| || - #|#$$$$$$$%$$$$$$$$$$$$$$$| |#################| || - 0 +|+#**#@#%%###*####*******| 0 +---+##########+---+ || - #|##**#@#%%@@@@@@@@@@@second objective#################| ++||0% - -200 +|+#**#@#%%%%%%%%%%%%%%%%%| +---+##########+---+ || - #|##***@@%@@@@@###########| |#################| || - #|###****%****************| -400 |#################| || - -400 +|+######%#############+-+| +---+##########+---+ || - #|#######%%%%%%%%%%%%%%%%%| -600 |#################| ++||5% - -600 +|+####################+-+| +---+##########+---+ || - #|###################### | |#################| || - #|###################### | -800 |+###+####+###+###+ || - -800 +|------------------------| +---+-|----|---+---+ || - ###+#####+####+####+####+ -200-1000 0 10002000++-0% - -2000 -1000 0 1000 2000 - first objective first objective 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 # -#==========================# - -'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_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. +[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; - See also: stk_materncov_iso, stk_materncov_aniso +#=========================# +# stk_example_doe04 # +#=========================# +'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 -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_DOE04 Probability of misclassification -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/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 upper panel shows posterior means and variances as usual, and the + threshold of interest, which is at T = 0.85 (dashed line). -#==========================# -# stk_example_misc03 # -#==========================# + 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). -'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 + We also plot the expected future probability of misclassification (magenta + curve), should a new evaluation be made at x = 3. - STK_EXAMPLE_MISC03 How to deal with (known) seasonality + Note that both probabilities are obtained using stk_pmisclass. Additional help for built-in functions and operators is @@ -9198,79 +10402,43 @@ 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 - lm = - - - - dim = 1 - param = - - 0.6345 - -1.4617 - - lognoisevariance = -4.5798 - -model2 = - - scalar structure containing the fields: - - covariance_type = @stk_materncov52_iso - lm = - -@(t) [ones(length (t), 1), sin(2 * pi * t / T0), cos(2 * pi * t / T0)] - - dim = 1 - param = - - -9.5591 - -8.1781 - - lognoisevariance = -4.5583 - 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')); +[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 +***** test stk_example_doe06; close all; -#==========================# -# stk_example_misc05 # -#==========================# +#=========================# +# stk_example_doe06 # +#=========================# -'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_doe06' 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_doe06.m - STK_EXAMPLE_MISC05 Parameter estimation for heteroscedastic noise variance + STK_EXAMPLE_DOE06 Sequential design for the estimation of an excursion set - DESCRIPTION + In this example, we consider the problem of estimating the set - We consider a 1d prediction problem with noisy data, where the variance of - the noise depends on the input location. + Gamma = { x in X | f(x) > z_crit }, - 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 + where z_crit is a given value, and/or its volume. - tau^2(x) = phi * (x + 1) ^ 2, + In a typical "structural reliability analysis" problem, Gamma would + represent the failure region of a certain system, and its volume would + correspond to the probability of failure (assuming a uniform distribution + for the input). - and the dispersion parameter phi is estimated together with the parameters - of the covariance function. + A Matern 5/2 prior with known parameters is used for the function f, and + the evaluations points are chosen sequentially using any of the sampling + criterion described in [1] (see also [2], section 4.3). - EXPERIMENTAL FEATURE WARNING + REFERENCE - 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. + [1] B. Echard, N. Gayton and M. Lemaire (2011). AK-MCS: an active + learning reliability method combining Kriging and Monte Carlo + simulation. Structural Safety, 33(2), 145-154. - See also: stk_example_kb09 + [2] J. Bect, D. Ginsbourger, L. Li, V. Picheny and E. Vazquez (2012). + Sequential design of computer experiments for the estimation of a + probability of failure. Statistics and Computing, 22(3), 773-793. Additional help for built-in functions and operators is @@ -9280,1735 +10448,663 @@ 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 - lm = - - - - dim = 1 - param = - - 0.066833 - 0.707310 - - lognoisevariance = - - - - - -gn = -| -| Heteroscedastic variance model: tau^2(x) = dispersion * variance_function(x) -| -| dispersion: 2.4169 [log_dispersion = 0.8825] -| variance_function: @(x) (x + 1) .^ 2 -| - -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_misc02 # -#==========================# - -'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 - - 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. - - 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). +Volume (reference value): 20.49% +data_init = <4x2 stk_dataframe array> -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. + : x z + initial design #1 : 0.000000 0.00000 + initial design #2 : 0.333333 -0.43063 + initial design #3 : 0.666667 -0.66886 + initial design #4 : 1.000000 -1.20558 -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. No entry for terminal type "unknown"; using dumb terminal settings. 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 -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/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/isnan.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/isnan.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/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)); -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') -***** test % default constructor - x = stk_dataframe (); - assert (isa (x, 'stk_dataframe') && isequal (size (x), [0 0])) -***** test - y = stk_dataframe (rand (3, 2)); - assert (isa (y, 'stk_dataframe') && isequal (size (y), [3 2])) -***** test - y = stk_dataframe (rand (3, 2), {'x', 'y'}); - assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) - assert (isequal (y.colnames, {'x' 'y'})) -***** test - y = stk_dataframe (rand (3, 2), {'x', 'y'}, {'a', 'b', 'c'}); - assert (isa (y, 'stk_dataframe') && isequal (size (y), [3 2])) - assert (isequal (y.colnames, {'x' 'y'})) - assert (isequal (y.rownames, {'a'; 'b'; 'c'})) -***** test - x = stk_dataframe (rand (3, 2)); - y = stk_dataframe (x); - assert (isa (y, 'stk_dataframe') && isequal (size (y), [3 2])) -***** error - x = stk_dataframe (rand (3, 2)); - y = stk_dataframe (x, pi); -***** error - x = stk_dataframe (rand (3, 2)); - y = stk_dataframe (x, {}, pi); -***** test - x = stk_dataframe (rand (3, 2)); - y = stk_dataframe (x, {'x' 'y'}); - assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) - assert (isequal (y.colnames, {'x' 'y'})) -***** test - x = stk_dataframe (rand (3, 2)); - y = stk_dataframe (x, {'x' 'y'}, {'a', 'b', 'c'}); - assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) - assert (isequal (y.colnames, {'x' 'y'})) - assert (isequal (y.rownames, {'a'; 'b'; 'c'})) -***** test - x = stk_dataframe (rand (3, 2), {'x' 'y'}); - y = stk_dataframe (x, [], {'a', 'b', 'c'}); - assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) - assert (isequal (y.colnames, {'x' 'y'})) - assert (isequal (y.rownames, {'a'; 'b'; 'c'})) -***** test - x = stk_dataframe (rand (3, 2), {'x' 'y'}); - y = stk_dataframe (x, {}, {'a', 'b', 'c'}); - assert (isa (y, 'stk_dataframe') && isequal (size(y), [3 2])) - assert (isequal (y.colnames, {})) - assert (isequal (y.rownames, {'a'; 'b'; 'c'})) -***** test - x = stk_factorialdesign ({1:3, 1:2}, {'x' 'y'}); - y = stk_dataframe (x, [], {'a' 'b' 'c' 'd' 'e' 'f'}); - assert (isa (y, 'stk_dataframe') && isequal (size (y), [6 2])) - assert (isequal (y.colnames, {'x' 'y'})) - assert (isequal (y.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'})) -***** test - x = stk_factorialdesign ({1:3, 1:2}, {}, {'a' 'b' 'c' 'd' 'e' 'f'}); - y = stk_dataframe (x, {'x' 'y'}); - assert (isa (y, 'stk_dataframe') && isequal (size (y), [6 2])) - assert (isequal (y.colnames, {'x' 'y'})) - assert (isequal (y.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'})) -***** test - x = stk_factorialdesign ({1:3, 1:2}, {}, {'a' 'b' 'c' 'd' 'e' 'f'}); - y = stk_dataframe (x, {'x' 'y'}, []); - assert (isa (y, 'stk_dataframe') && isequal (size (y), [6 2])) - assert (isequal (y.colnames, {'x' 'y'})) - assert (isequal (y.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'})) -***** test - x = stk_factorialdesign ({1:3, 1:2}, {'x' 'y'}, {'a' 'b' 'c' 'd' 'e' 'f'}); - y = stk_dataframe (x); - assert (isa (y, 'stk_dataframe') && isequal (size (y), [6 2])) - assert (isequal (y.colnames, {'x' 'y'})) - assert (isequal (y.rownames, {'a'; 'b'; 'c'; 'd'; 'e'; 'f'})) -***** error - x = stk_factorialdesign ({1:3, 1:2}); - y = stk_dataframe (x, pi); -***** error - x = stk_factorialdesign ({1:3, 1:2}); - y = stk_dataframe (x, {}, pi); -***** test - x = stk_dataframe ([], {'a', 'b'}); - assert (isequal (size (x), [0 2])) - assert (isequal (x.colnames, {'a' 'b'})); - assert (isequal (x.rownames, {})); -***** test - x = stk_dataframe ([], {'a', 'b'}, {'toto'}); - assert (isequal (size (x), [1 2])) - assert (isequal (x.colnames, {'a' 'b'})); - assert (isequal (x.rownames, {'toto'})); -***** shared x -***** test - x = stk_dataframe (randn (10, 1), 'NOx'); - assert (isequal (x.colnames, {'NOx'})); -***** test - y = stk_dataframe (x, 'toto'); - assert (isequal (y.colnames, {'toto'})); -***** test - x = stk_dataframe (randn (1, 2), {}, 'aaa'); - assert (isequal (x.rownames, {'aaa'})); -***** test - y = stk_dataframe (x, {}, 'tata'); - assert (isequal (y.rownames, {'tata'})); -24 tests, 24 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/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/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/subsasgn.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/subsasgn.m -***** shared x, s, t, data - x = stk_dataframe (rand (3, 2)); - s = {'a'; 'b'; 'c'}; - t = {'xx' 'yy'}; -***** test - x.rownames = s; - assert (isequal (get (x, 'rownames'), s)) -***** test - x.colnames = t; - assert (isequal (get (x, 'rownames'), s)) - assert (isequal (get (x, 'colnames'), t)) -***** test - x.rownames{2} = 'dudule'; - assert (isequal (get (x, 'rownames'), {'a'; 'dudule'; 'c'})) - assert (isequal (get (x, 'colnames'), t)) -***** test - x.colnames{1} = 'martha'; - assert (isequal (get (x, 'rownames'), {'a'; 'dudule'; 'c'})) - assert (isequal (get (x, 'colnames'), {'martha' 'yy'})) -***** test - data = stk_dataframe (zeros(3, 2), {'x1' 'x2'}); - u = rand(3, 1); data.x2 = u; - assert (isequal (double (data), [zeros(3, 1) u])) -***** test - data = stk_dataframe (zeros (3, 2), {'x1' 'x2'}); - data.x2(3) = 27; - assert (isequal (double (data), [0 0; 0 0; 0 27])) -***** error data.toto = rand (3, 1); -***** shared x - x = stk_dataframe (reshape (1:12, 4, 3), {'u' 'v' 'w'}); -***** test - x(:, 2) = []; - assert (isequal (size (x), [4 2])) - assert (isequal (double (x), [1 9; 2 10; 3 11; 4 12])) - assert (isequal (get (x, 'colnames'), {'u' 'w'})) - assert (isempty (get (x, 'rownames'))) -***** test - x(2, :) = []; - assert (isequal (size (x), [3 2])) - assert (isequal (double (x), [1 9; 3 11; 4 12])) - assert (isempty (get (x, 'rownames'))) -***** test - x.rownames = {'a'; 'b'; 'c'}; - x(2, :) = []; - assert (isequal (size (x), [2 2])) - assert (isequal (double (x), [1 9; 4 12])) - assert (isequal (x.rownames, {'a'; 'c'})) -***** test % change one value with matrix-style indexing - x(1, 2) = 11; - assert (isequal (size (x), [2 2])) - assert (isequal (double (x), [1 11; 4 12])) -***** test % change one value with linear indexing - x(3) = 13; - assert (isequal (size (x), [2 2])) - assert (isequal (double (x), [1 13; 4 12])) -***** assert (isequal (double (x(:, :)), [1 13; 4 12])); -***** test % assignment to a variable that doesn't exist - A = stk_dataframe (7.1); - clear B; B(2) = A; - assert (strcmp (class (B), 'stk_dataframe')) - assert (isequal (B.data, [0 7.1])); -***** test % repmat - x = stk_dataframe (1); - y = repmat (x, 2, 3); - assert (isa (y, 'stk_dataframe')); - assert (isequal (y.data, ones (2, 3))); -***** test - x(:, :) = []; - assert (isempty (x)); -***** test % Delete the only row of a one-row dataframe - y1 = stk_dataframe ([1.2 3.33], {'mean', 'var'}); - y1(1, :) = []; % Remove the only row of data - assert (isequal (size (y1), [0 2])) - assert (isequal (y1.colnames, {'mean', 'var'})) - y11 = get (y1, 'mean'); - assert (isempty (y11)); -***** error x{1} = 2; -***** error x(1, 2) = []; -***** error x(1, 2).a = 3; -***** shared x - x = stk_dataframe((1:5)'); -***** test x(2) = 0; assert (isequal (double (x), [1; 0; 3; 4; 5])); -***** test x(3) = []; assert (isequal (double (x), [1; 0; 4; 5])); -***** test x(3, 1) = 0; assert (isequal(double(x), [1; 0; 0; 5])); -***** error x(3, 1, 1) = 297; -***** test % create a new row and a new column through subsasgn() - x = stk_dataframe (rand (5, 2)); x(6, 3) = 7; - assert(isequal(size(x), [6, 3])); -***** test - x = stk_dataframe ([]); - x.colnames{2} = 'v'; - x.rownames{2} = 'b'; - assert (isequal (x.rownames, {''; 'b'})); - assert (isequal (x.colnames, {'' 'v'})); - assert (isequal (size (x.data), [2 2]) && (all (isnan (x.data(:))))) -***** shared x - x = stk_dataframe (reshape (1:12, 4, 3), {'u' 'v' 'w'}); -***** test % change one column using ':', plain numeric argument - y = [0; 9; 0; 9]; - z = x; z(:, 2) = y; - assert (isequal (z(:, 1), x(:, 1))); - assert (isequal (z(:, 2).data, y)); -***** test % change one column using ':', skt_dataframe argument - y = stk_dataframe ([0; 9; 0; 9], {'y'}); - z = x; z(:, 2) = y; - assert (isequal (z(:, 1), x(:, 1))); - assert (isequal (z(:, 2), y)); -***** shared x - x = stk_dataframe (reshape (1:12, 4, 3), [], {'a'; 'b'; 'c'; 'd'}); -***** test % change one row using ':', plain numeric argument - y = [7 7 7]; - z = x; z(3, :) = y; - assert (isequal (z(1, :), x(1, :))); - assert (isequal (z(3, :).data, y)); -***** test % change one row using ':', skt_dataframe argument - y = stk_dataframe ([7 7 7], [], {'y'}); - z = x; z(3, :) = y; - assert (isequal (z(1, :), x(1, :))); - assert (isequal (z(3, :), y)); -***** shared x - x = stk_dataframe (zeros (2), {'u' 'v'}); -***** test % first column - x(1:2) = 1; - y = stk_dataframe ([1 0; 1 0], {'u' 'v'}); - assert (isequal (x, y)); -***** test % one more element - x(1:3) = 2; - y = stk_dataframe ([2 2; 2 0], {'u' 'v'}); - assert (isequal (x, y)); -***** error % too many elements - x(1:5) = 3; -***** shared x - x = stk_dataframe (randn (3, 3)); -***** test x.colnames{2} = 'y'; -***** assert (isequal (x.colnames, {'' 'y' ''})); -***** test x.rownames{2} = 'b'; -***** assert (isequal (x.rownames, {''; 'b'; ''})); -37 tests, 37 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 -***** 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/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/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.766513 0.451687 - * : 0.235544 0.638840 - * : 0.052500 0.749025 -***** test format long; disp (x); - : ---------------- ---------------- - * : 0.76651288752048 0.45168669786720 - * : 0.23554373869452 0.63883995298274 - * : 0.05249968222891 0.74902530293444 -***** test format short; disp (x); format (fmt); - : -------- -------- - * : 0.766513 0.451687 - * : 0.235544 0.638840 - * : 0.052500 0.749025 -***** 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/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/mean.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mean.m -***** shared x1, df1 - x1 = rand(9, 3); - df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (mean(df1), mean(x1))) -***** 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/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/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/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/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 = 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/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/log.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log.m -***** test - 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/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/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/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/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/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/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/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.352683 0.745636 - * : 0.412850 0.066930 - * : 0.219146 0.275688 + + |-------------------------Groung truth----------------------------| + 1 +|+ + + + + +-+| + +| + + + + +| + #|############################################################### | + 0.5 +|+#############################################################+-+| + #|############################################################### | + #|############################################################### | + $|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$| + 0 *|*****##***####***#######**#######**##########**########**#####+-+| + #|####****########**#####**#########*##########*##########*###### | + z #|#################***#***###########*########**##########**##### | + -0.5 +|+##################***#############**######**############*####+-+| + #|####################################**####**#############**#### | + #|#####################################******###############**### | + #|----------------------------+##############################**## | + -1 +|***?***z = f(x), below zcrit|###############################*#+-+| + #|###?###z = f(x), above zcrit|###############################*****| + +|-----------------------------------------------------------------| + -1.5 +-+##########+############+#############+############+##########+-+ + 0 0.2 0.4 0.6 0.8 1 + x + +Iteration #1 +| Current sample size: n = 4 +| Volume estimate (plugin): 0.00000 [ref: 0.20490] +| Upper-bound on posterior std: 4.0925e-01 [target: 5.000e-04] +No entry for terminal type "unknown"; +using dumb terminal settings. + line 0: warning: iconv failed to convert degree sign + + | + 4 +|+ ### + | #%%%%%%%%%## ###%%%### ######## + 2 +|+&&&&&&&&&&&&&&%#####%%&&&&&&&&&&&%#######%%&&&&&&&&%%### + 0 +|+###F###################################################### + z #|&&&&##########&***G*******************G*******************G + -2 +|+%%&&&&&&&&&&&&%#####%&&&&&&&&&&&&&&%###%&&&&&&#####&&&&&& + -4 +|+#####%%%%%##############%%%%%%%###########%%%&&&&&&&%%## + +|------------------------------------------------------------ + -6 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + + + +-+| + +| + + + + | + 0.4 +|****F******#############################################+-+| + 0.3 +|*#########****##########################################+-+| +criterion #|#############**#########********######################### | + 0.2 +|+#############**######***######***############***#######+-+| + 0.1 +|+##############**####**##########**########****#*****###+-+| + *|-----------------------------------------------------------| + 0 *-+#########+#####*****#+###########+*******####+#######***** + 0 0.2 0.4 0.6 0.8 + x +Iteration #2 +| Current sample size: n = 5 +| Volume estimate (plugin): 0.00000 [ref: 0.20490] +| Upper-bound on posterior std: 3.0323e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 4 +|+ + | ######## ######## + 2 +|+##########%%#########%&&&&&&&&&&&%#######%%&&&&&&&&%%### + 0 +|+########################################################## + z #|%%%##%&&&&&&&&&***G*********F*********G*******************G + -2 +|+####################%&&&&&&&&&&&&&&####%&&&&&&#####&&&&&& + -4 +|+#########################%%%%%%###########%%%&&&&&&&%%## + +|------------------------------------------------------------ + -6 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.25 +|+ + + **F* + + +-+| + +| + + *** *** + + | + 0.2 +|+######################**######***######################+-+| + 0.15 +|+########*****########**#########*###########*****######+-+| + #|########**###**#######*##########**########***###***##### | + 0.1 +|**#####**#####*######**###########**######**#######**###+-+| + 0.05 +|***####*######**#####*#############*#####**#########**##+-+| + +|-----------------------------------------------------------| + 0 **+#*****###+#####*****#+###########+#******####+########**** + 0 0.2 0.4 0.6 0.8 + x +Iteration #3 +| Current sample size: n = 6 +| Volume estimate (plugin): 0.10510 [ref: 0.20490] +| Upper-bound on posterior std: 2.8033e-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 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + * F + + +-+| + +| + + ** *** + + | + 0.4 +|+#######################***###*#*#######################+-+| + 0.3 +|+######################*##*###*#**######################+-+| +criterion #|######################**##*##**##*####################### | + 0.2 +|+#####################*###**#*###**#####################+-+| + 0.1 +|**###################**####*#*####*#####################+-+| + +|-----------------------------------------------------------| + 0 **+#******##+##*********+####***####+**********#+######****** + 0 0.2 0.4 0.6 0.8 + x +Iteration #4 +| Current sample size: n = 7 +| Volume estimate (plugin): 0.11550 [ref: 0.20490] +| Upper-bound on posterior std: 2.2715e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 3 +|+ + 2 +|+ ######## + 1 +|+###########################################%%&&&&&&%%### + 0 +|+#####################F#################################### + z &|&&=*G*************G***=&%#####*G******G**************==&&&# + -1 +|+######%&&&&&&&&&######################%&&&&&#######******G + -2 +|+##########################################%&&&&&&&&&&&&&# + -3 +|------------------------------------------------------------ + -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + F * + + +-+| + +| + * * + + | + 0.4 +|+####################***#####*##########################+-+| + 0.3 +|+####################*#*#####*##########################+-+| +criterion #|#####################*#*#####*########################### | + 0.2 +|+####################*#**####*#################**#######+-+| + 0.1 +|***##################*##*####*##############*********###+-+| + +|-----------------------------------------------------------| + 0 **+#*******************#+##******************###+#######***** + 0 0.2 0.4 0.6 0.8 + x +Iteration #5 +| Current sample size: n = 8 +| Volume estimate (plugin): 0.08210 [ref: 0.20490] +| Upper-bound on posterior std: 2.1018e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 3 +|+ + 2 +|+ ######## + 1 +|+##########################################%%&&&&&&&&%### + 0 +|+#######################F################################## + z &|&&**G*************G***G%######*G******G***************=&&&# + -1 +|+#######%&&&&&&%###################%%##%&&&&&########*****G + -2 +|+##########################################%&&&&&&&&&&&&&# + -3 +|------------------------------------------------------------ + -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + F * + + +-+| + +| + + * * + + | + 0.4 +|+#######################*####*##########################+-+| + 0.3 +|+#######################*####*##########################+-+| +criterion #|########################*####*########################### | + 0.2 +|+#######################*####*###############******#####+-+| + 0.1 +|+######################***###*#############***####***###+-+| + +|-----------------------------------------------------------| + 0 **+#******##+#************#******************###+#######***** + 0 0.2 0.4 0.6 0.8 + x +Iteration #6 +| Current sample size: n = 9 +| Volume estimate (plugin): 0.08520 [ref: 0.20490] +| Upper-bound on posterior std: 1.9195e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 3 +|+ + 2 +|+ ######## + 1 +|+##########################################%%&&&&&&&%%### + 0 +|+############################F############################# + z &|&&**G*************G***G#######*G******G***************=&&&# + -1 +|+#######%%&&&&%%#######################%&&&&&########*****G + -2 +|+##########################################%&&&&&&&&&&&&&# + -3 +|------------------------------------------------------------ + -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + * F + + +-+| + +| + + * * + + | + 0.4 +|+#######################*####*##########################+-+| + 0.3 +|+#######################*####*##########################+-+| +criterion #|########################*####*########################### | + 0.2 +|+#######################*####*################*****#####+-+| + 0.1 +|+#######################*####*#############***####***###+-+| + +|-----------------------------------------------------------| + 0 **+#******##+#*******************************###+#######***** + 0 0.2 0.4 0.6 0.8 + x +Iteration #7 +| Current sample size: n = 10 +| Volume estimate (plugin): 0.08700 [ref: 0.20490] +| Upper-bound on posterior std: 1.9877e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 3 +|+ + 2 +|+ ######## + 1 +|+##########################################%%&&&&&&&&%### + 0 +|+#######################F################################## + z &|&&**G*************G***G#######*G******G****************&&&# + -1 +|+#######%%&&&&%#########################&&&&&&########****G + -2 +|+##########################################%%&&&&&&&&&&&&# + -3 +|------------------------------------------------------------ + -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + + + +-+| + +| + + F + + | + 0.4 +|+#######################*###############################+-+| + 0.3 +|+#######################*###############################+-+| +criterion #|########################*####*########################### | + 0.2 +|+#######################*####*###############*******####+-+| + 0.1 +|+#######################*####*#############***#####***##+-+| + +|-----------------------------------------------------------| + 0 **+#******##+##******************************###+#######***** + 0 0.2 0.4 0.6 0.8 + x +Iteration #8 +| Current sample size: n = 11 +| Volume estimate (plugin): 0.08710 [ref: 0.20490] +| Upper-bound on posterior std: 1.9764e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 3 +|+ + 2 +|+ ######## + 1 +|+##########################################%%&&&&&&&&%### + 0 +|+############################F############################# + z &|&***G*************G***G#######*G******G****************&&&# + -1 +|+#######%%&&&&%#########################&&&&&&########****G + -2 +|+##########################################%%&&&&&&&&&&&&# + -3 +|------------------------------------------------------------ + -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.25 +|+ + + F + + +-+| + +| + + * + + | + 0.2 +|+############################*###############******#####+-+| + 0.15 +|+############################*##############**####**####+-+| + #|#############################*#############**######**#### | + 0.1 +|+########**##################*#############*########**##+-+| + 0.05 +|***####******################*############**#########**#+-+| + +|-----------------------------------------------------------| + 0 **+#*****###+##*****************************####+########**** + 0 0.2 0.4 0.6 0.8 + x +Iteration #9 +| Current sample size: n = 12 +| Volume estimate (plugin): 0.08710 [ref: 0.20490] +| Upper-bound on posterior std: 2.0094e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 3 +|+ + 2 +|+ ######## + 1 +|+##########################################%%&&&&&&&&%### + 0 +|+########################################################## + z &|&***G*************G***G#######*G******G********F*******&&&# + -1 +|+#######%%&&&&%#########################&&&&&&########****G + -2 +|+##########################################%%&&&&&&&&&&&&# + -3 +|------------------------------------------------------------ + -4 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.25 +|+ + + + + +-+| + +| + + + +F* | + 0.2 +|+############################################**#***#####+-+| + 0.15 +|+###########################################**####**####+-+| + #|###########################################**######**#### | + 0.1 +|+########**################################*########**##+-+| + 0.05 +|***####******#############################**#########**#+-+| + +|-----------------------------------------------------------| + 0 **+#*****###+##*****************************####+########**** + 0 0.2 0.4 0.6 0.8 + x +Iteration #10 +| Current sample size: n = 13 +| Volume estimate (plugin): 0.22020 [ref: 0.20490] +| Upper-bound on posterior std: 2.2072e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1.5 +|+ + 1 +|+ ##### + #|###########################################%&&&%&&&&&&%## + 0.5 +|+&&###%&&&&&&%%#########****G*###########%==***G****#&&%# + z 0 +|+###########################################F############## + -0.5 +|+&&&&&************G***#########G**&&%#%****&&#####%==***&& + #|######%&&&&##&&&&&###############*****G*&&%#########===***# + -1 +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########### + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + + F + ** +-+| + +| + + + ** + ** | + 0.4 +|+##########################################**######**###+-+| + 0.3 +|+##########################################**######***##+-+| +criterion #|###########################################*#*####**#*### | + 0.2 +|+#########################################**#*####*##*##+-+| + 0.1 +|+#########################################*##*####*##**#+-+| + +|-----------------------------------------------------------| + 0 **+#******##+##******************************###****#####**** + 0 0.2 0.4 0.6 0.8 + x +Iteration #11 +| Current sample size: n = 14 +| Volume estimate (plugin): 0.21920 [ref: 0.20490] +| Upper-bound on posterior std: 1.5938e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1 +|+ + 0.5 +|+ #%%%%%# ***G*&&%%# + #|##################################################F######## + 0 +|+***G******#=====%#%**G*#####**G*######%***######&=***&&% + z -0.5 +|+&&%#&&&&#********G**%#########&***&&%G**%########%==***&% + -1 +|+######%&&&&&&&&&################&*****#############&==***& + #|#########%%%%%#######################################%===*G + -1.5 +|------------------------------------------------------------ + -2 +-+#########+###########+###########+###########+########## + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + + * + F +-+| + +| + + + * + * | + 0.4 +|+#########################################*#######*#####+-+| + 0.3 +|+#########################################*#######**####+-+| +criterion #|##########################################*######***##### | + 0.2 +|+#########################################*######*#*####+-+| + 0.1 +|+#########################################*######*#**###+-+| + +|-----------------------------------------------------------| + 0 **+#******##+##*************************************###****** + 0 0.2 0.4 0.6 0.8 + x +Iteration #12 +| Current sample size: n = 15 +| Volume estimate (plugin): 0.20360 [ref: 0.20490] +| Upper-bound on posterior std: 1.1206e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1 +|+ + | ###### &*** + 0.5 +|+%%###%&&&&&&%##########****G#############&*G*&G**####### + 0 +|+#########################################F################ + z %|&&&*G*********====&****#######*G*######&**&#######***&### + -0.5 +|+#####&&&#####****G*&###########***&&&G**##########&**&&% + -1 +|+######%&&&&&&&&%################&*****#############&****& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%% + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + + F + * +-+| + +| + + + * + * | + 0.4 +|+#########################################*######*######+-+| + 0.3 +|+#########################################*######*######+-+| +criterion #|##########################################*######*####### | + 0.2 +|+#########################################*######*######+-+| + 0.1 +|+#########################################*######*######+-+| + +|-----------------------------------------------------------| + 0 **+#******##+##********************************************** + 0 0.2 0.4 0.6 0.8 + x +Iteration #13 +| Current sample size: n = 16 +| Volume estimate (plugin): 0.20410 [ref: 0.20490] +| Upper-bound on posterior std: 1.0155e-01 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1 +|+ + | ###### *** + 0.5 +|+%%###%&&&&&&%##########****G##############*G*&G**####### + 0 +|+################################################F######### + z %|&&&*G*********====&****#######*G*######&**########***&### + -0.5 +|+#####&&&#####****G*&###########***&&&G**##########&**&&% + -1 +|+######%&&&&&&&&%################&*****#############&****& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%% + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.5 +|+ + + + + F +-+| + +| + + + + * | + 0.4 +|+################################################*######+-+| + 0.3 +|+################################################*######+-+| +criterion #|#################################################*####### | + 0.2 +|+#########################################*######*######+-+| + 0.1 +|+#########################################*######*######+-+| + +|-----------------------------------------------------------| + 0 **+#******##+##********************************************** + 0 0.2 0.4 0.6 0.8 + x +Iteration #14 +| Current sample size: n = 17 +| Volume estimate (plugin): 0.20490 [ref: 0.20490] +| Upper-bound on posterior std: 9.6634e-02 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1 +|+ + | ###### *** + 0.5 +|+%%###%&&&&&&%##########****G##############*G*&G**####### + 0 +|+#########################################F################ + z %|&&&*G*********====&****#######*G*######&**########***#### + -0.5 +|+#####&&&#####****G*&###########***&&&G**##########&**&%# + -1 +|+######%&&&&&&&&%################&*****#############&***&& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%% + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.25 +|+ + + + + +-+| + +| + + + + | + 0.2 +|+#######################################################+-+| + 0.15 +|+#########################################F#############+-+| + #|##########################################*############## | + 0.1 +|+########**###############################*#############+-+| + 0.05 +|***####******#############################*#############+-+| + +|-----------------------------------------------------------| + 0 **+#*****###+##********************************************** + 0 0.2 0.4 0.6 0.8 + x +Iteration #15 +| Current sample size: n = 18 +| Volume estimate (plugin): 0.20490 [ref: 0.20490] +| Upper-bound on posterior std: 9.6528e-02 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1 +|+ + | ###### *** + 0.5 +|+%%###%&&&&&&%##########****G##############*G*&G**####### + 0 +|+########################################################## + z %|&&&*G****F****====&****#######*G*######&**########***#### + -0.5 +|+#####&&&#####****G*&###########***&&&G**##########&**&%# + -1 +|+######%&&&&&&&&%################&*****#############&***&& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%% + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.12 +|+ + + + + +-+| + 0.1 +|+ + + + + +-+| + #|######################################################### | + 0.08 +|**######*F**############################################+-+| + 0.06 +|**######*##**###########################################+-+| + 0.04 +|***####**###*###########################################+-+| + #|##*####*####**########################################### | + 0.02 +|-----------------------------------------------------------| + 0 **+##****###+###********************************************* + 0 0.2 0.4 0.6 0.8 + x +Iteration #16 +| Current sample size: n = 19 +| Volume estimate (plugin): 0.20490 [ref: 0.20490] +| Upper-bound on posterior std: 9.6745e-02 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1 +|+ + | *** + 0.5 +|+######%%##%%%##########****G##############*G*&G**####### + 0 +|+##########F############################################### + z &|****G*=&###&&*****&****#######*G*######&**########***#### + -0.5 +|+%%##########%&&&*G*&###########***&&&G**##########&**&%# + -1 +|+################################&*****#############&***&& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%% + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.2 +|+ + + + + +-+| + +| + + + + | + 0.15 +|+#######***F############################################+-+| + #|########*****############################################ | + 0.1 +|+#######***#*###########################################+-+| + #|#######*#**#*############################################ | + 0.05 +|+######*#**#**##########################################+-+| + +|-----------------------------------------------------------| + 0 **********#**##********************************************** + 0 0.2 0.4 0.6 0.8 + x +Iteration #17 +| Current sample size: n = 20 +| Volume estimate (plugin): 0.20490 [ref: 0.20490] +| Upper-bound on posterior std: 2.8000e-02 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1 +|+ + | *** + 0.5 +|+#######################****G##############*G*&G**####### + 0 +|+##########F############################################### + z %|****G*=&#####&****&****#######*G*######&**########***#### + -0.5 +|+##############%&*G*&###########***&&&G**##########&**&%# + -1 +|+################################&*****#############&***&& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%% + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.04 +|+ + + + + +-+| + 0.035 +|+ + + + + +-+| + 0.03 +|+##########F*###########################################+-+| + 0.025 +|+##########**###########################################+-+| + 0.02 +|+##########**###########################################+-+| + 0.015 +|+##########**###########################################+-+| + 0.01 +|+##########***##########################################+-+| + 0.005 +|-----------------------------------------------------------| + 0 **+***********#********************************************** + 0 0.2 0.4 0.6 0.8 + x +Iteration #18 +| Current sample size: n = 21 +| Volume estimate (plugin): 0.20490 [ref: 0.20490] +| Upper-bound on posterior std: 1.0742e-02 [target: 5.000e-04] + line 0: warning: iconv failed to convert degree sign + + | + 1 +|+ + | *** + 0.5 +|+#######################****G##############*G*&G**####### + 0 +|+########################################################## + z %|F***G*=&#####&****&****#######*G*######&**########***#### + -0.5 +|+###############&*G*&###########***&&&G**##########&**&%# + -1 +|+################################&*****#############&***&& + +|------------------------------------------------------------ + -1.5 +-+#########+###########+###########+###########+########%%% + 0 0.2 0.4 0.6 0.8 + |-----------------------------------------------------------| + 0.005 +|+ + + + + +-+| + +|F + + + + | + 0.004 +|**######################################################+-+| + 0.003 +|**######################################################+-+| + #|#*####################################################### | + 0.002 +|+*######################################################+-+| + 0.001 +|+*######################################################+-+| + +|-----------------------------------------------------------| + 0 **+#********************************************************* + 0 0.2 0.4 0.6 0.8 + x +Iteration #19 +| Current sample size: n = 22 +| Volume estimate (plugin): 0.20490 [ref: 0.20490] +| Upper-bound on posterior std: 4.6736e-05 [target: 5.000e-04] -1 test, 1 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/ctranspose.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/ctranspose.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/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/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/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/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/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/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.yTb5CMg86Z at line 1358 column 31 +history = <22x5 stk_dataframe array> -***** 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/quantile.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/quantile.m -***** shared x1, df1, p - x1 = rand (9, 3); - df1 = stk_dataframe (x1, {'a', 'b', 'c'}); - p = 0.95; -***** assert (isequal (quantile (df1, p), quantile (x1, p))) -***** 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/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 = double(x); - assert (strcmp(class(v), 'double') && isequal(v, u)) -***** test - u = (rand(4, 3) < 0.5); - x = stk_dataframe(u); - v = double(x); - assert (strcmp(class(v), 'double') && isequal(v, double(u))) -***** test - 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/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.882171 0.999760 - * : 0.676930 0.123373 - * : 0.008498 0.929990 -***** test format long; disp (x); - : ---------------- ---------------- - * : 0.88217127454330 0.99976034298923 - * : 0.67693027927384 0.12337264310145 - * : 0.00849778222195 0.92998955745376 -***** test format short; disp (x); format (fmt); - : -------- -------- - * : 0.882171 0.999760 - * : 0.676930 0.123373 - * : 0.008498 0.929990 -***** 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/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/mtimes.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/mtimes.m -***** shared x, y, z, w + : 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.2049 2049 + MC point #00845 : 0.104207 -0.13304 0.0000 -0.2049 2049 + MC point #00316 : 0.497610 0.26500 0.1051 -0.0998 1698 + MC point #01548 : 0.548704 -0.19696 0.1155 -0.0894 1512 + MC point #06280 : 0.400401 -0.08821 0.0821 -0.1228 1228 + MC point #01914 : 0.431677 0.16895 0.0852 -0.1197 1197 + MC point #02823 : 0.513500 0.15921 0.0870 -0.1179 1179 + MC point #05371 : 0.429142 0.15052 0.0871 -0.1178 1178 + MC point #02002 : 0.514584 0.15041 0.0871 -0.1178 1178 + MC point #02732 : 0.823122 0.46636 0.2202 0.0153 681 + MC point #09743 : 0.762414 0.41271 0.2192 0.0143 143 + MC point #02841 : 0.867015 -0.02664 0.2036 -0.0013 13 + MC point #01678 : 0.737441 0.15940 0.2041 -0.0008 8 + MC point #05503 : 0.853723 0.15787 0.2049 0.0000 0 + MC point #04929 : 0.736609 0.14951 0.2049 0.0000 0 + MC point #06267 : 0.191379 0.12478 0.2049 0.0000 0 + MC point #08160 : 0.210828 0.14261 0.2049 0.0000 0 + MC point #01659 : 0.224506 0.12035 0.2049 0.0000 0 + MC point #05568 : 0.035152 0.01559 0.2049 0.0000 0 - 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 +Final result: +| Number of evaluations: 4 + 18 = 22. +| Volume estimate (plugin): 20.4900% [ref: 20.4900%] - 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/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 = 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/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/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/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/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/expm1.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/expm1.m -***** test - 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/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/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/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/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/cos.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/cos.m -***** test - 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/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/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/sort.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/sort.m -***** shared x, y - x = stk_dataframe ([3; 2; 1], {}, {'a', 'b', 'c'}); - y = sort (x); -***** assert (strcmp (class (y), 'stk_dataframe')) -***** assert (isequal (y.data, [1; 2; 3])) -***** assert (isequal (y.rownames, {'c'; 'b'; 'a'})) -***** error y = sort (x, []); -***** assert (isequal (sort (x, 1), y)) -***** assert (isequal (sort (x, 2), x)) -***** error sort (x, 3) -***** error y = sort (x, [], 'ascend'); -***** assert (isequal (sort (x, 1, 'ascend'), y)) -***** assert (isequal (sort (x, 2, 'ascend'), x)) -***** error y = sort (x, 3, 'ascend'); -***** error y = sort (x, [], 'descend'); -***** assert (isequal (sort (x, 1, 'descend'), x)) -***** 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/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/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/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/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/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/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 (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/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'}))); +[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 - 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.yTb5CMg86Z at line 1582 column 31 + x1 = [0.1, 0.55592003, 0.85218259]; + y1 = -3.862634748621772; -***** 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/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/stk_boundingbox.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/stk_boundingbox.m -***** shared x, y, cn - cn = {'a', 'b', 'c'}; - x = stk_dataframe ([0 3 2; 1 4 1; 7 0 2], cn); -***** error y = stk_boundingbox (); -***** 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/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/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); -***** 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/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'}))); -3 tests, 3 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/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/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/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 = 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/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/subsref.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/subsref.m -***** shared x, s, t, data - x = stk_dataframe(rand(3, 2)); - s = {'a'; 'b'; 'c'}; - t = {'xx' 'yy'}; -***** test - x = set(x, 'rownames', s); - assert (isequal (x.rownames, s)) - assert (isequal (x.rownames{2}, 'b')) -***** test - x = set(x, 'colnames', t); - assert (isequal (x.rownames, s)) - assert (isequal (x.colnames, t)) - assert (isequal (x.colnames{2}, 'yy')) -***** shared u, data - u = rand(3, 2); - data = stk_dataframe(u, {'x1', 'x2'}); -***** assert (isequal (data.x2, u(:, 2))) -***** assert (data.x2(3) == u(3, 2)) -***** error t = data.toto; -***** error t = data(1, 1).zzz; % illegal multilevel indexing -***** error t = data(1, 1, 1); % too many indices -***** error t = data{1}; % curly braces not allowed -***** test % select rows and columns - x = stk_dataframe (reshape (1:15, 5, 3), {'u' 'v' 'w'}); - assert (isequal (x([3 5], 2), stk_dataframe ([8; 10], {'v'}))); -***** shared u, data - u = rand(3, 1); data = stk_dataframe(u, {'x'}); -***** assert (isequal (data.x, u)) -***** assert (isequal (double (data), u)) -***** assert (isequal (double (data(2)), u(2))) -***** assert (isequal (double (data(3, 1)), u(3))) -***** error t = data(1, 1, 1); % too many indices -***** test - x = stk_dataframe (randn (2, 2), {'u' 'v'}); - y = x ([], :); - assert (isa (y, 'stk_dataframe')); - assert (isequal (size (y), [0 2])); - assert (isequal (y.colnames, {'u' 'v'})); -***** test - x = stk_dataframe (randn (2, 2), [], {'a' 'b'}); - y = x (:, []); - assert (isa (y, 'stk_dataframe')); - 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/bsxfun.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/bsxfun.m -***** shared x1, x2, data1, data2 - x1 = rand (3, 2); data1 = stk_dataframe (x1); - x2 = rand (3, 2); data2 = stk_dataframe (x2); -***** test - z = bsxfun (@plus, data1, x2); - assert (isa (z, 'stk_dataframe') && isequal (double (z), x1 + x2)) -***** test - z = bsxfun (@plus, x1, data2); - assert (isa (z, 'stk_dataframe') && isequal (double (z), x1 + x2)) -***** test - z = bsxfun (@plus, data1, data2); - assert (isa (z, 'stk_dataframe') && isequal (double (z), x1 + x2)) -***** shared x, y - x = stk_dataframe (randn (2), {'x1', 'x2'}, {'a'; 'b'}); - y = stk_dataframe (randn (2), {'y1', 'y2'}, {'c'; 'd'}); -***** test z = x + y; - assert (isequal (z.colnames, x.colnames)); - assert (isequal (z.rownames, x.rownames)); -***** test z = y + x; - 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/log2.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_dataframe/log2.m -***** test - 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/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/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_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/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/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/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 - 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/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.yTb5CMg86Z at line 1750 column 31 + x2 = [0.114614 0.554649 0.852547]; + y2 = -3.862747199255087; -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_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/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/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); + 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/arrays/generic/stk_feval.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/stk_feval.m -***** shared f, xt - f = @(x)(- (0.7 * x + sin (5 * x + 1) + 0.1 * sin (10 * x))); - xt = stk_sampling_regulargrid (20, 1, [0; 1]); -***** error yt = stk_feval (); -***** error yt = stk_feval (f); -***** test yt = stk_feval (f, xt); -***** test yt = stk_feval (f, xt, false); -***** test yt = stk_feval (f, xt, false, false); -***** test yt = stk_feval (f, xt, false, false, false); -***** test - N = 15; - xt = stk_sampling_regulargrid (N, 1, [0; 1]); - yt = stk_feval (f, xt); - assert (isequal (size (yt), [N 1])); -***** test - x = stk_dataframe ([1; 2; 3], {'x'}, {'a'; 'b'; 'c'}); - y = stk_feval (@(u)(2 * u), x); - assert (isequal (y.data, [2; 4; 6])); - assert (isequal (y.rownames, {'a'; 'b'; 'c'})); -***** shared t, z_ref, n - n = 20; - t = stk_sampling_regulargrid (n, 1, [0; 2*pi]); - z_ref = [sin(t.data) cos(t.data)]; -***** test - t.colnames = {'time'}; - z = stk_feval ({@sin, @cos}, t); - assert (isa (z, 'stk_dataframe')); - assert (isequal (z.data, z_ref)); -***** test - F = @(x)([sin(x) cos(x)]); - z = stk_feval (F, t); - assert (isequal (z.data, z_ref)); +[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_hartman4.m] +>>>>> /build/reproducible-path/octave-stk-2.8.1/inst/examples/test_functions/stk_testfun_hartman4.m ***** test - t = stk_sampling_regulargrid (n, 1, [0; 2*pi]); - F = {'sin', 'cos'}; - z = stk_feval (F, t); - assert (isequal (z.data, [sin(t.data) cos(t.data)])); - assert (isequal (z.colnames, {'sin' 'cos'})); -***** test % vectorized - F = @(t)([sin(t) cos(t)]); - G = @(t)(0.365 * t.^2 + (cos ((t - 1).*(t - 2) + 0.579033))); - z = stk_feval ({@sin, @cos, G, F, 'tan'}, t); - assert (isequal (z.colnames, {'sin' 'cos' 'F3' 'F4_1' 'F4_2' 'tan'})); -***** test % not vectorized - F = @(t)([sin(t) cos(t)]); - G = @(t)(0.365 * t^2 + (cos ((t - 1)*(t - 2) + 0.579033))); - 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_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)); + 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/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_rescale.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/generic/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_factorialdesign/uminus.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/uminus.m +[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 - x = stk_factorialdesign ({1:3, 1:2}); - y = stk_factorialdesign ({-(1:3), -(1:2)}); - assert (isequal (-x, y)) -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/stk_factorialdesign.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_factorialdesign.m -***** test stk_test_class ('stk_factorialdesign') -***** test % constructor with two factors + column names - x = stk_factorialdesign ({[0 1], [1 2 3]}, {'a', 'b'}); - assert (isequal(x.colnames, {'a', 'b'})); - assert (isequal(get (x, 'colnames'), {'a', 'b'})); -***** error stk_factorialdesign ('bouh'); -***** error stk_factorialdesign ({{'a' 'b'}}); -***** shared x, fmt - fmt = stk_disp_getformat (); - x = stk_sampling_regulargrid (3^2, 2); -***** test format rat; disp (x); - : --- --- - * : 0.0 0.0 - * : 0.5 0.0 - * : 1.0 0.0 - * : 0.0 0.5 - * : 0.5 0.5 - * : 1.0 0.5 - * : 0.0 1.0 - * : 0.5 1.0 - * : 1.0 1.0 -***** test format long; disp (x); - : --- --- - * : 0.0 0.0 - * : 0.5 0.0 - * : 1.0 0.0 - * : 0.0 0.5 - * : 0.5 0.5 - * : 1.0 0.5 - * : 0.0 1.0 - * : 0.5 1.0 - * : 1.0 1.0 -***** test format short; disp (x); format (fmt); - : --- --- - * : 0.0 0.0 - * : 0.5 0.0 - * : 1.0 0.0 - * : 0.0 0.5 - * : 0.5 0.5 - * : 1.0 0.5 - * : 0.0 1.0 - * : 0.5 1.0 - * : 1.0 1.0 -***** test disp (stk_sampling_regulargrid (0^1, 1)); - Empty data frame with 0 rows and 0 columns -***** test disp (stk_sampling_regulargrid (0^2, 2)); - Empty data frame with 0 rows and 0 columns -***** test display (x); - -x = <9x2 stk_factorialdesign array> + x1 = [0.20169 0.150011 0.476874 0.275332 0.311652 0.657300]; + y1 = -3.322368011391339; - : --- --- - * : 0.0 0.0 - * : 0.5 0.0 - * : 1.0 0.0 - * : 0.0 0.5 - * : 0.5 0.5 - * : 1.0 0.5 - * : 0.0 1.0 - * : 0.5 1.0 - * : 1.0 1.0 + x2 = [0.20168952 0.15001069 0.47687398 0.27533243 0.31165162 0.65730054]; + y2 = -3.322368011415512; -***** error length (stk_sampling_regulargrid (7^2, 2)) % not defined -***** shared x - x = stk_factorialdesign ({[0 1], [0 1]}); -***** assert (isequal (x(2:end, :), x(2:4, :))) -***** assert (isequal (x(2, 1:end), x(2, :))) -***** assert (isequal (x(2:end, 2:end), x(2:4, 2))) -***** error x(1:end, 1:end, 1:end) -***** shared x, y - x = stk_sampling_regulargrid (3^2, 2); - y = x; -***** test %%%% vercat - z = vertcat (x, y); - assert (strcmp (class (z), 'stk_dataframe')); - assert (isequal (double (z), [double(x); double(y)])); -***** test %%%% same thing, using cat(1, ...) - z = cat (1, x, y); - assert (strcmp (class (z), 'stk_dataframe')); - assert (isequal (double (z), [double(x); double(y)])); -***** test %%%% horzcat - y.colnames = {'y1' 'y2'}; z = horzcat (x, y); - assert (strcmp (class (z), 'stk_dataframe')); - assert (isequal (double (z), [double(x) double(y)])); -***** test %%%% same thing, using cat (2, ...) - z = cat (2, x, y); - assert (strcmp (class (z), 'stk_dataframe')); - assert (isequal (double (z), [double(x) double(y)])); -***** error cat (3, x, y) -***** shared x, t - x = stk_sampling_regulargrid (3^2, 2); - t = double (x); -***** assert (isequal (apply (x, 1, @sum), sum (t, 1))) -***** assert (isequal (apply (x, 2, @sum), sum (t, 2))) -***** error u = apply (x, 3, @sum); -***** assert (isequal (apply (x, 1, @min, []), min (t, [], 1))) -***** assert (isequal (apply (x, 2, @min, []), min (t, [], 2))) -***** error u = apply (x, 3, @min, []); -***** assert (isequal (min (x), min (t))) -***** assert (isequal (max (x), max (t))) -***** assert (isequal (std (x), std (t))) -***** assert (isequal (var (x), var (t))) -***** assert (isequal (sum (x), sum (t))) -***** assert (isequal (mean (x), mean (t))) -***** assert (isequal (mode (x), mode (t))) -***** assert (isequal (prod (x), prod (t))) -***** assert (isequal (median (x), median (t))) -***** shared x1, x2, x3, u1, u2, u3 - x1 = stk_sampling_regulargrid ([4 3], 2); u1 = double (x1); - x2 = stk_sampling_regulargrid ([3 4], 2); u2 = double (x2); - x3 = x1 + 1; u3 = u1 + 1; -***** test - z = bsxfun (@plus, x1, u2); - assert (isa (z, 'stk_dataframe') && isequal (double (z), u1 + u2)) -***** test - z = bsxfun (@plus, u1, x2); - assert (isa (z, 'stk_dataframe') && isequal (double (z), u1 + u2)) -***** test - z = bsxfun (@plus, x1, x2); - assert (isa (z, 'stk_dataframe') && isequal (double (z), u1 + u2)) -***** test z = min (x1, x2); assert (isequal (double (z), min (u1, u2))); -***** test z = max (x1, x2); assert (isequal (double (z), max (u1, u2))); -***** error z = min (x1, x2, 1); -***** error z = max (x1, x2, 1); -***** test z = x1 + x2; assert (isequal (double (z), u1 + u2)); -***** test z = x1 - x2; assert (isequal (double (z), u1 - u2)); -***** test z = x1 .* x2; assert (isequal (double (z), u1 .* u2)); -***** test z = x3 .\ x2; assert (isequal (double (z), u3 .\ u2)); -***** test z = x2 ./ x3; assert (isequal (double (z), u2 ./ u3)); -***** test z = x3 .^ x2; assert (isequal (double (z), u3 .^ u2)); -***** test z = realpow (x3, x2); assert (isequal (double (z), realpow (u3, u2))); -***** test z = (x1 == x2); assert (isequal (double (z), (u1 == u2))); -***** test z = (x1 ~= x2); assert (isequal (double (z), (u1 ~= u2))); -***** test z = (x1 <= x2); assert (isequal (double (z), (u1 <= u2))); -***** test z = (x1 >= x2); assert (isequal (double (z), (u1 >= u2))); -***** test z = (x1 < x2); assert (isequal (double (z), (u1 < u2))); -***** test z = (x1 > x2); assert (isequal (double (z), (u1 > u2))); -***** test z = x1 & x2; assert (isequal (double (z), u1 & u2)); -***** test z = x1 | x2; assert (isequal (double (z), u1 | u2)); -***** test z = xor (x1, x2); assert (isequal (double (z), xor (u1, u2))); -***** shared x - x = stk_factorialdesign ({[0 1], [0 1 2]}); -***** 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/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)); + 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/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/ndgrid.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/ndgrid.m -***** shared data - data = stk_factorialdesign ({[0 1], [5 6 7]}); -***** test % nargout = 0 - ndgrid (data); - assert (isequal (ans, [0 0 0; 1 1 1])); -***** test % nargout = 1 - x = ndgrid (data); - assert (isequal (x, [0 0 0; 1 1 1])); -***** test % nargout = 2 - [x, y] = ndgrid (data); - assert (isequal ({x, y}, {[0 0 0; 1 1 1], [5 6 7; 5 6 7]})); -***** error % nargout = 3 - [x, y, z] = ndgrid (data); -***** test - data = stk_factorialdesign ({[], []}); - [x, y] = ndgrid (data); - assert (isequal ({x, y}, {[], []})); -***** test - data = stk_factorialdesign ({[1:3]}); - x = ndgrid (data); - assert (isequal (x, [1; 2; 3])); -6 tests, 6 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/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 - 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/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_rescale.m] ->>>>> /build/reproducible-path/octave-stk-2.8.1/inst/arrays/@stk_factorialdesign/stk_rescale.m + 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 - 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 + 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 Checking C++ files ... Done running the unit tests. Summary: 1558 tests, 1558 passed, 0 known failures, 0 skipped @@ -11043,12 +11139,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/20066/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/20066/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/112400 and its subdirectories -I: Current time: Sat Jan 31 02:14:09 -12 2026 -I: pbuilder-time-stamp: 1769868849 +I: removing directory /srv/workspace/pbuilder/20066 and its subdirectories +I: Current time: Sun Dec 29 21:58:34 +14 2024 +I: pbuilder-time-stamp: 1735459114