Diff of the two buildlogs: -- --- b1/build.log 2020-06-16 09:08:02.991323218 +0000 +++ b2/build.log 2020-06-16 09:11:11.591628376 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Jun 15 20:56:54 -12 2020 -I: pbuilder-time-stamp: 1592297814 +I: Current time: Tue Jul 20 05:31:02 +14 2021 +I: pbuilder-time-stamp: 1626708662 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/buster-reproducible-base.tgz] I: copying local configuration @@ -18,7 +18,7 @@ I: Extracting source gpgv: unknown type of key resource 'trustedkeys.kbx' gpgv: keyblock resource '/root/.gnupg/trustedkeys.kbx': General error -gpgv: Signature made Fri Jan 4 20:45:30 2019 -12 +gpgv: Signature made Sat Jan 5 22:45:30 2019 +14 gpgv: using RSA key 3F464391498FE874BDB5D98F2124AA1983785C90 gpgv: Can't check signature: No public key dpkg-source: warning: failed to verify signature on ./octave-stk_2.5.1-2.dsc @@ -30,138 +30,172 @@ 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/23672/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/18134/tmp/hooks/D01_modify_environment starting +debug: Running on profitbricks-build6-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 +Removing 'diversion of /bin/sh to /bin/sh.distrib by dash' +Adding 'diversion of /bin/sh to /bin/sh.distrib by bash' +Removing 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash' +Adding 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by 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/18134/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/18134/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build' - 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=10' - DISTRIBUTION='' - HOME='/root' - HOST_ARCH='i386' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="0" [2]="3" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") + BASH_VERSION='5.0.3(1)-release' + BUILDDIR=/build + 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=18' + DIRSTACK=() + DISTRIBUTION= + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=i686 + HOST_ARCH=i386 IFS=' ' - INVOCATION_ID='72c1c523493949cba5ce6e9e6f5fb9c0' - 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='23672' - PS1='# ' - PS2='> ' + INVOCATION_ID=f6697d75b6814730bc36ff14e8b80e17 + 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=18134 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/tmp.0ynQoEfNpj/pbuilderrc_l53S --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/buster-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/tmp.0ynQoEfNpj/b1 --logfile b1/build.log octave-stk_2.5.1-2.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://78.137.99.97: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/tmp.0ynQoEfNpj/pbuilderrc_2AY0 --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/buster-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/tmp.0ynQoEfNpj/b2 --logfile b2/build.log octave-stk_2.5.1-2.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://85.184.249.68:3128 I: uname -a - Linux profitbricks-build2-i386 4.19.0-9-686-pae #1 SMP Debian 4.19.118-2+deb10u1 (2020-06-07) i686 GNU/Linux + Linux i-capture-the-hostname 4.19.0-9-amd64 #1 SMP Debian 4.19.118-2+deb10u1 (2020-06-07) x86_64 GNU/Linux I: ls -l /bin - total 5480 - -rwxr-xr-x 1 root root 1302248 Apr 17 2019 bash - -rwxr-xr-x 3 root root 38280 Jul 10 2019 bunzip2 - -rwxr-xr-x 3 root root 38280 Jul 10 2019 bzcat - lrwxrwxrwx 1 root root 6 Jul 10 2019 bzcmp -> bzdiff - -rwxr-xr-x 1 root root 2227 Jul 10 2019 bzdiff - lrwxrwxrwx 1 root root 6 Jul 10 2019 bzegrep -> bzgrep - -rwxr-xr-x 1 root root 4877 Jun 24 2019 bzexe - lrwxrwxrwx 1 root root 6 Jul 10 2019 bzfgrep -> bzgrep - -rwxr-xr-x 1 root root 3641 Jul 10 2019 bzgrep - -rwxr-xr-x 3 root root 38280 Jul 10 2019 bzip2 - -rwxr-xr-x 1 root root 17768 Jul 10 2019 bzip2recover - lrwxrwxrwx 1 root root 6 Jul 10 2019 bzless -> bzmore - -rwxr-xr-x 1 root root 1297 Jul 10 2019 bzmore - -rwxr-xr-x 1 root root 38692 Feb 28 2019 cat - -rwxr-xr-x 1 root root 75588 Feb 28 2019 chgrp - -rwxr-xr-x 1 root root 63268 Feb 28 2019 chmod - -rwxr-xr-x 1 root root 75588 Feb 28 2019 chown - -rwxr-xr-x 1 root root 153732 Feb 28 2019 cp - -rwxr-xr-x 1 root root 132820 Jan 17 2019 dash - -rwxr-xr-x 1 root root 120676 Feb 28 2019 date - -rwxr-xr-x 1 root root 92040 Feb 28 2019 dd - -rwxr-xr-x 1 root root 100620 Feb 28 2019 df - -rwxr-xr-x 1 root root 149736 Feb 28 2019 dir - -rwxr-xr-x 1 root root 79412 Jan 9 2019 dmesg - lrwxrwxrwx 1 root root 8 Sep 26 2018 dnsdomainname -> hostname - lrwxrwxrwx 1 root root 8 Sep 26 2018 domainname -> hostname - -rwxr-xr-x 1 root root 34532 Feb 28 2019 echo - -rwxr-xr-x 1 root root 28 Jan 7 2019 egrep - -rwxr-xr-x 1 root root 34532 Feb 28 2019 false - -rwxr-xr-x 1 root root 28 Jan 7 2019 fgrep - -rwxr-xr-x 1 root root 67700 Jan 9 2019 findmnt - -rwsr-xr-x 1 root root 30112 Apr 22 07:38 fusermount - -rwxr-xr-x 1 root root 206392 Jan 7 2019 grep - -rwxr-xr-x 2 root root 2345 Jan 5 2019 gunzip - -rwxr-xr-x 1 root root 6375 Jan 5 2019 gzexe - -rwxr-xr-x 1 root root 100952 Jan 5 2019 gzip - -rwxr-xr-x 1 root root 21916 Sep 26 2018 hostname - -rwxr-xr-x 1 root root 79752 Feb 28 2019 ln - -rwxr-xr-x 1 root root 55400 Jul 26 2018 login - -rwxr-xr-x 1 root root 149736 Feb 28 2019 ls - -rwxr-xr-x 1 root root 112032 Jan 9 2019 lsblk - -rwxr-xr-x 1 root root 87972 Feb 28 2019 mkdir - -rwxr-xr-x 1 root root 79748 Feb 28 2019 mknod - -rwxr-xr-x 1 root root 46916 Feb 28 2019 mktemp - -rwxr-xr-x 1 root root 42348 Jan 9 2019 more - -rwsr-xr-x 1 root root 50592 Jan 9 2019 mount - -rwxr-xr-x 1 root root 13724 Jan 9 2019 mountpoint - -rwxr-xr-x 1 root root 157832 Feb 28 2019 mv - lrwxrwxrwx 1 root root 8 Sep 26 2018 nisdomainname -> hostname - lrwxrwxrwx 1 root root 14 Feb 14 2019 pidof -> /sbin/killall5 - -rwxr-xr-x 1 root root 38660 Feb 28 2019 pwd - lrwxrwxrwx 1 root root 4 Apr 17 2019 rbash -> bash - -rwxr-xr-x 1 root root 46852 Feb 28 2019 readlink - -rwxr-xr-x 1 root root 75588 Feb 28 2019 rm - -rwxr-xr-x 1 root root 42756 Feb 28 2019 rmdir - -rwxr-xr-x 1 root root 22276 Jan 21 2019 run-parts - -rwxr-xr-x 1 root root 125036 Dec 22 2018 sed - lrwxrwxrwx 1 root root 4 Jun 14 20:33 sh -> dash - -rwxr-xr-x 1 root root 34532 Feb 28 2019 sleep - -rwxr-xr-x 1 root root 79652 Feb 28 2019 stty - -rwsr-xr-x 1 root root 71072 Jan 9 2019 su - -rwxr-xr-x 1 root root 34564 Feb 28 2019 sync - -rwxr-xr-x 1 root root 504024 Apr 23 2019 tar - -rwxr-xr-x 1 root root 13860 Jan 21 2019 tempfile - -rwxr-xr-x 1 root root 104292 Feb 28 2019 touch - -rwxr-xr-x 1 root root 34532 Feb 28 2019 true - -rwxr-xr-x 1 root root 17768 Apr 22 07:38 ulockmgr_server - -rwsr-xr-x 1 root root 30108 Jan 9 2019 umount - -rwxr-xr-x 1 root root 34532 Feb 28 2019 uname - -rwxr-xr-x 2 root root 2345 Jan 5 2019 uncompress - -rwxr-xr-x 1 root root 149736 Feb 28 2019 vdir - -rwxr-xr-x 1 root root 34208 Jan 9 2019 wdctl - -rwxr-xr-x 1 root root 946 Jan 21 2019 which - lrwxrwxrwx 1 root root 8 Sep 26 2018 ypdomainname -> hostname - -rwxr-xr-x 1 root root 1983 Jan 5 2019 zcat - -rwxr-xr-x 1 root root 1677 Jan 5 2019 zcmp - -rwxr-xr-x 1 root root 5879 Jan 5 2019 zdiff - -rwxr-xr-x 1 root root 29 Jan 5 2019 zegrep - -rwxr-xr-x 1 root root 29 Jan 5 2019 zfgrep - -rwxr-xr-x 1 root root 2080 Jan 5 2019 zforce - -rwxr-xr-x 1 root root 7584 Jan 5 2019 zgrep - -rwxr-xr-x 1 root root 2205 Jan 5 2019 zless - -rwxr-xr-x 1 root root 1841 Jan 5 2019 zmore - -rwxr-xr-x 1 root root 4552 Jan 5 2019 znew -I: user script /srv/workspace/pbuilder/23672/tmp/hooks/D02_print_environment finished + total 5476 + -rwxr-xr-x 1 root root 1302248 Apr 18 2019 bash + -rwxr-xr-x 3 root root 38280 Jul 11 2019 bunzip2 + -rwxr-xr-x 3 root root 38280 Jul 11 2019 bzcat + lrwxrwxrwx 1 root root 6 Jul 11 2019 bzcmp -> bzdiff + -rwxr-xr-x 1 root root 2227 Jul 11 2019 bzdiff + lrwxrwxrwx 1 root root 6 Jul 11 2019 bzegrep -> bzgrep + -rwxr-xr-x 1 root root 4877 Jun 25 2019 bzexe + lrwxrwxrwx 1 root root 6 Jul 11 2019 bzfgrep -> bzgrep + -rwxr-xr-x 1 root root 3641 Jul 11 2019 bzgrep + -rwxr-xr-x 3 root root 38280 Jul 11 2019 bzip2 + -rwxr-xr-x 1 root root 17768 Jul 11 2019 bzip2recover + lrwxrwxrwx 1 root root 6 Jul 11 2019 bzless -> bzmore + -rwxr-xr-x 1 root root 1297 Jul 11 2019 bzmore + -rwxr-xr-x 1 root root 38692 Mar 1 2019 cat + -rwxr-xr-x 1 root root 75588 Mar 1 2019 chgrp + -rwxr-xr-x 1 root root 63268 Mar 1 2019 chmod + -rwxr-xr-x 1 root root 75588 Mar 1 2019 chown + -rwxr-xr-x 1 root root 153732 Mar 1 2019 cp + -rwxr-xr-x 1 root root 132820 Jan 18 2019 dash + -rwxr-xr-x 1 root root 120676 Mar 1 2019 date + -rwxr-xr-x 1 root root 92040 Mar 1 2019 dd + -rwxr-xr-x 1 root root 100620 Mar 1 2019 df + -rwxr-xr-x 1 root root 149736 Mar 1 2019 dir + -rwxr-xr-x 1 root root 79412 Jan 10 2019 dmesg + lrwxrwxrwx 1 root root 8 Sep 27 2018 dnsdomainname -> hostname + lrwxrwxrwx 1 root root 8 Sep 27 2018 domainname -> hostname + -rwxr-xr-x 1 root root 34532 Mar 1 2019 echo + -rwxr-xr-x 1 root root 28 Jan 8 2019 egrep + -rwxr-xr-x 1 root root 34532 Mar 1 2019 false + -rwxr-xr-x 1 root root 28 Jan 8 2019 fgrep + -rwxr-xr-x 1 root root 67700 Jan 10 2019 findmnt + -rwsr-xr-x 1 root root 30112 Apr 23 2020 fusermount + -rwxr-xr-x 1 root root 206392 Jan 8 2019 grep + -rwxr-xr-x 2 root root 2345 Jan 6 2019 gunzip + -rwxr-xr-x 1 root root 6375 Jan 6 2019 gzexe + -rwxr-xr-x 1 root root 100952 Jan 6 2019 gzip + -rwxr-xr-x 1 root root 21916 Sep 27 2018 hostname + -rwxr-xr-x 1 root root 79752 Mar 1 2019 ln + -rwxr-xr-x 1 root root 55400 Jul 27 2018 login + -rwxr-xr-x 1 root root 149736 Mar 1 2019 ls + -rwxr-xr-x 1 root root 112032 Jan 10 2019 lsblk + -rwxr-xr-x 1 root root 87972 Mar 1 2019 mkdir + -rwxr-xr-x 1 root root 79748 Mar 1 2019 mknod + -rwxr-xr-x 1 root root 46916 Mar 1 2019 mktemp + -rwxr-xr-x 1 root root 42348 Jan 10 2019 more + -rwsr-xr-x 1 root root 50592 Jan 10 2019 mount + -rwxr-xr-x 1 root root 13724 Jan 10 2019 mountpoint + -rwxr-xr-x 1 root root 157832 Mar 1 2019 mv + lrwxrwxrwx 1 root root 8 Sep 27 2018 nisdomainname -> hostname + lrwxrwxrwx 1 root root 14 Feb 15 2019 pidof -> /sbin/killall5 + -rwxr-xr-x 1 root root 38660 Mar 1 2019 pwd + lrwxrwxrwx 1 root root 4 Apr 18 2019 rbash -> bash + -rwxr-xr-x 1 root root 46852 Mar 1 2019 readlink + -rwxr-xr-x 1 root root 75588 Mar 1 2019 rm + -rwxr-xr-x 1 root root 42756 Mar 1 2019 rmdir + -rwxr-xr-x 1 root root 22276 Jan 22 2019 run-parts + -rwxr-xr-x 1 root root 125036 Dec 23 2018 sed + lrwxrwxrwx 1 root root 4 Jul 20 05:31 sh -> bash + lrwxrwxrwx 1 root root 4 Jul 20 04:46 sh.distrib -> dash + -rwxr-xr-x 1 root root 34532 Mar 1 2019 sleep + -rwxr-xr-x 1 root root 79652 Mar 1 2019 stty + -rwsr-xr-x 1 root root 71072 Jan 10 2019 su + -rwxr-xr-x 1 root root 34564 Mar 1 2019 sync + -rwxr-xr-x 1 root root 504024 Apr 24 2019 tar + -rwxr-xr-x 1 root root 13860 Jan 22 2019 tempfile + -rwxr-xr-x 1 root root 104292 Mar 1 2019 touch + -rwxr-xr-x 1 root root 34532 Mar 1 2019 true + -rwxr-xr-x 1 root root 17768 Apr 23 2020 ulockmgr_server + -rwsr-xr-x 1 root root 30108 Jan 10 2019 umount + -rwxr-xr-x 1 root root 34532 Mar 1 2019 uname + -rwxr-xr-x 2 root root 2345 Jan 6 2019 uncompress + -rwxr-xr-x 1 root root 149736 Mar 1 2019 vdir + -rwxr-xr-x 1 root root 34208 Jan 10 2019 wdctl + -rwxr-xr-x 1 root root 946 Jan 22 2019 which + lrwxrwxrwx 1 root root 8 Sep 27 2018 ypdomainname -> hostname + -rwxr-xr-x 1 root root 1983 Jan 6 2019 zcat + -rwxr-xr-x 1 root root 1677 Jan 6 2019 zcmp + -rwxr-xr-x 1 root root 5879 Jan 6 2019 zdiff + -rwxr-xr-x 1 root root 29 Jan 6 2019 zegrep + -rwxr-xr-x 1 root root 29 Jan 6 2019 zfgrep + -rwxr-xr-x 1 root root 2080 Jan 6 2019 zforce + -rwxr-xr-x 1 root root 7584 Jan 6 2019 zgrep + -rwxr-xr-x 1 root root 2205 Jan 6 2019 zless + -rwxr-xr-x 1 root root 1841 Jan 6 2019 zmore + -rwxr-xr-x 1 root root 4552 Jan 6 2019 znew +I: user script /srv/workspace/pbuilder/18134/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -549,7 +583,7 @@ Get: 348 http://deb.debian.org/debian buster/main i386 fonts-freefont-otf all 20120503-9 [3169 kB] Get: 349 http://deb.debian.org/debian buster/main i386 dh-octave-autopkgtest all 0.6.2 [8308 B] Get: 350 http://deb.debian.org/debian buster/main i386 dh-octave all 0.6.2 [19.9 kB] -Fetched 135 MB in 31s (4403 kB/s) +Fetched 135 MB in 2s (73.9 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libbsd0:i386. (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 ... 19234 files and directories currently installed.) @@ -1996,7 +2030,7 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/octave-stk-2.5.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b +I: Running cd /build/octave-stk-2.5.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b dpkg-buildpackage: info: source package octave-stk dpkg-buildpackage: info: source version 2.5.1-2 dpkg-buildpackage: info: source distribution unstable @@ -2035,45 +2069,45 @@ /usr/bin/mkoctfile --verbose --mex --output __stk_filldist_discr_mex__.mex stk_filldist_discr_mex.c /usr/bin/mkoctfile --verbose --mex --output __stk_gpquadform_matrixy__.mex stk_gpquadform_matrixy.c /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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_matrixy.c -o stk_dist_matrixy.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_pairwise.c -o stk_dist_pairwise.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_isdominated_mex.c -o stk_isdominated_mex.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_matrixy.c -o stk_gpquadform_matrixy.o gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG get_column_number.c -o get_column_number.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_filldist_discr_mex.c -o stk_filldist_discr_mex.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_pairwise.c -o stk_dist_pairwise.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_mindist_mex.c -o stk_mindist_mex.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_filldist_discr_mex.c -o stk_filldist_discr_mex.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_matrixx.c -o stk_dist_matrixx.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_matrixx.c -o stk_gpquadform_matrixx.o -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_pairwise.c -o stk_gpquadform_pairwise.o -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_dist_pairwise__.mex stk_dist_pairwise.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __get_column_number__.mex get_column_number.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_gpquadform_pairwise__.mex stk_gpquadform_pairwise.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_filldist_discr_mex__.mex stk_filldist_discr_mex.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_gpquadform_matrixy__.mex stk_gpquadform_matrixy.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_dist_matrixy__.mex stk_dist_matrixy.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_mindist_mex__.mex stk_mindist_mex.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_dist_matrixx__.mex stk_dist_matrixx.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_gpquadform_matrixx__.mex stk_gpquadform_matrixx.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_isdominated_mex__.mex stk_isdominated_mex.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_matrixy.c -o stk_dist_matrixy.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_matrixy.c -o stk_gpquadform_matrixy.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_paretofind_mex.c -o stk_paretofind_mex.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_isdominated_mex.c -o stk_isdominated_mex.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_sampling_vdc_rr2.c -o stk_sampling_vdc_rr2.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_mindist_mex.c -o stk_mindist_mex.o /usr/bin/mkoctfile --verbose --mex --output __stk_distrib_bivnorm0_cdf__.mex stk_distrib_bivnorm0_cdf.c +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dist_matrixx.c -o stk_dist_matrixx.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_matrixx.c -o stk_gpquadform_matrixx.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_gpquadform_pairwise.c -o stk_gpquadform_pairwise.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_paretofind_mex.c -o stk_paretofind_mex.o gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_sampling_sobol_mex.c -o stk_sampling_sobol_mex.o +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_sampling_vdc_rr2.c -o stk_sampling_vdc_rr2.o gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_distrib_bivnorm0_cdf.c -o stk_distrib_bivnorm0_cdf.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-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG stk_dominatedhv_mex.c -o stk_dominatedhv_mex.o +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_dist_matrixx__.mex stk_dist_matrixx.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_gpquadform_matrixx__.mex stk_gpquadform_matrixx.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_dist_pairwise__.mex stk_dist_pairwise.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_mindist_mex__.mex stk_mindist_mex.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_dist_matrixy__.mex stk_dist_matrixy.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_gpquadform_pairwise__.mex stk_gpquadform_pairwise.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_filldist_discr_mex__.mex stk_filldist_discr_mex.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_gpquadform_matrixy__.mex stk_gpquadform_matrixy.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __get_column_number__.mex get_column_number.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_paretofind_mex__.mex stk_paretofind_mex.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_distrib_bivnorm0_cdf__.mex stk_distrib_bivnorm0_cdf.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro -gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG wfg.c -o wfg.o +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_isdominated_mex__.mex stk_isdominated_mex.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_sampling_vdc_rr2__.mex stk_sampling_vdc_rr2.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_sampling_sobol_mex__.mex stk_sampling_sobol_mex.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_distrib_bivnorm0_cdf__.mex stk_distrib_bivnorm0_cdf.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro +gcc -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -I. -DMEX_DEBUG wfg.c -o wfg.o g++ -I/usr/include/octave-4.4.1/octave/.. -I/usr/include/octave-4.4.1/octave -pthread -fopenmp -mieee-fp -g -O2 -ffile-prefix-map=/build/octave-stk-2.5.1=. -fstack-protector-strong -Wformat -Werror=format-security -shared -Wl,-Bsymbolic -o __stk_dominatedhv_mex__.mex stk_dominatedhv_mex.o wfg.o -L/usr/lib/i386-linux-gnu/octave/4.4.1 -L/usr/lib/i386-linux-gnu -loctinterp -loctave -Wl,-z,relro make[1]: Leaving directory '/build/octave-stk-2.5.1/src' copyfile /build/octave-stk-2.5.1/./src/__get_column_number__.mex /build/octave-stk-2.5.1/./src/__stk_dist_matrixx__.mex /build/octave-stk-2.5.1/./src/__stk_dist_matrixy__.mex /build/octave-stk-2.5.1/./src/__stk_dist_pairwise__.mex /build/octave-stk-2.5.1/./src/__stk_distrib_bivnorm0_cdf__.mex /build/octave-stk-2.5.1/./src/__stk_dominatedhv_mex__.mex /build/octave-stk-2.5.1/./src/__stk_filldist_discr_mex__.mex /build/octave-stk-2.5.1/./src/__stk_gpquadform_matrixx__.mex /build/octave-stk-2.5.1/./src/__stk_gpquadform_matrixy__.mex /build/octave-stk-2.5.1/./src/__stk_gpquadform_pairwise__.mex /build/octave-stk-2.5.1/./src/__stk_isdominated_mex__.mex /build/octave-stk-2.5.1/./src/__stk_mindist_mex__.mex /build/octave-stk-2.5.1/./src/__stk_paretofind_mex__.mex /build/octave-stk-2.5.1/./src/__stk_sampling_sobol_mex__.mex /build/octave-stk-2.5.1/./src/__stk_sampling_vdc_rr2__.mex /build/octave-stk-2.5.1/./inst/i686-pc-linux-gnu-api-v52 @@ -2081,60 +2115,690 @@ dh_octave_check -O--buildsystem=octave Checking package... Checking m files ... -[inst/arrays/@stk_dataframe/std.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/std.m +[inst/arrays/@stk_factorialdesign/fieldnames.m] +>>>>> /build/octave-stk-2.5.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', 'stk_dataframe', 'u', 'v'}; + assert (isequal (fn1, fn2)); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/uminus.m] +>>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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_boundingbox.m] +>>>>> /build/octave-stk-2.5.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); +***** error y = stk_boundingbox (x, 1); +***** assert (isequal (y, stk_hrect ([1 3 0; 2 5 8], cn))); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/ismember.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_factorialdesign/ismember.m +***** shared A, B, BB, b + + i_max = 10; n = 100; d = 5; + + A = randi (i_max, n, d); + + levels = repmat ({1:i_max}, 1, d); + levels{4} = 1:2:i_max; + B = stk_factorialdesign (levels); + + BB = double (B); +***** test b = ismember (A, B); +***** assert (isequal (b, ismember (A, BB))); +***** test b = ismember (A, B, 'rows'); +***** assert (isequal (b, ismember (A, BB, 'rows'))); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/stk_normalize.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_factorialdesign/stk_normalize.m +***** test + x = stk_factorialdesign ({[1 2], [5 6]}); + y = stk_factorialdesign ({[0 1], [0 1]}); + assert (stk_isequal_tolabs (stk_normalize (x), y)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_factorialdesign/ndgrid.m] +>>>>> /build/octave-stk-2.5.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_rescale.m] +>>>>> /build/octave-stk-2.5.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/stk_factorialdesign.m] +>>>>> /build/octave-stk-2.5.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> + + : --- --- + * : 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 + +***** 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/generic/stk_feval.m] +>>>>> /build/octave-stk-2.5.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); +***** error yt = stk_feval (f, xt, false, false, false, pi^2); +***** 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'})); +14 tests, 14 passed, 0 known failure, 0 skipped +[inst/arrays/generic/stk_length.m] +>>>>> /build/octave-stk-2.5.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_boundingbox.m] +>>>>> /build/octave-stk-2.5.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); +***** error y = stk_boundingbox (x, 1); +***** assert (isequal (y.data, [0 0 1; 7 4 2])); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/generic/stk_normalize.m] +>>>>> /build/octave-stk-2.5.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); +***** error y4 = stk_normalize (x, box, log (2)); +***** test assert (~ any ((y2 < -10 * eps) | (y2 > 1 + 10 * eps))); +***** test assert (~ any ((y3 < -10 * eps) | (y3 > 1 + 10 * eps))); +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/arrays/generic/stk_rescale.m] +>>>>> /build/octave-stk-2.5.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_dataframe/plus.m] +>>>>> /build/octave-stk-2.5.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/fieldnames.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/fieldnames.m +***** test + x = stk_dataframe (rand (3, 2), {'u' 'v'}); + s1 = sort (fieldnames (x)); + s2 = {'colnames' 'data' 'info' 'rownames' 'u' 'v'}; + assert (all (strcmp (s1, s2))); +***** 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'})); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/isnan.m] +>>>>> /build/octave-stk-2.5.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/times.m] +>>>>> /build/octave-stk-2.5.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/acos.m] +>>>>> /build/octave-stk-2.5.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/sind.m] +>>>>> /build/octave-stk-2.5.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/minus.m] +>>>>> /build/octave-stk-2.5.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/abs.m] +>>>>> /build/octave-stk-2.5.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/mode.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/mode.m ***** shared x1, df1 - x1 = rand(9, 3); + x1 = floor(3 * 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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/rdivide.m -***** test stk_test_dfbinaryop(@rdivide, rand(7, 2), 1 + rand(7, 2)); -***** test stk_test_dfbinaryop(@rdivide, rand(7, 2), pi); -***** error stk_test_dfbinaryop(@rdivide, rand(7, 2), 1 + rand(7, 3)); +***** assert (isequal (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/sum.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/sum.m +[inst/arrays/@stk_dataframe/log2.m] +>>>>> /build/octave-stk-2.5.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/end.m] +>>>>> /build/octave-stk-2.5.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/size.m] +>>>>> /build/octave-stk-2.5.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/mldivide.m] +>>>>> /build/octave-stk-2.5.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/acosd.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/acosd.m +***** test + u = rand (4, 3); x = stk_dataframe (u); v = acosd (x); + assert (strcmp (class (v), class (u)) && isequal (v, acosd (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/stk_sprintf.m] +>>>>> /build/octave-stk-2.5.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.761863 0.768985 + * : 0.065352 0.909016 + * : 0.125847 0.010448 +***** test format long; disp (x); + : ---------------- ---------------- + * : 0.76186256170499 0.76898479366460 + * : 0.06535225974983 0.90901617822183 + * : 0.12584697286315 0.01044753514423 +***** test format short; disp (x); format (fmt); + : -------- -------- + * : 0.761863 0.768985 + * : 0.065352 0.909016 + * : 0.125847 0.010448 +***** 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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/realpow.m +***** test stk_test_dfbinaryop(@realpow, rand(7, 2), .1 + rand(7, 2)); +***** test stk_test_dfbinaryop(@realpow, rand(7, 2), .1); +***** error stk_test_dfbinaryop(@realpow, rand(7, 2), .1 + rand(7, 3)); +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/asinh.m] +>>>>> /build/octave-stk-2.5.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/stk_dataframe.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/stk_dataframe.m +***** test stk_test_class ('stk_dataframe') +***** error x = stk_dataframe (1, {}, {}, pi); +***** 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'})); +***** test + x = stk_dataframe (randn (10, 1), 'NOx'); + assert (isequal (x.colnames, {'NOx'})); +***** test + x = stk_dataframe (randn (1, 2), {}, 'aaa'); + assert (isequal (x.rownames, {'aaa'})); +23 tests, 23 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/mtimes.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/mtimes.m +***** shared x, y, z, w + + u = [1 3 4; 2 7 6]; % 2 x 3 + v = [6 2; 1 7; 9 4]; % 3 x 2 + w = [45 39; 73 77]; % u * v + + x = stk_dataframe (u, {}, {'a'; 'b'}); + y = stk_dataframe (v, {'c' 'd'}); + z = x * y; +***** assert (isa (z, 'stk_dataframe')); +***** assert (isequal (z.data, w)); +***** assert (isequal (z.rownames, x.rownames)); +***** assert (isequal (z.colnames, y.colnames)); +***** shared x, y + x = stk_dataframe (rand (3, 2), {'x' 'y'}, {'a'; 'b'; 'c'}); +***** test y = 3 * x; +***** assert (isequal (y, stk_dataframe (3 * x.data, {'x' 'y'}, {'a'; 'b'; 'c'}))); +***** test y = x * 3; +***** assert (isequal (y, stk_dataframe (3 * x.data, {'x' 'y'}, {'a'; 'b'; 'c'}))); +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/mean.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/mean.m ***** shared x1, df1 x1 = rand(9, 3); df1 = stk_dataframe(x1, {'a', 'b', 'c'}); -***** assert (isequal (sum(df1), sum(x1))) -***** assert (isequal (sum(df1, 1), sum(x1))) -***** assert (isequal (sum(df1, 2), sum(x1, 2))) +***** assert (isequal (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/acosh.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/acosh.m +[inst/arrays/@stk_dataframe/cosh.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/cosh.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = acosh (x); - assert (strcmp (class (v), class (u)) && isequal (v, acosh (u))) + 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/apply.m] ->>>>> /build/octave-stk-2.5.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, []); +[inst/arrays/@stk_dataframe/cos.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/cos.m ***** 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 + 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/cosd.m] +>>>>> /build/octave-stk-2.5.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/disp.m] +>>>>> /build/octave-stk-2.5.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.803940 0.955212 + * : 0.739201 0.108423 + * : 0.210559 0.266892 +***** test format long; disp (x); + : ---------------- ---------------- + * : 0.80394008640822 0.95521202950393 + * : 0.73920051805513 0.10842286255519 + * : 0.21055914340222 0.26689196343405 +***** test format short; disp (x); format (fmt); + : -------- -------- + * : 0.803940 0.955212 + * : 0.739201 0.108423 + * : 0.210559 0.266892 +***** 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/horzcat.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/horzcat.m ***** shared u, v @@ -2181,115 +2845,62 @@ 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/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/isfinite.m +[inst/arrays/@stk_dataframe/asind.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/asind.m ***** test - u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isfinite (x); - assert (islogical (v) && isequal (v, isfinite (u))) + 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/cat.m] ->>>>> /build/octave-stk-2.5.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/max.m] ->>>>> /build/octave-stk-2.5.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)) +[inst/arrays/@stk_dataframe/apply.m] +>>>>> /build/octave-stk-2.5.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 - x = stk_dataframe ([1; 3; 2]); - [M, k] = max (x); + t = [1; 3; 2]; + x = stk_dataframe (t); + [M, k] = apply (x, 1, @max, []); assert ((M == 3) && (k == 2)); -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/isnan.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/fieldnames.m -***** test - x = stk_dataframe (rand (3, 2), {'u' 'v'}); - s1 = sort (fieldnames (x)); - s2 = {'colnames' 'data' 'info' 'rownames' 'u' 'v'}; - assert (all (strcmp (s1, s2))); -***** 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'})); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/isinf.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/isinf.m +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/sqrt.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/sqrt.m ***** test - u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isinf (x); - assert (islogical (v) && isequal (v, isinf (u))) + 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/acosd.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/acosd.m +[inst/arrays/@stk_dataframe/stk_length.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/stk_length.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = acosd (x); - assert (strcmp (class (v), class (u)) && isequal (v, acosd (u))) + x = stk_dataframe ([1 2; 3 4; 5 6]); + assert (isequal (stk_length (x), 3)); 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/logical.m] ->>>>> /build/octave-stk-2.5.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))) +[inst/arrays/@stk_dataframe/std.m] +>>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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/ldivide.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/ldivide.m @@ -2297,21 +2908,16 @@ ***** 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/octave-stk-2.5.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/octave-stk-2.5.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); +***** error y = stk_boundingbox (x, 1); +***** assert (isequal (y, stk_hrect ([0 0 1; 7 4 2], cn))); +4 tests, 4 passed, 0 known failure, 0 skipped [inst/arrays/@stk_dataframe/vertcat.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/vertcat.m ***** shared u, v @@ -2368,18 +2974,223 @@ 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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/tand.m +[inst/arrays/@stk_dataframe/length.m] +>>>>> /build/octave-stk-2.5.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/transpose.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/transpose.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = tand (x); - assert (strcmp (class (v), class (u)) && isequal (v, tand (u))) + u = rand(3, 2) + 1i * rand(3, 2); + data = stk_dataframe(u, {'x' 'y'}, {'obs1'; 'obs2'; 'obs3'}); + data = data.'; + assert (isa(data, 'stk_dataframe') && isequal(double(data), u.')); + assert (isequal(data.rownames, {'x'; 'y'})); + assert (isequal(data.colnames, {'obs1' 'obs2' 'obs3'})); 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/sin.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/sin.m +[inst/arrays/@stk_dataframe/isfinite.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/isfinite.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = sin (x); - assert (strcmp (class (v), class (u)) && isequal (v, sin (u))) + u = [pi, NaN, Inf, -Inf]; x = stk_dataframe (u); v = isfinite (x); + assert (islogical (v) && isequal (v, isfinite (u))) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_dataframe/mrdivide.m] +>>>>> /build/octave-stk-2.5.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/ismember.m] +>>>>> /build/octave-stk-2.5.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/atand.m] +>>>>> /build/octave-stk-2.5.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/double.m] +>>>>> /build/octave-stk-2.5.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/power.m] +>>>>> /build/octave-stk-2.5.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/atan.m] +>>>>> /build/octave-stk-2.5.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/quantile.m] +>>>>> /build/octave-stk-2.5.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/max.m] +>>>>> /build/octave-stk-2.5.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/logical.m] +>>>>> /build/octave-stk-2.5.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/var.m] +>>>>> /build/octave-stk-2.5.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/log.m] +>>>>> /build/octave-stk-2.5.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/plot.m] +>>>>> /build/octave-stk-2.5.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/stk_normalize.m] +>>>>> /build/octave-stk-2.5.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/min.m] +>>>>> /build/octave-stk-2.5.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/cat.m] +>>>>> /build/octave-stk-2.5.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/subsasgn.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/subsasgn.m ***** shared x, s, t, data @@ -2520,186 +3331,71 @@ ***** 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/octave-stk-2.5.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/transpose.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/transpose.m +[inst/arrays/@stk_dataframe/prod.m] +>>>>> /build/octave-stk-2.5.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/ctranspose.m] +>>>>> /build/octave-stk-2.5.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.')); + 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/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/asin.m +[inst/arrays/@stk_dataframe/stk_rescale.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/stk_rescale.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = asin (x); - assert (strcmp (class (v), class (u)) && isequal (v, asin (u))) + u = rand(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/asinh.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/asinh.m +[inst/arrays/@stk_dataframe/log10.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/log10.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = asinh (x); - assert (strcmp (class (v), class (u)) && isequal (v, asinh (u))) + u = rand (4, 3); x = stk_dataframe (u); v = log10 (x); + assert (strcmp (class (v), class (u)) && isequal (v, log10 (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/plus.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/tanh.m +[inst/arrays/@stk_dataframe/expm1.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/expm1.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = tanh (x); - assert (strcmp (class (v), class (u)) && isequal (v, tanh (u))) + 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/tan.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/tan.m +[inst/arrays/@stk_dataframe/exp.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/exp.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = tan (x); - assert (strcmp (class (v), class (u)) && isequal (v, tan (u))) + 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/times.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/var.m +[inst/arrays/@stk_dataframe/median.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/median.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/octave-stk-2.5.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/stk_boundingbox.m] ->>>>> /build/octave-stk-2.5.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); -***** error y = stk_boundingbox (x, 1); -***** assert (isequal (y, stk_hrect ([0 0 1; 7 4 2], cn))); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/cosh.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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)); +***** 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_rescale.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/mtimes.m -***** shared x, y, z, w - - u = [1 3 4; 2 7 6]; % 2 x 3 - v = [6 2; 1 7; 9 4]; % 3 x 2 - w = [45 39; 73 77]; % u * v - - x = stk_dataframe (u, {}, {'a'; 'b'}); - y = stk_dataframe (v, {'c' 'd'}); - z = x * y; -***** assert (isa (z, 'stk_dataframe')); -***** assert (isequal (z.data, w)); -***** assert (isequal (z.rownames, x.rownames)); -***** assert (isequal (z.colnames, y.colnames)); -***** shared x, y - x = stk_dataframe (rand (3, 2), {'x' 'y'}, {'a'; 'b'; 'c'}); -***** test y = 3 * x; -***** assert (isequal (y, stk_dataframe (3 * x.data, {'x' 'y'}, {'a'; 'b'; 'c'}))); -***** test y = x * 3; -***** assert (isequal (y, stk_dataframe (3 * x.data, {'x' 'y'}, {'a'; 'b'; 'c'}))); -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/cos.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/cos.m +[inst/arrays/@stk_dataframe/tand.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/tand.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = cos (x); - assert (strcmp (class (v), class (u)) && isequal (v, cos (u))) + u = rand (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/ismember.m] ->>>>> /build/octave-stk-2.5.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/minus.m] ->>>>> /build/octave-stk-2.5.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/cosd.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/cosd.m +[inst/arrays/@stk_dataframe/isinf.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/isinf.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = cosd (x); - assert (strcmp (class (v), class (u)) && isequal (v, cosd (u))) + 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/bsxfun.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/bsxfun.m @@ -2725,147 +3421,23 @@ 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/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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/sinh.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/sinh.m +[inst/arrays/@stk_dataframe/asin.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/asin.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = sinh (x); - assert (strcmp (class (v), class (u)) && isequal (v, sinh (u))) + u = rand (4, 3); x = stk_dataframe (u); v = asin (x); + assert (strcmp (class (v), class (u)) && isequal (v, asin (u))) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/stk_dataframe.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/stk_dataframe.m -***** test stk_test_class ('stk_dataframe') -***** error x = stk_dataframe (1, {}, {}, pi); -***** 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'})); -***** test - x = stk_dataframe (randn (10, 1), 'NOx'); - assert (isequal (x.colnames, {'NOx'})); -***** test - x = stk_dataframe (randn (1, 2), {}, 'aaa'); - assert (isequal (x.rownames, {'aaa'})); -23 tests, 23 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/ctranspose.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/ctranspose.m +[inst/arrays/@stk_dataframe/tanh.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/tanh.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'})); + 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/atanh.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/atanh.m +[inst/arrays/@stk_dataframe/acosh.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/acosh.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = atanh (x); - assert (strcmp (class (v), class (u)) && isequal (v, atanh (u))) + 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/display.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/display.m @@ -2874,94 +3446,11 @@ = <3x2 stk_dataframe array> : -------- -------- - * : 0.568678 0.364823 - * : 0.402526 0.843000 - * : 0.379801 0.217610 + * : 0.123663 0.909448 + * : 0.620987 0.083921 + * : 0.154871 0.180498 1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_dataframe/sind.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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/size.m] ->>>>> /build/octave-stk-2.5.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/reshape.m] ->>>>> /build/octave-stk-2.5.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/acos.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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.997193 0.834656 - * : 0.295721 0.492113 - * : 0.321075 0.416372 -***** test format long; disp (x); - : ---------------- ---------------- - * : 0.99719254532762 0.83465591438247 - * : 0.29572101454609 0.49211254367848 - * : 0.32107541905410 0.41637194375460 -***** test format short; disp (x); format (fmt); - : -------- -------- - * : 0.997193 0.834656 - * : 0.295721 0.492113 - * : 0.321075 0.416372 -***** 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/abs.m] ->>>>> /build/octave-stk-2.5.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/subsref.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/subsref.m ***** shared x, s, t, data @@ -3009,24 +3498,30 @@ 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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/mrdivide.m +[inst/arrays/@stk_dataframe/tan.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/tan.m ***** test - x1_data = [8 7; 58 49]; - x1 = stk_dataframe (x1_data, {'x' 'y'}, {'a'; 'b'}); - x2_data = [8 7; 2 0]; - x2 = stk_dataframe (x2_data, {'x' 'y'}, {'u'; 'v'}); - y = x1 / x2; - assert (stk_isequal_tolabs (y, ... - stk_dataframe ([1 0; 7 1], {'u'; 'v'}, {'a'; 'b'}))); -***** shared x_data, x, y_data, y - x_data = [3 3; 6 3; 9 12]; - y_data = [1 1; 2 1; 3 4]; - x = stk_dataframe (x_data, {'x' 'y'}, {'a'; 'b'; 'c'}); -***** test y = x / 3; -***** assert (isequal (y, stk_dataframe ([1 1; 2 1; 3 4], {'x' 'y'}, {'a'; 'b'; 'c'}))); -***** error y = 3 / x; -4 tests, 4 passed, 0 known failure, 0 skipped + u = rand (4, 3); x = stk_dataframe (u); v = 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/log1p.m] +>>>>> /build/octave-stk-2.5.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/atanh.m] +>>>>> /build/octave-stk-2.5.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/sin.m] +>>>>> /build/octave-stk-2.5.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/sort.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/sort.m ***** shared x, y @@ -3048,218 +3543,45 @@ ***** 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/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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.844112 0.322020 - * : 0.551299 0.686175 - * : 0.743275 0.904299 -***** test format long; disp (x); - : ---------------- ---------------- - * : 0.84411239099653 0.32202014874228 - * : 0.55129913256985 0.68617517096905 - * : 0.74327454352597 0.90429944880726 -***** test format short; disp (x); format (fmt); - : -------- -------- - * : 0.844112 0.322020 - * : 0.551299 0.686175 - * : 0.743275 0.904299 -***** 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/octave-stk-2.5.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/octave-stk-2.5.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/log2.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/log2.m +[inst/arrays/@stk_dataframe/sinh.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/sinh.m ***** test - u = rand (4, 3); x = stk_dataframe (u); v = log2 (x); - assert (strcmp (class (v), class (u)) && isequal (v, log2 (u))) + 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/double.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_dataframe/stk_normalize.m +[inst/arrays/@stk_dataframe/reshape.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/reshape.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))) + 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/mean.m] ->>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/mean.m +[inst/arrays/@stk_dataframe/sum.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_dataframe/sum.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))) +***** 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/atan.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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', 'stk_dataframe', 'u', 'v'}; - assert (isequal (fn1, fn2)); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_factorialdesign/ndgrid.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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); -***** error y = stk_boundingbox (x, 1); -***** assert (isequal (y, stk_hrect ([1 3 0; 2 5 8], cn))); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_factorialdesign/stk_rescale.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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/uminus.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_factorialdesign/stk_dataframe.m +[inst/arrays/@stk_hrect/stk_hrect.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_hrect/stk_hrect.m +***** test stk_test_class ('stk_hrect') +***** shared dom +***** test dom = stk_hrect ([-1; 1], {'x'}); +***** assert (isequal (dom.colnames, {'x'})) +***** assert (isequal (dom.rownames, {'lower_bounds'; 'upper_bounds'})) +***** assert (isequal (dom.data, [-1; 1])) +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/stk_dataframe.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_hrect/stk_dataframe.m ***** shared x, cn, rn, y, cn2, rn2 cn = {'x' 'y'}; - rn = {'a'; 'b'; 'c'; 'd'}; - x = stk_factorialdesign ({1:2, 1:2}, cn, rn); + rn = {'lower_bounds'; 'upper_bounds'}; + x = stk_hrect ([0 0; 1 1], cn); cn2 = {'xx' 'yy'}; - rn2 = {'aa'; 'bb'; 'cc'; 'dd'}; + rn2 = {'aa'; 'bb'}; ***** test y = stk_dataframe (x); ***** assert (strcmp (class (y), 'stk_dataframe')) ***** assert (isequal (y.colnames, cn)) @@ -3281,160 +3603,6 @@ ***** 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/octave-stk-2.5.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> - - : --- --- - * : 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 - -***** 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/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_hrect/horzcat.m ***** shared d, x1, x2, x3 @@ -3463,6 +3631,18 @@ assert (strcmp (warn_id, 'STK:stk_hrect:horzcat:IllegalBounds')) warning: Illegal bounds, the result is not an stk_hrect object. 4 tests, 4 passed, 0 known failure, 0 skipped +[inst/arrays/@stk_hrect/stk_boundingbox.m] +>>>>> /build/octave-stk-2.5.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); +***** error y = stk_boundingbox (x, 1); +***** assert (isequal (y, x)); +4 tests, 4 passed, 0 known failure, 0 skipped [inst/arrays/@stk_hrect/vertcat.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_hrect/vertcat.m ***** shared d, x, y @@ -3482,37 +3662,6 @@ 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/octave-stk-2.5.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); -***** error y = stk_boundingbox (x, 1); -***** assert (isequal (y, x)); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/arrays/@stk_hrect/stk_rescale.m] ->>>>> /build/octave-stk-2.5.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/ismember.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_hrect/ismember.m ***** shared n, box @@ -3527,57 +3676,6 @@ 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/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/@stk_hrect/stk_hrect.m -***** test stk_test_class ('stk_hrect') -***** shared dom -***** test dom = stk_hrect ([-1; 1], {'x'}); -***** assert (isequal (dom.colnames, {'x'})) -***** assert (isequal (dom.rownames, {'lower_bounds'; 'upper_bounds'})) -***** assert (isequal (dom.data, [-1; 1])) -5 tests, 5 passed, 0 known failure, 0 skipped [inst/arrays/@stk_hrect/stk_normalize.m] >>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_hrect/stk_normalize.m ***** shared x, box, y1, y2, y3, y4 @@ -3590,22 +3688,8 @@ ***** test assert (~ any ((y2 < -10 * eps) | (y2 > 1 + 10 * eps))); ***** test assert (~ any ((y3 < -10 * eps) | (y3 > 1 + 10 * eps))); 6 tests, 6 passed, 0 known failure, 0 skipped -[inst/arrays/generic/stk_boundingbox.m] ->>>>> /build/octave-stk-2.5.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); -***** error y = stk_boundingbox (x, 1); -***** assert (isequal (y.data, [0 0 1; 7 4 2])); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/arrays/generic/stk_length.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/arrays/generic/stk_rescale.m +[inst/arrays/@stk_hrect/stk_rescale.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_hrect/stk_rescale.m ***** shared x x = rand (10, 4); y = stk_rescale (x, [], []); @@ -3623,69 +3707,328 @@ 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_feval.m] ->>>>> /build/octave-stk-2.5.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); -***** error yt = stk_feval (f, xt, false, false, false, pi^2); +[inst/arrays/@stk_hrect/subsref.m] +>>>>> /build/octave-stk-2.5.1/inst/arrays/@stk_hrect/subsref.m ***** test - N = 15; - xt = stk_sampling_regulargrid (N, 1, [0; 1]); - yt = stk_feval (f, xt); - assert (isequal (size (yt), [N 1])); + 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 - 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)]; + 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/lm/@stk_lm_null/feval.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_null/feval.m ***** test - t.colnames = {'time'}; - z = stk_feval ({@sin, @cos}, t); - assert (isa (z, 'stk_dataframe')); - assert (isequal (z.data, z_ref)); + 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_null/stk_lm_null.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_null/stk_lm_null.m +***** test stk_test_class ('stk_lm_null') +***** error lm = stk_lm_null (3.33); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_affine/feval.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_affine/feval.m ***** test - F = @(x)([sin(x) cos(x)]); - z = stk_feval (F, t); - assert (isequal (z.data, z_ref)); + n = 15; d = 4; + x = stk_sampling_randunif (n, d); + P = feval (stk_lm_affine (), x); + assert (isequal (size (P), [n, d + 1])); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_affine/stk_lm_affine.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_affine/stk_lm_affine.m +***** test stk_test_class ('stk_lm_affine') +***** error lm = stk_lm_affine (3.33); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_matrix/stk_lm_matrix.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_matrix/stk_lm_matrix.m +***** test stk_test_class ('stk_lm_matrix') +***** error lm = stk_lm_matrix ([], 3.33); +***** 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))); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_constant/feval.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_constant/feval.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'})); -14 tests, 14 passed, 0 known failure, 0 skipped -[inst/arrays/generic/stk_normalize.m] ->>>>> /build/octave-stk-2.5.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); -***** error y4 = stk_normalize (x, box, log (2)); -***** test assert (~ any ((y2 < -10 * eps) | (y2 > 1 + 10 * eps))); -***** test assert (~ any ((y3 < -10 * eps) | (y3 > 1 + 10 * eps))); + 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/octave-stk-2.5.1/inst/lm/@stk_lm_constant/stk_lm_constant.m +***** test stk_test_class ('stk_lm_constant') +***** error lm = stk_lm_constant (3.33); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_cubic/feval.m] +>>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/lm/@stk_lm_cubic/stk_lm_cubic.m +***** test stk_test_class ('stk_lm_cubic') +***** error lm = stk_lm_cubic (3.33); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/lm/stk_lm_polynomial.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/stk_lm_polynomial.m +***** error lm = stk_lm_polynomial (); +***** error lm = stk_lm_polynomial (0, 3.33); +***** 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')); +7 tests, 7 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_quadratic/feval.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_quadratic/feval.m +***** test + n = 15; d = 4; + x = stk_sampling_randunif (n, d); + P = feval (stk_lm_quadratic (), x); + assert (isequal (size (P), [n, 1 + d * (d + 3) / 2])); +1 test, 1 passed, 0 known failure, 0 skipped +[inst/lm/@stk_lm_quadratic/stk_lm_quadratic.m] +>>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_quadratic/stk_lm_quadratic.m +***** test stk_test_class ('stk_lm_quadratic') +***** error lm = stk_lm_quadratic (3.33); +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_sphcov_iso.m] +>>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_sphcov_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 stk_sphcov_iso (); +***** error stk_sphcov_iso (param); +***** error stk_sphcov_iso (param, x); +***** test stk_sphcov_iso (param, x, y); +***** test stk_sphcov_iso (param, x, y, -1); +***** test stk_sphcov_iso (param, x, y, -1, false); +***** error stk_sphcov_iso (param, x, y, -1, false, pi^2); +***** error stk_sphcov_iso (param, x, y, -2); +***** test stk_sphcov_iso (param, x, y, -1); +***** error stk_sphcov_iso (param, x, y, 0); +***** test stk_sphcov_iso (param, x, y, 1); +***** test stk_sphcov_iso (param, x, y, 2); +***** error stk_sphcov_iso (param, x, y, 3); +***** error stk_sphcov_iso (param, x, y, nan); +***** error stk_sphcov_iso (param, x, y, inf); +***** shared dim, param, x, y, nx, ny + dim = 3; + param = log ([1.0; 2.5]); + nx = 4; ny = 10; + x = stk_sampling_randunif (nx, dim); + y = stk_sampling_randunif (ny, dim); +***** test + K1 = stk_sphcov_iso (param, x, y); + K2 = stk_sphcov_iso (param, x, y, -1); + assert (isequal (size (K1), [nx ny])); + assert (stk_isequal_tolabs (K1, K2)); +***** test + for i = 1:2, + dK = stk_sphcov_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_sphcov_iso (param, x, y); + K2 = stk_sphcov_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_sphcov_iso (param, x, y, i); + dK2 = stk_sphcov_iso (param, x, y, i, true); + assert (isequal (size (dK1), [n n])); + assert (stk_isequal_tolabs (dK2, diag (dK1))); + end +18 tests, 18 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_materncov_iso.m] +>>>>> /build/octave-stk-2.5.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 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, -1, false, pi^2); +***** 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_noisecov.m] +>>>>> /build/octave-stk-2.5.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); +***** error K = stk_noisecov(ni, lognoisevariance, diff, true, pi^2); 6 tests, 6 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_materncov52_aniso.m] +>>>>> /build/octave-stk-2.5.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, -1, false, pi^2); +***** 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 +18 tests, 18 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_discretecov.m] +>>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_discretecov.m +***** shared model, model2, x0 + n0 = 20; n1 = 10; dim = 4; + x0 = stk_sampling_randunif (n0, dim); + x1 = stk_sampling_randunif (n1, dim); + model = stk_model ('stk_materncov52_aniso', dim); + model.lm = stk_lm_affine (); + model.param = log ([1.0; 2.1; 2.2; 2.3; 2.4]); +***** test % without noise, pairwise = false + model.lognoisevariance = - inf; + model2 = stk_model ('stk_discretecov', model, x0); + idx = [1 4 9]; + [K1, P1] = stk_make_matcov (model, x0(idx, :)); + [K2, P2] = stk_make_matcov (model2, idx'); + assert (stk_isequal_tolrel (K1, K2)); + assert (stk_isequal_tolrel (P1, P2)); +***** test % without noise, pairwise = true + K1 = stk_make_matcov (model, x0([2 5 6], :), [], true); + K2 = stk_make_matcov (model2, [2 5 6]', [], true); + assert (stk_isequal_tolrel (K1, K2)); +***** test % with noise, pairwise = false + model.lognoisevariance = log (0.01); + model2 = stk_model ('stk_discretecov', model, x0); + idx = [1 4 9]; + [K1, P1] = stk_make_matcov (model, x0(idx, :)); + [K2, P2] = stk_make_matcov (model2, idx'); + assert (stk_isequal_tolrel (K1, K2)); + assert (stk_isequal_tolrel (P1, P2)); +3 tests, 3 passed, 0 known failure, 0 skipped [inst/covfcs/stk_gausscov_iso.m] >>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_gausscov_iso.m ***** shared param, x, y @@ -3741,44 +4084,39 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 18 tests, 18 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_noisecov.m] ->>>>> /build/octave-stk-2.5.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); -***** error K = stk_noisecov(ni, lognoisevariance, diff, true, pi^2); -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_matern52.m] ->>>>> /build/octave-stk-2.5.1/inst/covfcs/rbf/stk_rbf_matern52.m +[inst/covfcs/rbf/stk_rbf_spherical.m] +>>>>> /build/octave-stk-2.5.1/inst/covfcs/rbf/stk_rbf_spherical.m ***** shared h, diff - h = 1.0; diff = -1; -***** error stk_rbf_matern52 (); -***** test stk_rbf_matern52 (h); -***** test stk_rbf_matern52 (h, diff); -***** error stk_rbf_matern52 (h, diff, pi); + h = 1.0; diff = -1; +***** error stk_rbf_spherical (); +***** test stk_rbf_spherical (h); +***** test stk_rbf_spherical (h, diff); +***** error stk_rbf_spherical (h, diff, pi); ***** test %% h = 0.0 => correlation = 1.0 - x = stk_rbf_matern52 (0.0); + x = stk_rbf_spherical (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)); +***** 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) +7 tests, 7 passed, 0 known failure, 0 skipped +[inst/covfcs/rbf/stk_rbf_matern.m] +>>>>> /build/octave-stk-2.5.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); +***** error stk_rbf_matern (nu, h, diff, pi); +***** 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 -***** assert (stk_rbf_matern52 (inf) == 0) -8 tests, 8 passed, 0 known failure, 0 skipped +6 tests, 6 passed, 0 known failure, 0 skipped [inst/covfcs/rbf/stk_rbf_matern32.m] >>>>> /build/octave-stk-2.5.1/inst/covfcs/rbf/stk_rbf_matern32.m ***** shared h, diff @@ -3804,21 +4142,6 @@ end ***** assert (stk_rbf_matern32 (inf) == 0) 8 tests, 8 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_matern.m] ->>>>> /build/octave-stk-2.5.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); -***** error stk_rbf_matern (nu, h, diff, pi); -***** 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 -6 tests, 6 passed, 0 known failure, 0 skipped [inst/covfcs/rbf/stk_rbf_exponential.m] >>>>> /build/octave-stk-2.5.1/inst/covfcs/rbf/stk_rbf_exponential.m ***** shared h, diff @@ -3861,52 +4184,170 @@ x = stk_rbf_gauss (0.0); assert (stk_isequal_tolrel (x, 1.0, 1e-8)); 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/covfcs/rbf/stk_rbf_spherical.m] ->>>>> /build/octave-stk-2.5.1/inst/covfcs/rbf/stk_rbf_spherical.m +[inst/covfcs/rbf/stk_rbf_matern52.m] +>>>>> /build/octave-stk-2.5.1/inst/covfcs/rbf/stk_rbf_matern52.m ***** shared h, diff - h = 1.0; diff = -1; -***** error stk_rbf_spherical (); -***** test stk_rbf_spherical (h); -***** test stk_rbf_spherical (h, diff); -***** error stk_rbf_spherical (h, diff, pi); + h = 1.0; diff = -1; +***** error stk_rbf_matern52 (); +***** test stk_rbf_matern52 (h); +***** test stk_rbf_matern52 (h, diff); +***** error stk_rbf_matern52 (h, diff, pi); ***** test %% h = 0.0 => correlation = 1.0 - x = stk_rbf_spherical (0.0); + x = stk_rbf_matern52 (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) -7 tests, 7 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_expcov_aniso.m] ->>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_expcov_aniso.m +***** 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) +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_expcov_iso.m] +>>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_expcov_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 stk_expcov_iso (); +***** error stk_expcov_iso (param); +***** error stk_expcov_iso (param, x); +***** test stk_expcov_iso (param, x, y); +***** test stk_expcov_iso (param, x, y, -1); +***** test stk_expcov_iso (param, x, y, -1, false); +***** error stk_expcov_iso (param, x, y, -1, false, pi^2); +***** error stk_expcov_iso (param, x, y, -2); +***** test stk_expcov_iso (param, x, y, -1); +***** error stk_expcov_iso (param, x, y, 0); +***** test stk_expcov_iso (param, x, y, 1); +***** test stk_expcov_iso (param, x, y, 2); +***** error stk_expcov_iso (param, x, y, 3); +***** error stk_expcov_iso (param, x, y, nan); +***** error stk_expcov_iso (param, x, y, inf); +***** shared dim, param, x, y, nx, ny + dim = 3; + param = log ([1.0; 2.5]); + nx = 4; ny = 10; + x = stk_sampling_randunif (nx, dim); + y = stk_sampling_randunif (ny, dim); +***** test + K1 = stk_expcov_iso (param, x, y); + K2 = stk_expcov_iso (param, x, y, -1); + assert (isequal (size (K1), [nx ny])); + assert (stk_isequal_tolabs (K1, K2)); +***** test + for i = 1:2, + dK = stk_expcov_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_expcov_iso (param, x, y); + K2 = stk_expcov_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_expcov_iso (param, x, y, i); + dK2 = stk_expcov_iso (param, x, y, i, true); + assert (isequal (size (dK1), [n n])); + assert (stk_isequal_tolabs (dK2, diag (dK1))); + end +18 tests, 18 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_materncov32_iso.m] +>>>>> /build/octave-stk-2.5.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 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, -1, false, pi^2); +***** error stk_materncov32_iso (param, x, y, -2); +***** test stk_materncov32_iso (param, x, y, -1); +***** error stk_materncov32_iso (param, x, y, 0); +***** test stk_materncov32_iso (param, x, y, 1); +***** test stk_materncov32_iso (param, x, y, 2); +***** error stk_materncov32_iso (param, x, y, 3); +***** error stk_materncov32_iso (param, x, y, nan); +***** error stk_materncov32_iso (param, x, y, inf); +***** shared dim, param, x, y, nx, ny + dim = 3; + param = log ([1.0; 2.5]); + nx = 4; ny = 10; + x = stk_sampling_randunif (nx, dim); + y = stk_sampling_randunif (ny, dim); +***** test + K1 = stk_materncov32_iso (param, x, y); + K2 = stk_materncov32_iso (param, x, y, -1); + assert (isequal (size (K1), [nx ny])); + assert (stk_isequal_tolabs (K1, K2)); +***** test + for i = 1:2, + dK = stk_materncov32_iso (param, x, y, i); + assert (isequal (size (dK), [nx ny])); + end +***** test + n = 7; + x = stk_sampling_randunif (n, dim); + y = stk_sampling_randunif (n, dim); + + K1 = stk_materncov32_iso (param, x, y); + K2 = stk_materncov32_iso (param, x, y, -1, true); + assert (isequal (size (K1), [n n])); + assert (stk_isequal_tolabs (K2, diag (K1))); + + for i = 1:2, + dK1 = stk_materncov32_iso (param, x, y, i); + dK2 = stk_materncov32_iso (param, x, y, i, true); + assert (isequal (size (dK1), [n n])); + assert (stk_isequal_tolabs (dK2, diag (dK1))); + end +18 tests, 18 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_sphcov_aniso.m] +>>>>> /build/octave-stk-2.5.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_expcov_aniso (param, x, y, -1, false, pi^2); +***** 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_sphcov_aniso (param, x, y, -1, false, pi^2); ***** 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]); @@ -3914,13 +4355,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 @@ -3928,14 +4369,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 @@ -3996,61 +4437,6 @@ assert(stk_isequal_tolabs(dK2, diag(dK1))); end 19 tests, 19 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_materncov52_iso.m] ->>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_materncov52_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 stk_materncov52_iso (); -***** error stk_materncov52_iso (param); -***** error stk_materncov52_iso (param, x); -***** test stk_materncov52_iso (param, x, y); -***** test stk_materncov52_iso (param, x, y, -1); -***** test stk_materncov52_iso (param, x, y, -1, false); -***** error stk_materncov52_iso (param, x, y, -1, false, pi^2); -***** error stk_materncov52_iso (param, x, y, -2); -***** test stk_materncov52_iso (param, x, y, -1); -***** error stk_materncov52_iso (param, x, y, 0); -***** test stk_materncov52_iso (param, x, y, 1); -***** test stk_materncov52_iso (param, x, y, 2); -***** error stk_materncov52_iso (param, x, y, 3); -***** error stk_materncov52_iso (param, x, y, nan); -***** error stk_materncov52_iso (param, x, y, inf); -***** shared dim, param, x, y, nx, ny - dim = 3; - param = log ([1.0; 2.5]); - nx = 4; ny = 10; - x = stk_sampling_randunif (nx, dim); - y = stk_sampling_randunif (ny, dim); -***** test - K1 = stk_materncov52_iso (param, x, y); - K2 = stk_materncov52_iso (param, x, y, -1); - assert (isequal (size (K1), [nx ny])); - assert (stk_isequal_tolabs (K1, K2)); -***** test - for i = 1:2, - dK = stk_materncov52_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_materncov52_iso (param, x, y); - K2 = stk_materncov52_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_materncov52_iso (param, x, y, i); - dK2 = stk_materncov52_iso (param, x, y, i, true); - assert (isequal (size (dK1), [n n])); - assert (stk_isequal_tolabs (dK2, diag (dK1))); - end -18 tests, 18 passed, 0 known failure, 0 skipped [inst/covfcs/stk_gausscov_aniso.m] >>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_gausscov_aniso.m ***** shared param, x, y, K1, K2, K3 @@ -4112,98 +4498,6 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 21 tests, 21 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_sphcov_aniso.m] ->>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_sphcov_aniso.m -***** shared param, x, y, K1, K2, K3 - dim = 1; - param = log ([1.0; 2.5]); - x = stk_sampling_randunif (5, dim); - y = stk_sampling_randunif (6, dim); -***** error K0 = stk_sphcov_aniso (); -***** error K0 = stk_sphcov_aniso (param); -***** error K0 = stk_sphcov_aniso (param, x); -***** test K1 = stk_sphcov_aniso (param, x, y); -***** test K2 = stk_sphcov_aniso (param, x, y, -1); -***** test K3 = stk_sphcov_aniso (param, x, y, -1, false); -***** error K0 = stk_sphcov_aniso (param, x, y, -1, false, pi^2); -***** assert (isequal (K1, K2)); -***** assert (isequal (K1, K3)); -***** test % df versus ordinary array - u = double (x); v = double (y); - K1 = stk_sphcov_aniso (param, u, v, -1); - K2 = stk_sphcov_aniso (param, stk_dataframe (u), stk_dataframe (v), -1); - assert (isequal (K1, K2)); -***** error stk_sphcov_aniso (param, x, y, -2); -***** test stk_sphcov_aniso (param, x, y, -1); -***** error stk_sphcov_aniso (param, x, y, 0); -***** test stk_sphcov_aniso (param, x, y, 1); -***** test stk_sphcov_aniso (param, x, y, 2); -***** error stk_sphcov_aniso (param, x, y, 3); -***** error stk_sphcov_aniso (param, x, y, nan); -***** error stk_sphcov_aniso (param, x, y, inf); -***** shared dim, param, x, y, nx, ny - dim = 3; - param = log ([1.0; 2.5; 2.4; 2.6]); - nx = 4; ny = 10; - x = stk_sampling_randunif (nx, dim); - y = stk_sampling_randunif (ny, dim); -***** test - K1 = stk_sphcov_aniso (param, x, y); - K2 = stk_sphcov_aniso (param, x, y, -1); - assert (isequal (size(K1), [nx ny])); - assert (stk_isequal_tolabs (K1, K2)); -***** test - for i = 1:(dim + 1), - dK = stk_sphcov_aniso (param, x, y, i); - assert (isequal (size (dK), [nx ny])); - end -***** test - n = 7; - x = stk_sampling_randunif (n, dim); - y = stk_sampling_randunif (n, dim); - - K1 = stk_sphcov_aniso (param, x, y); - K2 = stk_sphcov_aniso (param, x, y, -1, true); - assert (isequal (size (K1), [n n])); - assert (stk_isequal_tolabs (K2, diag (K1))); - - for i = 1:(dim + 1), - dK1 = stk_sphcov_aniso (param, x, y, i); - dK2 = stk_sphcov_aniso (param, x, y, i, true); - assert (isequal (size (dK1), [n n])); - assert (stk_isequal_tolabs (dK2, diag (dK1))); - end -21 tests, 21 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_discretecov.m] ->>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_discretecov.m -***** shared model, model2, x0 - n0 = 20; n1 = 10; dim = 4; - x0 = stk_sampling_randunif (n0, dim); - x1 = stk_sampling_randunif (n1, dim); - model = stk_model ('stk_materncov52_aniso', dim); - model.lm = stk_lm_affine (); - model.param = log ([1.0; 2.1; 2.2; 2.3; 2.4]); -***** test % without noise, pairwise = false - model.lognoisevariance = - inf; - model2 = stk_model ('stk_discretecov', model, x0); - idx = [1 4 9]; - [K1, P1] = stk_make_matcov (model, x0(idx, :)); - [K2, P2] = stk_make_matcov (model2, idx'); - assert (stk_isequal_tolrel (K1, K2)); - assert (stk_isequal_tolrel (P1, P2)); -***** test % without noise, pairwise = true - K1 = stk_make_matcov (model, x0([2 5 6], :), [], true); - K2 = stk_make_matcov (model2, [2 5 6]', [], true); - assert (stk_isequal_tolrel (K1, K2)); -***** test % with noise, pairwise = false - model.lognoisevariance = log (0.01); - model2 = stk_model ('stk_discretecov', model, x0); - idx = [1 4 9]; - [K1, P1] = stk_make_matcov (model, x0(idx, :)); - [K2, P2] = stk_make_matcov (model2, idx'); - assert (stk_isequal_tolrel (K1, K2)); - assert (stk_isequal_tolrel (P1, P2)); -3 tests, 3 passed, 0 known failure, 0 skipped [inst/covfcs/stk_materncov32_aniso.m] >>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_materncov32_aniso.m ***** shared param, x, y, K1, K2, K3 @@ -4266,97 +4560,48 @@ assert (stk_isequal_tolabs (dK2, diag (dK1))); end 21 tests, 21 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_materncov32_iso.m] ->>>>> /build/octave-stk-2.5.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 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, -1, false, pi^2); -***** error stk_materncov32_iso (param, x, y, -2); -***** test stk_materncov32_iso (param, x, y, -1); -***** error stk_materncov32_iso (param, x, y, 0); -***** test stk_materncov32_iso (param, x, y, 1); -***** test stk_materncov32_iso (param, x, y, 2); -***** error stk_materncov32_iso (param, x, y, 3); -***** error stk_materncov32_iso (param, x, y, nan); -***** error stk_materncov32_iso (param, x, y, inf); -***** shared dim, param, x, y, nx, ny - dim = 3; - param = log ([1.0; 2.5]); - nx = 4; ny = 10; - x = stk_sampling_randunif (nx, dim); - y = stk_sampling_randunif (ny, dim); -***** test - K1 = stk_materncov32_iso (param, x, y); - K2 = stk_materncov32_iso (param, x, y, -1); - assert (isequal (size (K1), [nx ny])); - assert (stk_isequal_tolabs (K1, K2)); -***** test - for i = 1:2, - dK = stk_materncov32_iso (param, x, y, i); - assert (isequal (size (dK), [nx ny])); - end -***** test - n = 7; - x = stk_sampling_randunif (n, dim); - y = stk_sampling_randunif (n, dim); - - K1 = stk_materncov32_iso (param, x, y); - K2 = stk_materncov32_iso (param, x, y, -1, true); - assert (isequal (size (K1), [n n])); - assert (stk_isequal_tolabs (K2, diag (K1))); - - for i = 1:2, - dK1 = stk_materncov32_iso (param, x, y, i); - dK2 = stk_materncov32_iso (param, x, y, i, true); - assert (isequal (size (dK1), [n n])); - assert (stk_isequal_tolabs (dK2, diag (dK1))); - end -18 tests, 18 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_expcov_iso.m] ->>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_expcov_iso.m -***** shared param, x, y +[inst/covfcs/stk_expcov_aniso.m] +>>>>> /build/octave-stk-2.5.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 stk_expcov_iso (); -***** error stk_expcov_iso (param); -***** error stk_expcov_iso (param, x); -***** test stk_expcov_iso (param, x, y); -***** test stk_expcov_iso (param, x, y, -1); -***** test stk_expcov_iso (param, x, y, -1, false); -***** error stk_expcov_iso (param, x, y, -1, false, pi^2); -***** error stk_expcov_iso (param, x, y, -2); -***** test stk_expcov_iso (param, x, y, -1); -***** error stk_expcov_iso (param, x, y, 0); -***** test stk_expcov_iso (param, x, y, 1); -***** test stk_expcov_iso (param, x, y, 2); -***** error stk_expcov_iso (param, x, y, 3); -***** error stk_expcov_iso (param, x, y, nan); -***** error stk_expcov_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); +***** error K0 = stk_expcov_aniso (param, x, y, -1, false, pi^2); +***** 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_expcov_iso (param, x, y); - K2 = stk_expcov_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_expcov_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 @@ -4364,40 +4609,40 @@ x = stk_sampling_randunif (n, dim); y = stk_sampling_randunif (n, dim); - K1 = stk_expcov_iso (param, x, y); - K2 = stk_expcov_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_expcov_iso (param, x, y, i); - dK2 = stk_expcov_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 -[inst/covfcs/stk_sphcov_iso.m] ->>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_sphcov_iso.m +21 tests, 21 passed, 0 known failure, 0 skipped +[inst/covfcs/stk_materncov52_iso.m] +>>>>> /build/octave-stk-2.5.1/inst/covfcs/stk_materncov52_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 stk_sphcov_iso (); -***** error stk_sphcov_iso (param); -***** error stk_sphcov_iso (param, x); -***** test stk_sphcov_iso (param, x, y); -***** test stk_sphcov_iso (param, x, y, -1); -***** test stk_sphcov_iso (param, x, y, -1, false); -***** error stk_sphcov_iso (param, x, y, -1, false, pi^2); -***** error stk_sphcov_iso (param, x, y, -2); -***** test stk_sphcov_iso (param, x, y, -1); -***** error stk_sphcov_iso (param, x, y, 0); -***** test stk_sphcov_iso (param, x, y, 1); -***** test stk_sphcov_iso (param, x, y, 2); -***** error stk_sphcov_iso (param, x, y, 3); -***** error stk_sphcov_iso (param, x, y, nan); -***** error stk_sphcov_iso (param, x, y, inf); +***** error stk_materncov52_iso (); +***** error stk_materncov52_iso (param); +***** error stk_materncov52_iso (param, x); +***** test stk_materncov52_iso (param, x, y); +***** test stk_materncov52_iso (param, x, y, -1); +***** test stk_materncov52_iso (param, x, y, -1, false); +***** error stk_materncov52_iso (param, x, y, -1, false, pi^2); +***** error stk_materncov52_iso (param, x, y, -2); +***** test stk_materncov52_iso (param, x, y, -1); +***** error stk_materncov52_iso (param, x, y, 0); +***** test stk_materncov52_iso (param, x, y, 1); +***** test stk_materncov52_iso (param, x, y, 2); +***** error stk_materncov52_iso (param, x, y, 3); +***** error stk_materncov52_iso (param, x, y, nan); +***** error stk_materncov52_iso (param, x, y, inf); ***** shared dim, param, x, y, nx, ny dim = 3; param = log ([1.0; 2.5]); @@ -4405,13 +4650,13 @@ x = stk_sampling_randunif (nx, dim); y = stk_sampling_randunif (ny, dim); ***** test - K1 = stk_sphcov_iso (param, x, y); - K2 = stk_sphcov_iso (param, x, y, -1); + K1 = stk_materncov52_iso (param, x, y); + K2 = stk_materncov52_iso (param, x, y, -1); assert (isequal (size (K1), [nx ny])); assert (stk_isequal_tolabs (K1, K2)); ***** test for i = 1:2, - dK = stk_sphcov_iso (param, x, y, i); + dK = stk_materncov52_iso (param, x, y, i); assert (isequal (size (dK), [nx ny])); end ***** test @@ -4419,750 +4664,18 @@ x = stk_sampling_randunif (n, dim); y = stk_sampling_randunif (n, dim); - K1 = stk_sphcov_iso (param, x, y); - K2 = stk_sphcov_iso (param, x, y, -1, true); + K1 = stk_materncov52_iso (param, x, y); + K2 = stk_materncov52_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_sphcov_iso (param, x, y, i); - dK2 = stk_sphcov_iso (param, x, y, i, true); - assert (isequal (size (dK1), [n n])); - assert (stk_isequal_tolabs (dK2, diag (dK1))); - end -18 tests, 18 passed, 0 known failure, 0 skipped -[inst/covfcs/stk_materncov_iso.m] ->>>>> /build/octave-stk-2.5.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 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, -1, false, pi^2); -***** 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/octave-stk-2.5.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, -1, false, pi^2); -***** 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); + dK1 = stk_materncov52_iso (param, x, y, i); + dK2 = stk_materncov52_iso (param, x, y, i, true); assert (isequal (size (dK1), [n n])); assert (stk_isequal_tolabs (dK2, diag (dK1))); end 18 tests, 18 passed, 0 known failure, 0 skipped -[inst/misc/parallel/@stk_parallel_engine_parfor/stk_parallel_engine_parfor.m] ->>>>> /build/octave-stk-2.5.1/inst/misc/parallel/@stk_parallel_engine_parfor/stk_parallel_engine_parfor.m -***** test - if exist ('matlabpool') || exist ('parpool') - stk_test_class ('stk_parallel_engine_parfor') - end -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/parallel/@stk_parallel_engine_none/stk_parallel_engine_none.m] ->>>>> /build/octave-stk-2.5.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/test/stk_test.m] ->>>>> /build/octave-stk-2.5.1/inst/misc/test/stk_test.m -***** assert(isempty([])) % support for test assert shorthand -***** assert((1 + 1) == 2) -***** test a=1; -***** test assert(~exist('a')); -***** shared a % create a shared variable -***** test a = 3; % assign to a shared variable -***** test assert(a == 3); % variable should equal 3 in this second 'test' block -***** shared b, c % replace shared variables {'a'} --> {'b', 'c'} -***** test assert(~exist('a')); % a no longer exists -***** test assert(isempty(b)); % variables start off empty -***** shared a % recreate a shared variable that had been deleted -***** test assert (isempty(a)); % it is empty, even though it was equal to 3 before -***** shared a, b, c % creates three shared variables - a = 1; b = 2; c = 3; % give values to all variables, in the same block -***** assert(isequal([a, b, c], [1, 2, 3])); % test all of them together -***** test c=6; % update a value -***** test % show that the update sticks between blocks - assert(isequal([a, b, c], [1, 2, 6])); -***** shared % clear all shared variables -***** assert(~exist('a')) % show that they are cleared -***** error test % not enough input arguments -***** error test(1, 2, 3, 4) % too many input args -***** error garbage % usage on nonexistent function should be -***** error stt_test('test', 'bogus'); % undefined function error -***** error stk_test('test', 'bogus'); % error raised by stk_test itself -***** error stk_test(); -***** error stk_test('disp', 'verbose', [], 'extra arg !!!'); -***** error stk_test([]) -***** error stk_test(0.0) -***** error stk_test('stk_mindist', 0.0) -***** error stk_test('stk_mindist', 'dudule') -24 tests, 24 passed, 0 known failure, 0 skipped -[inst/misc/test/stk_isequal_tolabs.m] ->>>>> /build/octave-stk-2.5.1/inst/misc/test/stk_isequal_tolabs.m -***** shared r1, r2, a, b, tolabs - a = 1.01; b = 1.02; tolabs = 0.1; -***** error rr = stk_isequal_tolabs(); -***** error rr = stk_isequal_tolabs(a); -***** test r1 = stk_isequal_tolabs(a, b); -***** test r2 = stk_isequal_tolabs(a, b, tolabs); -***** error rr = stk_isequal_tolabs(a, b, tolabs, pi); -***** test assert(~r1); -***** test assert(r2); -***** test - a = struct('u', []); b = struct('v', []); - assert(~ stk_isequal_tolabs(a, b)) -***** test - a = struct('u', 1.01); b = struct('u', 1.02); - assert(stk_isequal_tolabs(a, b, tolabs)) -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/misc/test/stk_isequal_tolrel.m] ->>>>> /build/octave-stk-2.5.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]); -***** error rr = stk_isequal_tolrel(a, b, tolrel, pi); -***** 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)) -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/misc/design/stk_phipcrit.m] ->>>>> /build/octave-stk-2.5.1/inst/misc/design/stk_phipcrit.m -***** shared x - x = [0, 0.2, 0.4, 0.6, 0.8, 1.0; - 0, 0.6, 0.8, 1.0, 0.2, 0.4]'; -***** assert (stk_isequal_tolabs ... - (stk_phipcrit (x, 10), 3.946317664423303, 1e-15)) -***** assert (stk_isequal_tolabs ... - (stk_phipcrit (x, 50), 3.614077252813102, 1e-15)); -***** assert (stk_isequal_tolabs ... - (stk_phipcrit (x, 100), 3.574589859827413, 1e-15)); -***** assert (stk_isequal_tolabs ... - (stk_phipcrit (x, 1e9), 1 / stk_mindist (x), 1e-8)); -***** assert (isequal (stk_phipcrit (ones (2)), Inf)); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/misc/design/stk_maxabscorr.m] ->>>>> /build/octave-stk-2.5.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_filldist.m] ->>>>> /build/octave-stk-2.5.1/inst/misc/dist/stk_filldist.m -***** test %%% exact - d = 3; x = rand(7, d); box = repmat([0; 1], 1, d); - fd1 = stk_filldist(x, box); - fd2 = stk_filldist(stk_dataframe(x), stk_dataframe(box)); - assert(stk_isequal_tolabs(fd1, fd2)); -***** test %%% discretized - d = 3; x = rand(7, d); y = rand(20, d); - fd1 = stk_filldist(x, y); - fd2 = stk_filldist(stk_dataframe(x), stk_dataframe(y)); - assert(stk_isequal_tolabs(fd1, fd2)); -***** test - n = 5; % must be bigger than 2 - for dim = 1:10, - x = rand(n, dim); - fd = stk_filldist(x, x); - assert(stk_isequal_tolabs(fd, 0.0)); - end -***** test %%% exact - for dim = 1:6, - x = 0.5 * ones(1, dim); - fd = stk_filldist(x); % [0; 1]^d is the default box - assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); - end -***** test %%% discretized - for dim = 1:6, - x = 0.5 * ones(1, dim); - y = stk_sampling_regulargrid(2^dim, dim); % [0; 1]^d is the default box - fd = stk_filldist(x, y); - assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); - end -***** test - for dim = [1 3 7], - box = repmat([1; 2], 1, dim); - x = 1 + 0.5 * ones(1, dim); - fd = stk_filldist(x, box); - assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); - end -***** test - dim = 3; - box = repmat([-1; 1], 1, dim); - x = stk_sampling_randunif(20, dim, box); - y = stk_sampling_regulargrid(3^dim, dim, box); - fd1 = stk_filldist(x, box); - fd2 = stk_filldist(x, y); - assert(fd1 >= fd2 - 10 * eps); -***** test %%% exact - for dim = [1 3 7], - x = zeros(1, dim); - [fd, ymax] = stk_filldist_exact(x); - assert(stk_isequal_tolabs(fd, sqrt(dim))); - assert(stk_isequal_tolabs(ymax, ones(1, dim))); - end -***** test %%% discretized - for dim = [1 3 7], - x = zeros(1, dim); - y = stk_sampling_regulargrid(3^dim, dim); - [fd, ymax] = stk_filldist(x, y); - assert(stk_isequal_tolabs(fd, sqrt(dim))); - assert(stk_isequal_tolabs(ymax, ones(1, dim))); - end -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/misc/dist/stk_filldist_discretized.m] ->>>>> /build/octave-stk-2.5.1/inst/misc/dist/stk_filldist_discretized.m -***** error stk_filldist_discretized(0.0) % incorrect nb of arguments -***** error stk_filldist_discretized(0.0, 0.0, pi) % 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 -10 tests, 10 passed, 0 known failure, 0 skipped -[inst/misc/dist/stk_dist.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/misc/dist/stk_mindist.m -***** test - d = 3; x = rand(7, d); - md1 = stk_mindist(x); - md2 = stk_mindist(stk_dataframe(x)); - assert(stk_isequal_tolabs(md1, md2)); -***** test - for nc = [0 5 10], - x = zeros(0, nc); - d = stk_mindist(x); - assert(isempty(d)); - end -***** test - for nc = [0 5 10], - x = rand(1, nc); - d = stk_mindist(x); - assert(isempty(d)); - end -***** test - for nr = [2 5 10], - x = zeros(nr, 0); - d = stk_mindist(x); - assert(isequal(d, 0.0)); - end -***** test - - nrep = 20; - TOL_REL = 1e-15; - - for irep = 1:nrep, - - n = 2 + floor(rand * 10); - d = 1 + floor(rand * 10); - x = rand(n, d); - z = stk_mindist(x); - - assert(isequal(size(d), [1, 1])); - assert(~isnan(d)); - assert(~isinf(d)); - - % check the result - mindist = Inf; - for i = 1:(n-1), - for j = (i+1):n, - mindist = min(mindist, norm(x(i,:) - x(j,:))); - end - end - assert(abs(z - mindist) <= TOL_REL * mindist); - - end -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/misc/dist/stk_gpquadform.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/misc/dist/stk_filldist_exact.m -***** test - d = 3; x = rand(7, d); box = repmat([0; 1], 1, d); - fd1 = stk_filldist_exact(x, box); - fd2 = stk_filldist_exact(stk_dataframe(x), stk_dataframe(box)); - assert(stk_isequal_tolabs(fd1, fd2)); -***** test - for dim = 1:6, - x = 0.5 * ones(1, dim); - fd = stk_filldist_exact(x); % [0; 1]^d is the default box - assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); - end -***** test - for dim = [1 3 7], - box = repmat([1; 2], 1, dim); - x = 1 + 0.5 * ones(1, dim); - fd = stk_filldist_exact(x, box); - assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); - end -***** test - for dim = [1 3 7], - x = zeros(1, dim); - [fd, ymax] = stk_filldist_exact(x); - assert(stk_isequal_tolabs(fd, sqrt(dim))); - assert(stk_isequal_tolabs(ymax, ones(1, dim))); - end -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/misc/text/stk_sprintf_colvect.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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 -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 -toto toto -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/misc/text/stk_sprintf_colvect_fixedpoint.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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/optim/@stk_optim_baseclass/stk_optim_baseclass.m] ->>>>> /build/octave-stk-2.5.1/inst/misc/optim/@stk_optim_baseclass/stk_optim_baseclass.m -***** test stk_test_class ('stk_optim_baseclass') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/misc/optim/stk_optim_testmin_unc.m] ->>>>> /build/octave-stk-2.5.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 (); -***** error b = stk_optim_testmin_unc (algo, 33.51); -***** assert (stk_optim_testmin_unc (algo)); -***** assert (~ stk_optim_testmin_unc ('dudule')); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/misc/optim/stk_minimize_boxconstrained.m] ->>>>> /build/octave-stk-2.5.1/inst/misc/optim/stk_minimize_boxconstrained.m -***** test % Call fmincon using function name - if stk_optim_isavailable ('fmincon') - assert (stk_optim_testmin_box ('fmincon')); - end -***** test % Call fmincon directly, using algorithm object - if stk_optim_isavailable ('fmincon') - algo = stk_optim_fmincon ('TolX', 1e-12, 'TolFun', 1e-12); - assert (stk_optim_testmin_box (algo)); - end -***** test % Call sqp using function name - if stk_optim_isavailable ('octavesqp') - assert (stk_optim_testmin_box ('octavesqp')); - end -***** test % Call sqp directly, using algorithm object - if stk_optim_isavailable ('octavesqp') - algo = stk_optim_octavesqp (); - assert (stk_optim_testmin_box (algo)); - end -***** error assert (stk_optim_testmin_box ('InexistentOptimizer')); -***** error assert (stk_optim_testmin_box (100)); -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/misc/optim/stk_optim_testmin_box.m] ->>>>> /build/octave-stk-2.5.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 (); -***** error b = stk_optim_testmin_box (algo, 33.51); -***** assert (stk_optim_testmin_box (algo)); -***** assert (~ stk_optim_testmin_box ('dudule')); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.1/inst/misc/optim/stk_minimize_unconstrained.m -***** test % Call fminsearch using function name - if stk_optim_isavailable ('fminsearch') - assert (stk_optim_testmin_unc ('fminsearch')); - end -***** test % Call fminsearch directly, using algorithm object - if stk_optim_isavailable ('fminsearch') - algo = stk_optim_fminsearch ('TolX', 1e-12, 'TolFun', 1e-12); - assert (stk_optim_testmin_unc (algo)); - end -***** test % Call sqp using function name - if stk_optim_isavailable ('octavesqp') - assert (stk_optim_testmin_unc ('octavesqp')); - end -***** test % Call sqp directly, using algorithm object - if stk_optim_isavailable ('octavesqp') - algo = stk_optim_octavesqp (); - assert (stk_optim_testmin_unc (algo)); - end -***** error assert (stk_optim_testmin_unc ('InexistentOptimizer')); -***** error assert (stk_optim_testmin_unc (100)); -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/misc/error/stk_error.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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_pdf.m] >>>>> /build/octave-stk-2.5.1/inst/misc/distrib/stk_distrib_student_pdf.m ***** assert (stk_isequal_tolrel ( ... @@ -5176,64 +4689,6 @@ ***** 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/octave-stk-2.5.1/inst/misc/distrib/stk_distrib_student_cdf.m -***** assert (stk_isequal_tolrel ( ... - stk_distrib_student_cdf ([-1; 0; 1], [1 2], 0, [1 10]), ... - [0.25, ... % tcdf ((-1 - 0)/1, 1) - 4.6473271920707004e-01; ... % tcdf ((-1 - 0)/10, 2) - 0.50, ... % tcdf (( 0 - 0)/1, 1) - 0.50; ... % tcdf (( 0 - 0)/10, 2) - 0.75, ... % tcdf (( 1 - 0)/1, 1) - 5.3526728079292996e-01 ... % tcdf (( 1 - 0)/10, 2) - ], 4 * eps)) -***** test - [p, q] = stk_distrib_student_cdf (1e10, 2); - assert (isequal (p, 1.0)); - assert (stk_isequal_tolrel (q, 4.999999999999999999925e-21, 10 * eps)); -***** assert (isequal (stk_distrib_student_cdf (0.0, 1), 0.5)); -***** assert (isequal (stk_distrib_student_cdf (inf, 1), 1.0)); -***** 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/octave-stk-2.5.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/octave-stk-2.5.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/octave-stk-2.5.1/inst/misc/distrib/stk_distrib_bivnorm_cdf.m ***** test @@ -5301,6 +4756,26 @@ p = stk_distrib_bivnorm_cdf ([0 0], 0, 0, [1; 0], 1, 0); assert (isequal (p, [0.25; 0.5])); 12 tests, 12 passed, 0 known failure, 0 skipped +[inst/misc/distrib/stk_distrib_student_cdf.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/distrib/stk_distrib_student_cdf.m +***** assert (stk_isequal_tolrel ( ... + stk_distrib_student_cdf ([-1; 0; 1], [1 2], 0, [1 10]), ... + [0.25, ... % tcdf ((-1 - 0)/1, 1) + 4.6473271920707004e-01; ... % tcdf ((-1 - 0)/10, 2) + 0.50, ... % tcdf (( 0 - 0)/1, 1) + 0.50; ... % tcdf (( 0 - 0)/10, 2) + 0.75, ... % tcdf (( 1 - 0)/1, 1) + 5.3526728079292996e-01 ... % tcdf (( 1 - 0)/10, 2) + ], 4 * eps)) +***** test + [p, q] = stk_distrib_student_cdf (1e10, 2); + assert (isequal (p, 1.0)); + assert (stk_isequal_tolrel (q, 4.999999999999999999925e-21, 10 * eps)); +***** assert (isequal (stk_distrib_student_cdf (0.0, 1), 0.5)); +***** assert (isequal (stk_distrib_student_cdf (inf, 1), 1.0)); +***** assert (isequal (stk_distrib_student_cdf (-inf, 1), 0.0)); +***** assert (isnan (stk_distrib_student_cdf (nan, 1))); +6 tests, 6 passed, 0 known failure, 0 skipped [inst/misc/distrib/stk_distrib_normal_ei.m] >>>>> /build/octave-stk-2.5.1/inst/misc/distrib/stk_distrib_normal_ei.m ***** assert (stk_isequal_tolrel (stk_distrib_normal_ei (0.0), 1 / sqrt (2 * pi), eps)) @@ -5342,47 +4817,57 @@ 3.455697443411153 ]; assert (stk_isequal_tolabs (crps, crps_ref, 1e-10)); 6 tests, 6 passed, 0 known failure, 0 skipped -[inst/misc/pareto/stk_paretofind.m] ->>>>> /build/octave-stk-2.5.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/distrib/stk_distrib_normal_pdf.m] +>>>>> /build/octave-stk-2.5.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_normal_cdf.m] +>>>>> /build/octave-stk-2.5.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_student_ei.m] +>>>>> /build/octave-stk-2.5.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/pareto/stk_dominatedhv.m] >>>>> /build/octave-stk-2.5.1/inst/misc/pareto/stk_dominatedhv.m ***** error hv = stk_dominatedhv (); @@ -5557,6 +5042,47 @@ end end 35 tests, 35 passed, 0 known failure, 0 skipped +[inst/misc/pareto/stk_paretofind.m] +>>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/inst/misc/pareto/stk_isdominated.m ***** test @@ -5590,1109 +5116,723 @@ 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/octave-stk-2.5.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); -***** error zsimc = stk_conditioning (lambda, zi, zsim, xi_ind, pi^2); -***** 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))); +[inst/misc/text/stk_sprintf_colvect.m] +>>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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 - 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); -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/utils/stk_generate_samplepaths.m] ->>>>> /build/octave-stk-2.5.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); -***** error zsim = stk_generate_samplepaths (model, xi, zi, xt, nb_paths, log (2)); + 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_sprintf_colvect_fixedpoint.m] +>>>>> /build/octave-stk-2.5.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_disp_progress.m] +>>>>> /build/octave-stk-2.5.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 +toto +***** error stk_disp_progress ('toto ', 2, 1); ***** test - zsim = stk_generate_samplepaths (model, xt); - assert (isequal (size (zsim), [n, 1])); + stk_disp_progress ('toto ', 1, 2); + stk_disp_progress ('toto ', 2, 2); +warning: implicit conversion from numeric to char +toto toto +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/misc/optim/@stk_optim_fmincon/stk_optim_fmincon.m] +>>>>> /build/octave-stk-2.5.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_testmin_box.m] +>>>>> /build/octave-stk-2.5.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 (); +***** error b = stk_optim_testmin_box (algo, 33.51); +***** assert (stk_optim_testmin_box (algo)); +***** assert (~ stk_optim_testmin_box ('dudule')); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/misc/optim/stk_optim_testmin_unc.m] +>>>>> /build/octave-stk-2.5.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 (); +***** error b = stk_optim_testmin_unc (algo, 33.51); +***** assert (stk_optim_testmin_unc (algo)); +***** assert (~ stk_optim_testmin_unc ('dudule')); +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/misc/optim/@stk_optim_octavesqp/stk_optim_octavesqp.m] +>>>>> /build/octave-stk-2.5.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_boxconstrained.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/optim/stk_minimize_boxconstrained.m +***** test % Call fmincon using function name + if stk_optim_isavailable ('fmincon') + assert (stk_optim_testmin_box ('fmincon')); + end +***** test % Call fmincon directly, using algorithm object + if stk_optim_isavailable ('fmincon') + algo = stk_optim_fmincon ('TolX', 1e-12, 'TolFun', 1e-12); + assert (stk_optim_testmin_box (algo)); + end +***** test % Call sqp using function name + if stk_optim_isavailable ('octavesqp') + assert (stk_optim_testmin_box ('octavesqp')); + end +***** test % Call sqp directly, using algorithm object + if stk_optim_isavailable ('octavesqp') + algo = stk_optim_octavesqp (); + assert (stk_optim_testmin_box (algo)); + end +***** error assert (stk_optim_testmin_box ('InexistentOptimizer')); +***** error assert (stk_optim_testmin_box (100)); +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/misc/optim/@stk_optim_baseclass/stk_optim_baseclass.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/optim/@stk_optim_baseclass/stk_optim_baseclass.m +***** test stk_test_class ('stk_optim_baseclass') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/misc/optim/stk_minimize_unconstrained.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/optim/stk_minimize_unconstrained.m +***** test % Call fminsearch using function name + if stk_optim_isavailable ('fminsearch') + assert (stk_optim_testmin_unc ('fminsearch')); + end +***** test % Call fminsearch directly, using algorithm object + if stk_optim_isavailable ('fminsearch') + algo = stk_optim_fminsearch ('TolX', 1e-12, 'TolFun', 1e-12); + assert (stk_optim_testmin_unc (algo)); + end +***** test % Call sqp using function name + if stk_optim_isavailable ('octavesqp') + assert (stk_optim_testmin_unc ('octavesqp')); + end +***** test % Call sqp directly, using algorithm object + if stk_optim_isavailable ('octavesqp') + algo = stk_optim_octavesqp (); + assert (stk_optim_testmin_unc (algo)); + end +***** error assert (stk_optim_testmin_unc ('InexistentOptimizer')); +***** error assert (stk_optim_testmin_unc (100)); +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/misc/optim/@stk_optim_fminsearch/stk_optim_fminsearch.m] +>>>>> /build/octave-stk-2.5.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/error/stk_error.m] +>>>>> /build/octave-stk-2.5.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/test/stk_isequal_tolrel.m] +>>>>> /build/octave-stk-2.5.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]); +***** error rr = stk_isequal_tolrel(a, b, tolrel, pi); +***** test assert (isequal (r1, false)); +***** test assert (isequal (r2, true)); +***** test assert (isequal (r3, false)); ***** 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))); + 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)) 11 tests, 11 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_cubic/stk_lm_cubic.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_cubic/stk_lm_cubic.m -***** test stk_test_class ('stk_lm_cubic') -***** error lm = stk_lm_cubic (3.33); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_cubic/feval.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_cubic/feval.m +[inst/misc/test/stk_isequal_tolabs.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/test/stk_isequal_tolabs.m +***** shared r1, r2, a, b, tolabs + a = 1.01; b = 1.02; tolabs = 0.1; +***** error rr = stk_isequal_tolabs(); +***** error rr = stk_isequal_tolabs(a); +***** test r1 = stk_isequal_tolabs(a, b); +***** test r2 = stk_isequal_tolabs(a, b, tolabs); +***** error rr = stk_isequal_tolabs(a, b, tolabs, pi); +***** test assert(~r1); +***** test assert(r2); ***** 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/octave-stk-2.5.1/inst/lm/@stk_lm_affine/stk_lm_affine.m -***** test stk_test_class ('stk_lm_affine') -***** error lm = stk_lm_affine (3.33); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_affine/feval.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_affine/feval.m + a = struct('u', []); b = struct('v', []); + assert(~ stk_isequal_tolabs(a, b)) ***** test - n = 15; d = 4; - x = stk_sampling_randunif (n, d); - P = feval (stk_lm_affine (), x); - assert (isequal (size (P), [n, d + 1])); + a = struct('u', 1.01); b = struct('u', 1.02); + assert(stk_isequal_tolabs(a, b, tolabs)) +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/misc/test/stk_test.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/test/stk_test.m +***** assert(isempty([])) % support for test assert shorthand +***** assert((1 + 1) == 2) +***** test a=1; +***** test assert(~exist('a')); +***** shared a % create a shared variable +***** test a = 3; % assign to a shared variable +***** test assert(a == 3); % variable should equal 3 in this second 'test' block +***** shared b, c % replace shared variables {'a'} --> {'b', 'c'} +***** test assert(~exist('a')); % a no longer exists +***** test assert(isempty(b)); % variables start off empty +***** shared a % recreate a shared variable that had been deleted +***** test assert (isempty(a)); % it is empty, even though it was equal to 3 before +***** shared a, b, c % creates three shared variables + a = 1; b = 2; c = 3; % give values to all variables, in the same block +***** assert(isequal([a, b, c], [1, 2, 3])); % test all of them together +***** test c=6; % update a value +***** test % show that the update sticks between blocks + assert(isequal([a, b, c], [1, 2, 6])); +***** shared % clear all shared variables +***** assert(~exist('a')) % show that they are cleared +***** error test % not enough input arguments +***** error test(1, 2, 3, 4) % too many input args +***** error garbage % usage on nonexistent function should be +***** error stt_test('test', 'bogus'); % undefined function error +***** error stk_test('test', 'bogus'); % error raised by stk_test itself +***** error stk_test(); +***** error stk_test('disp', 'verbose', [], 'extra arg !!!'); +***** error stk_test([]) +***** error stk_test(0.0) +***** error stk_test('stk_mindist', 0.0) +***** error stk_test('stk_mindist', 'dudule') +24 tests, 24 passed, 0 known failure, 0 skipped +[inst/misc/parallel/@stk_parallel_engine_none/stk_parallel_engine_none.m] +>>>>> /build/octave-stk-2.5.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/lm/@stk_lm_null/stk_lm_null.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_null/stk_lm_null.m -***** test stk_test_class ('stk_lm_null') -***** error lm = stk_lm_null (3.33); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_null/feval.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_null/feval.m +[inst/misc/parallel/@stk_parallel_engine_parfor/stk_parallel_engine_parfor.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/parallel/@stk_parallel_engine_parfor/stk_parallel_engine_parfor.m ***** test - n = 15; d = 4; - x = stk_sampling_randunif (n, d); - P = feval (stk_lm_null (), x); - assert (isequal (size (P), [n, 0])); + if exist ('matlabpool') || exist ('parpool') + stk_test_class ('stk_parallel_engine_parfor') + end 1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/stk_lm_polynomial.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/stk_lm_polynomial.m -***** error lm = stk_lm_polynomial (); -***** error lm = stk_lm_polynomial (0, 3.33); +[inst/misc/design/stk_phipcrit.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/design/stk_phipcrit.m +***** shared x + x = [0, 0.2, 0.4, 0.6, 0.8, 1.0; + 0, 0.6, 0.8, 1.0, 0.2, 0.4]'; +***** assert (stk_isequal_tolabs ... + (stk_phipcrit (x, 10), 3.946317664423303, 1e-15)) +***** assert (stk_isequal_tolabs ... + (stk_phipcrit (x, 50), 3.614077252813102, 1e-15)); +***** assert (stk_isequal_tolabs ... + (stk_phipcrit (x, 100), 3.574589859827413, 1e-15)); +***** assert (stk_isequal_tolabs ... + (stk_phipcrit (x, 1e9), 1 / stk_mindist (x), 1e-8)); +***** assert (isequal (stk_phipcrit (ones (2)), Inf)); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/misc/design/stk_maxabscorr.m] +>>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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 - lm = stk_lm_polynomial (-1); - assert (isa (lm, 'stk_lm_null')); + Qx = stk_gpquadform(x, [], rx); + assert(isequal(Qx, zeros(11))); ***** test - lm = stk_lm_polynomial (0); - assert (isa (lm, 'stk_lm_constant')); + Qxx = stk_gpquadform(x, x, rx, rx); + assert(isequal(Qxx, zeros(11))); ***** test - lm = stk_lm_polynomial (1); - assert (isa (lm, 'stk_lm_affine')); + Qxy = stk_gpquadform(x, y, rx, ry); + assert(isequal(Qxy, zeros(11, 13))); ***** test - lm = stk_lm_polynomial (2); - assert (isa (lm, 'stk_lm_quadratic')); + Qzz = stk_gpquadform(z, [], rz); + assert(isequal(Qzz, zeros(7))); ***** test - lm = stk_lm_polynomial (3); - assert (isa (lm, 'stk_lm_cubic')); -7 tests, 7 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_quadratic/stk_lm_quadratic.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_quadratic/stk_lm_quadratic.m -***** test stk_test_class ('stk_lm_quadratic') -***** error lm = stk_lm_quadratic (3.33); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_quadratic/feval.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_quadratic/feval.m + Qxz = stk_gpquadform(x, z, rx, rz); + assert(stk_isequal_tolabs(Qxz, 5 * ones(11, 7))); ***** test - n = 15; d = 4; - x = stk_sampling_randunif (n, d); - P = feval (stk_lm_quadratic (), x); - assert (isequal (size (P), [n, 1 + d * (d + 3) / 2])); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_matrix/stk_lm_matrix.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_matrix/stk_lm_matrix.m -***** test stk_test_class ('stk_lm_matrix') -***** error lm = stk_lm_matrix ([], 3.33); -***** 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))); -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/lm/@stk_lm_constant/feval.m] ->>>>> /build/octave-stk-2.5.1/inst/lm/@stk_lm_constant/feval.m + 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 - 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/octave-stk-2.5.1/inst/lm/@stk_lm_constant/stk_lm_constant.m -***** test stk_test_class ('stk_lm_constant') -***** error lm = stk_lm_constant (3.33); -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_regulargrid.m] ->>>>> /build/octave-stk-2.5.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); -***** error x = stk_sampling_regulargrid (n, dim, box, pi); -***** assert (isa (x, 'stk_dataframe')); -***** assert (isa (x, 'stk_factorialdesign')); -***** assert (isequal (x.colnames, {})); + 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 - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_regulargrid (n, dim, box); - assert (isequal (x.colnames, cn)); + Qx = stk_gpquadform(x, [], rx); + assert(isequal(Qx, zeros(11))); ***** 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 + Qxx = stk_gpquadform(x, x, rx, rx); + assert(isequal(Qxx, zeros(11))); ***** 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)); + 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/octave-stk-2.5.1/inst/misc/dist/stk_filldist.m +***** test %%% exact + d = 3; x = rand(7, d); box = repmat([0; 1], 1, d); + fd1 = stk_filldist(x, box); + fd2 = stk_filldist(stk_dataframe(x), stk_dataframe(box)); + assert(stk_isequal_tolabs(fd1, fd2)); +***** test %%% discretized + d = 3; x = rand(7, d); y = rand(20, d); + fd1 = stk_filldist(x, y); + fd2 = stk_filldist(stk_dataframe(x), stk_dataframe(y)); + assert(stk_isequal_tolabs(fd1, fd2)); +***** test + n = 5; % must be bigger than 2 + for dim = 1:10, + x = rand(n, dim); + fd = stk_filldist(x, x); + assert(stk_isequal_tolabs(fd, 0.0)); end -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/sampling/@stk_sampcrit_akg/stk_sampcrit_akg.m] ->>>>> /build/octave-stk-2.5.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]'); -***** 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]'); -***** 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) -***** error F = stk_sampcrit_akg (M, xr, 1.234); % too many input arguments -38 tests, 38 passed, 0 known failure, 0 skipped -[inst/sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m] ->>>>> /build/octave-stk-2.5.1/inst/sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m -***** error F = stk_sampcrit_eqi ([], 0.5, 10, 1.234); % too many input arguments -***** shared F, M, EQI - M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); -***** 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]'); -***** 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')) -64 tests, 64 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_nesteddesign.m] ->>>>> /build/octave-stk-2.5.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); -***** error x = stk_sampling_nesteddesign (n, dim, box, niter, levels, pi); -***** 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; +***** test %%% exact + for dim = 1:6, + x = 0.5 * ones(1, dim); + fd = stk_filldist(x); % [0; 1]^d is the default box + assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); + end +***** test %%% discretized + for dim = 1:6, + x = 0.5 * ones(1, dim); + y = stk_sampling_regulargrid(2^dim, dim); % [0; 1]^d is the default box + fd = stk_filldist(x, y); + assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); 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'}) ); -12 tests, 12 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_randomlhs.m] ->>>>> /build/octave-stk-2.5.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); -***** error x = stk_sampling_randomlhs (n, dim, box, pi); -***** 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)); + for dim = [1 3 7], + box = repmat([1; 2], 1, dim); + x = 1 + 0.5 * ones(1, dim); + fd = stk_filldist(x, box); + assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); + end ***** 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)); + dim = 3; + box = repmat([-1; 1], 1, dim); + x = stk_sampling_randunif(20, dim, box); + y = stk_sampling_regulargrid(3^dim, dim, box); + fd1 = stk_filldist(x, box); + fd2 = stk_filldist(x, y); + assert(fd1 >= fd2 - 10 * eps); +***** test %%% exact + for dim = [1 3 7], + x = zeros(1, dim); + [fd, ymax] = stk_filldist_exact(x); + assert(stk_isequal_tolabs(fd, sqrt(dim))); + assert(stk_isequal_tolabs(ymax, ones(1, dim))); + end +***** test %%% discretized + for dim = [1 3 7], + x = zeros(1, dim); + y = stk_sampling_regulargrid(3^dim, dim); + [fd, ymax] = stk_filldist(x, y); + assert(stk_isequal_tolabs(fd, sqrt(dim))); + assert(stk_isequal_tolabs(ymax, ones(1, dim))); end 9 tests, 9 passed, 0 known failure, 0 skipped -[inst/sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m] ->>>>> /build/octave-stk-2.5.1/inst/sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m -***** error F = stk_sampcrit_ei ([], 1.234); % too many input arguments -***** shared F, M, EI - M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); -***** 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); -25 tests, 25 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampcrit_akg_eval.m] ->>>>> /build/octave-stk-2.5.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, ignd1, ignd2, K] = stk_predict (M_prior, xi, zi, [xi; xc]); % See CG#07 - - 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); -***** error AKG = stk_sampcrit_akg_eval (zc_mean, zc_std, zr_mean, zr_std, zcr_cov, 1.234); -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_vdc_rr2.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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 -***** error EI = stk_sampcrit_ei_eval (0, 0, 0, 0, 0) % too many 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)) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_olhs.m] ->>>>> /build/octave-stk-2.5.1/inst/sampling/stk_sampling_olhs.m -***** shared x, n, d, box, permut - n = 5; d = 2; box = [0 0; 1, 1]; permut = 1:2; -***** error x = stk_sampling_olhs(); -***** test x = stk_sampling_olhs(n); -***** test x = stk_sampling_olhs(n, d); -***** test x = stk_sampling_olhs(n, d, box); -***** test x = stk_sampling_olhs(n, d, box, permut); -***** error x = stk_sampling_olhs(n, d, box, permut, pi); -***** assert (isa (x, 'stk_dataframe')); -***** assert (isequal (x.colnames, {})); +[inst/misc/dist/stk_filldist_discretized.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/dist/stk_filldist_discretized.m +***** error stk_filldist_discretized(0.0) % incorrect nb of arguments +***** error stk_filldist_discretized(0.0, 0.0, pi) % 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 - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_olhs (n, d, box); - assert (isequal (x.colnames, cn)); + 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 - 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/octave-stk-2.5.1/inst/sampling/@stk_function/stk_function.m -***** shared F -***** test F = stk_function () % ending ";" omitted on purpose, to test disp - -F = - -***** error F = stk_function (1.234) % too many input arguments -***** 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 -12 tests, 12 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampcrit_ehvi_eval.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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); -***** error x = stk_sampling_nestedlhs (n, dim, box, niter, levels, pi); -***** 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; + n = 5; + for dim = 1:10, + x = rand(n, dim); + fd = stk_filldist_discretized(x, x); + assert(stk_isequal_tolabs(fd, 0.0)); 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'}) ); -12 tests, 12 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_halton_rr2.m] ->>>>> /build/octave-stk-2.5.1/inst/sampling/stk_sampling_halton_rr2.m -***** error stk_sampling_halton_rr2 () % nargin < 1 -***** error stk_sampling_halton_rr2 (10, 3, [], -1) % nargin > 3 ***** test - n = 300; d = 25; - x = stk_sampling_halton_rr2 (n, d); - assert (isequal (size (x), [n d])) + 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 - 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)); + 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 - dim = 2; box = stk_hrect (dim); - x = stk_sampling_halton_rr2 (5, dim, box); - assert (isequal (x.colnames, {})); + 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 - dim = 2; cn = {'W', 'H'}; box = stk_hrect (dim, cn); - x = stk_sampling_halton_rr2 (5, dim, box); - assert (isequal (x.colnames, cn)); -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/sampling/stk_halfpintl.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.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); -***** error x = stk_sampling_maximinlhs (n, dim, box, niter, pi); -***** assert (isa (x, 'stk_dataframe')); -***** assert (isequal (x.colnames, {})); + 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 +10 tests, 10 passed, 0 known failure, 0 skipped +[inst/misc/dist/stk_filldist_exact.m] +>>>>> /build/octave-stk-2.5.1/inst/misc/dist/stk_filldist_exact.m ***** test - cn = {'W', 'H'}; box = stk_hrect (box, cn); - x = stk_sampling_maximinlhs (n, dim, box); - assert (isequal (x.colnames, cn)); + d = 3; x = rand(7, d); box = repmat([0; 1], 1, d); + fd1 = stk_filldist_exact(x, box); + fd2 = stk_filldist_exact(stk_dataframe(x), stk_dataframe(box)); + assert(stk_isequal_tolabs(fd1, fd2)); ***** 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)); + for dim = 1:6, + x = 0.5 * ones(1, dim); + fd = stk_filldist_exact(x); % [0; 1]^d is the default box + assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); end -10 tests, 10 passed, 0 known failure, 0 skipped -[inst/sampling/stk_sampling_randunif.m] ->>>>> /build/octave-stk-2.5.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); -***** error x = stk_sampling_randunif (n, dim, box, pi); -***** 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)); + for dim = [1 3 7], + box = repmat([1; 2], 1, dim); + x = 1 + 0.5 * ones(1, dim); + fd = stk_filldist_exact(x, box); + assert(stk_isequal_tolabs(fd, 0.5 * sqrt(dim))); + end ***** 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)); + for dim = [1 3 7], + x = zeros(1, dim); + [fd, ymax] = stk_filldist_exact(x); + assert(stk_isequal_tolabs(fd, sqrt(dim))); + assert(stk_isequal_tolabs(ymax, ones(1, dim))); end -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_estim.m] ->>>>> /build/octave-stk-2.5.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))) -***** test % same thing, with empty lnv0 (ok) - param2 = stk_param_estim (model, xi, zi, param0, []); - assert (stk_isequal_tolrel (param2, param1, 1e-2)) -***** 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)) -***** 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)) -***** 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); -***** error param = stk_param_estim (model, xi, zi, param0, log(eps), @stk_param_relik, pi); -***** 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, model.param); - assert ((all (isfinite (param))) && (length (param) == 2)); -warning: Constant-response data: the output of stk_param_estim is likely to be unreliable. -warning: param0 has nans, calling stk_param_init instead -warning: Parameter estimation is impossible with constant-response data. -12 tests, 12 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_init.m] ->>>>> /build/octave-stk-2.5.1/inst/param/estim/stk_param_init.m +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/misc/dist/stk_dist.m] +>>>>> /build/octave-stk-2.5.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 - xi = (1:10)'; zi = sin (xi); - model = stk_model ('stk_materncov52_iso'); - model.param = stk_param_init (model, xi, zi, [1; 10], false); - xt = (1:9)' + 0.5; zt = sin (xt); - zp = stk_predict (model, xi, zi, xt); - assert (sum ((zt - zp.mean) .^ 2) < 1e-3); -***** test % check equivariance of parameter estimates - f = @(x) sin (x); - xi = stk_sampling_regulargrid (10, 1); zi = stk_feval (f, xi); - shift = 1000; scale = 0.01; - model = stk_model ('stk_materncov32_iso'); - p1 = stk_param_init (model, xi, zi); - p2 = stk_param_init (model, xi, shift + scale .* zi); - assert (stk_isequal_tolabs (p2(1), p1(1) + log (scale^2), 1e-10)) - assert (stk_isequal_tolabs (p2(2), p1(2), eps)) -***** shared xi, zi, BOX, xt, zt - - f = @(x)(- (0.8 * x + sin (5 * x + 1) + 0.1 * sin (10 * x))); - DIM = 1; % Dimension of the factor space - BOX = [-1.0; 1.0]; % Factor space - - xi = stk_sampling_regulargrid (20, DIM, BOX); % Evaluation points - zi = stk_feval (f, xi); % Evaluation results - - NT = 400; % Number of points in the grid - xt = stk_sampling_regulargrid (NT, DIM, BOX); % Generate a regular grid - zt = stk_feval (f, xt); % Values of f on the grid -***** xtest % This test is known to fail in Debian buster i386 - % because of a known problem in Octave's sqp/qp functions - % http://savannah.gnu.org/bugs/?38875 - model = stk_model ('stk_materncov_iso'); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + Dx = stk_dist(x); + assert(isequal(Dx, zeros(11))); ***** test - model = stk_model ('stk_materncov_aniso'); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + Dxx = stk_dist(x, x); + assert(isequal(Dxx, zeros(11))); ***** test - model = stk_model ('stk_materncov32_iso'); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + Dxy = stk_dist(x, y); + assert(isequal(Dxy, zeros(11, 13))); ***** test - model = stk_model ('stk_materncov32_aniso'); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + Dzz = stk_dist(z, z); + assert(isequal(Dzz, zeros(7))); ***** test - model = stk_model ('stk_materncov52_iso'); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + Dxz = stk_dist(x, z); + assert(stk_isequal_tolabs(Dxz, sqrt(5)*ones(11, 7))); ***** test - model = stk_model ('stk_materncov52_aniso'); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) + 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 - model = stk_model ('stk_gausscov_iso'); - [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); - model.param = stk_param_estim (model, xi, zi, param0); - zp = stk_predict (model, xi, zi, xt); - assert (max ((zp.mean - zt) .^ 2) < 1e-3) -warning: matrix singular to machine precision, rcond = 6.3619e-19 + 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/octave-stk-2.5.1/inst/misc/dist/stk_mindist.m ***** 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 = 2.11204e-18 -***** 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) -***** 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); -***** error % Heteroscedastic case / do_estim_lnv = true - 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, true); -***** 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. -***** 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. -16 tests, 16 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_gls.m] ->>>>> /build/octave-stk-2.5.1/inst/param/estim/stk_param_gls.m -***** shared xi, zi, model, beta, sigma2 - xi = (1:10)'; zi = sin (xi); - model = stk_model ('stk_materncov52_iso'); - model.param = [0.0 0.0]; + d = 3; x = rand(7, d); + md1 = stk_mindist(x); + md2 = stk_mindist(stk_dataframe(x)); + assert(stk_isequal_tolabs(md1, md2)); ***** test - model.lm = stk_lm_constant (); - [beta, sigma2] = stk_param_gls (model, xi, zi); -***** assert (stk_isequal_tolabs (beta, 0.1346064, 1e-6)) -***** assert (stk_isequal_tolabs (sigma2, 0.4295288, 1e-6)) + for nc = [0 5 10], + x = zeros(0, nc); + d = stk_mindist(x); + assert(isempty(d)); + end ***** test - model.lm = stk_lm_affine (); - [beta, sigma2] = stk_param_gls (model, xi, zi); -***** assert (stk_isequal_tolabs (beta, [0.4728342; -0.0614960], 1e-6)) -***** assert (stk_isequal_tolabs (sigma2, 0.4559431, 1e-6)) + for nc = [0 5 10], + x = rand(1, nc); + d = stk_mindist(x); + assert(isempty(d)); + end ***** test - model.lm = stk_lm_null (); - [beta, sigma2] = stk_param_gls (model, xi, zi); -***** assert (isequal (beta, zeros (0, 1))) -***** assert (stk_isequal_tolabs (sigma2, 0.3977993, 1e-6)) -9 tests, 9 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_init_lnv.m] ->>>>> /build/octave-stk-2.5.1/inst/param/estim/stk_param_init_lnv.m + for nr = [2 5 10], + x = zeros(nr, 0); + d = stk_mindist(x); + assert(isequal(d, 0.0)); + end ***** 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]); - lnv = stk_param_init_lnv (model, xi, zi); + nrep = 20; + TOL_REL = 1e-15; - assert ((isscalar (lnv)) && (lnv > -30) && (lnv < 30)); -1 test, 1 passed, 0 known failure, 0 skipped -[inst/param/estim/stk_param_relik.m] ->>>>> /build/octave-stk-2.5.1/inst/param/estim/stk_param_relik.m -***** shared f, xi, zi, NI, model, J, dJ1, dJ2 + for irep = 1:nrep, - 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); + n = 2 + floor(rand * 10); + d = 1 + floor(rand * 10); + x = rand(n, d); + z = stk_mindist(x); - SIGMA2 = 1.0; % variance parameter - NU = 4.0; % regularity parameter - RHO1 = 0.4; % scale (range) parameter + assert(isequal(size(d), [1, 1])); + assert(~isnan(d)); + assert(~isinf(d)); - model = stk_model('stk_materncov_aniso'); - model.param = log([SIGMA2; NU; 1/RHO1 * ones(DIM, 1)]); -***** error [J, dJ1, dJ2] = stk_param_relik (); -***** error [J, dJ1, dJ2] = stk_param_relik (model); -***** error [J, dJ1, dJ2] = stk_param_relik (model, xi); -***** test [J, dJ1, dJ2] = stk_param_relik (model, xi, zi); -***** error [J, dJ1, dJ2] = stk_param_relik (model, xi, zi, pi); + % check the result + mindist = Inf; + for i = 1:(n-1), + for j = (i+1):n, + mindist = min(mindist, norm(x(i,:) - x(j,:))); + end + end + assert(abs(z - mindist) <= TOL_REL * mindist); + + end +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/core/@stk_kreq_qr/stk_kreq_qr.m] +>>>>> /build/octave-stk-2.5.1/inst/core/@stk_kreq_qr/stk_kreq_qr.m +***** test stk_test_class ('stk_kreq_qr') +1 test, 1 passed, 0 known failure, 0 skipped +[inst/core/@stk_kreq_qr/stk_update.m] +>>>>> /build/octave-stk-2.5.1/inst/core/@stk_kreq_qr/stk_update.m +***** shared model, x, y + model = stk_model ('stk_materncov32_iso', 1); + model.param = log ([1.0; 2.8]); + x = [1.2; 0.3; -1.9]; + y = 0.0; ***** test - TOL_REL = 0.01; - assert (stk_isequal_tolrel (J, 21.6, TOL_REL)); - assert (stk_isequal_tolrel (dJ1, [4.387 -0.1803 0.7917 0.1392 2.580]', TOL_REL)); - assert (isnan (dJ2)); -***** 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 - [ARL, dARL_dtheta, dARL_dLNV] = stk_param_relik (model, xi, zi); - assert (stk_isequal_tolrel (ARL, 6.327, TOL_REL)); - assert (stk_isequal_tolrel (dARL_dtheta, [0.268 0.0149 -0.636]', TOL_REL)); - assert (stk_isequal_tolrel (dARL_dLNV, -1.581e-04, TOL_REL)); -***** test % Same 1D test with simple kriging - model.lm = stk_lm_null; - [ARL, dARL_dtheta, dARL_dLNV] = stk_param_relik (model, xi, zi); - assert (stk_isequal_tolrel (ARL, 7.475, TOL_REL)); - assert (stk_isequal_tolrel (dARL_dtheta, [0.765 0.0238 -1.019]', TOL_REL)); - assert (stk_isequal_tolrel (dARL_dLNV, 3.0517e-03, TOL_REL)); -***** test % Check the gradient on a 2D test case + kreqA = stk_kreq_qr (model, x); + [Kii, Pi] = stk_make_matcov (model, x); + kreqB = stk_kreq_qr (model, x(1)); + kreqB = stk_update (kreqB, Kii(2, 2), Kii(2, 1), Pi(2)); + kreqB = stk_update (kreqB, Kii(3, 3), Kii(3, [1 2]), Pi(3)); + assert (stk_isequal_tolabs (kreqA, kreqB, 3 * eps)) +***** test + kreqA = stk_kreq_qr (model, x, y); + [Kii, Pi] = stk_make_matcov (model, x); + [Kti, Pt] = stk_make_matcov (model, y, x); + kreqB = stk_kreq_qr (model, x(1), y); + kreqB = stk_update (kreqB, Kii(2, 2), Kii(2, 1), Pi(2), Kti(2)); + kreqB = stk_update (kreqB, Kii(3, 3), Kii(3, [1 2]), Pi(3), Kti(3)); + assert (stk_isequal_tolabs (kreqA, kreqB, 3 * eps)) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/core/stk_ortho_func.m] +>>>>> /build/octave-stk-2.5.1/inst/core/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); +***** error P = stk_ortho_func (model, x, pi); +***** 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 +10 tests, 10 passed, 0 known failure, 0 skipped +[inst/core/stk_predict.m] +>>>>> /build/octave-stk-2.5.1/inst/core/stk_predict.m +***** shared n, m, model, x0, x_obs, z_obs, x_prd, y_prd1, idx_obs, idx_prd - f = @stk_testfun_braninhoo; - DIM = 2; - BOX = [[-5; 10], [0; 15]]; - NI = 20; - TOL_REL = 1e-2; - DELTA = 1e-6; + n = 10; % number of observations + m = n + 1; % number of predictions + d = 1; % dimension of the input space - model = stk_model ('stk_materncov52_iso', DIM); - xi = stk_sampling_halton_rr2 (NI, DIM, BOX); - zi = stk_feval (f, xi); + x0 = stk_sampling_regulargrid(n+m, d, [0; pi]); - model.param = [1 1]; - [r1 dr] = stk_param_relik (model, xi, zi); + idx_obs = (2:2:(n+m-1))'; + idx_prd = (1:2:(n+m))'; - model.param = model.param + DELTA * [0 1]; - r2 = stk_param_relik (model, xi, zi); + x_obs = x0(idx_obs); + z_obs = sin (double (x_obs)); + x_prd = x0(idx_prd); - assert (stk_isequal_tolrel (dr(2), (r2 - r1) / DELTA, TOL_REL)); -9 tests, 9 passed, 0 known failure, 0 skipped + model = stk_model('stk_materncov32_iso'); + model.param = log ([1.0; 2.1]); +***** error y_prd1 = stk_predict(); +***** error y_prd1 = stk_predict(model); +***** error y_prd1 = stk_predict(model, x_obs); +***** error y_prd1 = stk_predict(model, x_obs, z_obs); +***** test y_prd1 = stk_predict(model, x_obs, z_obs, x_prd); +***** error y_prd1 = stk_predict(model, x_obs, z_obs, x_prd, 0); +***** 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_model.m] >>>>> /build/octave-stk-2.5.1/inst/core/stk_model.m ***** test model = stk_model(); @@ -6733,33 +5873,49 @@ ***** 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_kreq_qr/stk_kreq_qr.m] ->>>>> /build/octave-stk-2.5.1/inst/core/@stk_kreq_qr/stk_kreq_qr.m -***** test stk_test_class ('stk_kreq_qr') -1 test, 1 passed, 0 known failure, 0 skipped -[inst/core/@stk_kreq_qr/stk_update.m] ->>>>> /build/octave-stk-2.5.1/inst/core/@stk_kreq_qr/stk_update.m -***** shared model, x, y - model = stk_model ('stk_materncov32_iso', 1); - model.param = log ([1.0; 2.8]); - x = [1.2; 0.3; -1.9]; - y = 0.0; -***** test - kreqA = stk_kreq_qr (model, x); - [Kii, Pi] = stk_make_matcov (model, x); - kreqB = stk_kreq_qr (model, x(1)); - kreqB = stk_update (kreqB, Kii(2, 2), Kii(2, 1), Pi(2)); - kreqB = stk_update (kreqB, Kii(3, 3), Kii(3, [1 2]), Pi(3)); - assert (stk_isequal_tolabs (kreqA, kreqB, 3 * eps)) +[inst/core/stk_model_update.m] +>>>>> /build/octave-stk-2.5.1/inst/core/stk_model_update.m ***** test - kreqA = stk_kreq_qr (model, x, y); - [Kii, Pi] = stk_make_matcov (model, x); - [Kti, Pt] = stk_make_matcov (model, y, x); - kreqB = stk_kreq_qr (model, x(1), y); - kreqB = stk_update (kreqB, Kii(2, 2), Kii(2, 1), Pi(2), Kti(2)); - kreqB = stk_update (kreqB, Kii(3, 3), Kii(3, [1 2]), Pi(3), Kti(3)); - assert (stk_isequal_tolabs (kreqA, kreqB, 3 * eps)) -2 tests, 2 passed, 0 known failure, 0 skipped + x1 = (linspace (0, 1, 15))'; z1 = sin (x1); + x2 = (linspace (2, 3, 15))'; z2 = sin (x2); + xt = (linspace (1, 2, 15))'; zt = sin (xt); + + % Prior model + M0 = stk_model ('stk_materncov32_iso'); + M0.param = log ([1.0; 2.1]); + + M1 = stk_model_update (M0, x1, z1); + M1 = stk_model_update (M1, x2, z2); % this calls @stk_model_gpposterior/... + zp1 = stk_predict (M1, xt); + + M2 = stk_model_gpposterior (M0, [x1; x2], [z1; z2]); + zp2 = stk_predict (M2, xt); + + assert (stk_isequal_tolabs (double (zp2 - zp1), zeros (15, 2), 1e-10)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/core/@stk_model_gpposterior/stk_model_gpposterior.m] +>>>>> /build/octave-stk-2.5.1/inst/core/@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/core/@stk_model_gpposterior/get.m] >>>>> /build/octave-stk-2.5.1/inst/core/@stk_model_gpposterior/get.m ***** shared M_post @@ -6772,6 +5928,62 @@ ***** error value = get (M_post, 'dudule'); ***** test value = get (M_post, 'prior_model'); 3 tests, 3 passed, 0 known failure, 0 skipped +[inst/core/@stk_model_gpposterior/stk_predict.m] +>>>>> /build/octave-stk-2.5.1/inst/core/@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]); +***** error y_prd = stk_predict (M_post, x_prd, 0); +***** 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, :))); +10 tests, 10 passed, 0 known failure, 0 skipped [inst/core/@stk_model_gpposterior/set.m] >>>>> /build/octave-stk-2.5.1/inst/core/@stk_model_gpposterior/set.m ***** shared M_post @@ -6835,29 +6047,24 @@ 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/core/@stk_model_gpposterior/stk_model_gpposterior.m] ->>>>> /build/octave-stk-2.5.1/inst/core/@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))'; +[inst/core/@stk_model_gpposterior/subsref.m] +>>>>> /build/octave-stk-2.5.1/inst/core/@stk_model_gpposterior/subsref.m +***** shared M_post, n + n = 15; + x_obs = (linspace (0, pi, n))'; 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 + + M_post = stk_model_gpposterior (M_prior, x_obs, z_obs); +***** assert (isstruct (M_post.prior_model)); +***** assert (isequal (size (M_post.input_data), [n 1])); +***** assert (isequal (size (M_post.output_data), [n 1])); +***** assert (isa (M_post.kreq, 'stk_kreq_qr')); +***** error M_post(1); +***** error M_post{1}; +6 tests, 6 passed, 0 known failure, 0 skipped [inst/core/@stk_model_gpposterior/stk_predict_leaveoneout.m] >>>>> /build/octave-stk-2.5.1/inst/core/@stk_model_gpposterior/stk_predict_leaveoneout.m ***** test % Check virtual Leave-One-Out formula @@ -6895,100 +6102,6 @@ end end 1 test, 1 passed, 0 known failure, 0 skipped -[inst/core/@stk_model_gpposterior/stk_predict.m] ->>>>> /build/octave-stk-2.5.1/inst/core/@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]); -***** error y_prd = stk_predict (M_post, x_prd, 0); -***** 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, :))); -10 tests, 10 passed, 0 known failure, 0 skipped -[inst/core/@stk_model_gpposterior/subsref.m] ->>>>> /build/octave-stk-2.5.1/inst/core/@stk_model_gpposterior/subsref.m -***** shared M_post, n - n = 15; - x_obs = (linspace (0, pi, n))'; - 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); -***** assert (isstruct (M_post.prior_model)); -***** assert (isequal (size (M_post.input_data), [n 1])); -***** assert (isequal (size (M_post.output_data), [n 1])); -***** assert (isa (M_post.kreq, 'stk_kreq_qr')); -***** error M_post(1); -***** error M_post{1}; -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/core/stk_model_update.m] ->>>>> /build/octave-stk-2.5.1/inst/core/stk_model_update.m -***** test - x1 = (linspace (0, 1, 15))'; z1 = sin (x1); - x2 = (linspace (2, 3, 15))'; z2 = sin (x2); - xt = (linspace (1, 2, 15))'; zt = sin (xt); - - % Prior model - M0 = stk_model ('stk_materncov32_iso'); - M0.param = log ([1.0; 2.1]); - - M1 = stk_model_update (M0, x1, z1); - M1 = stk_model_update (M1, x2, z2); % this calls @stk_model_gpposterior/... - zp1 = stk_predict (M1, xt); - - M2 = stk_model_gpposterior (M0, [x1; x2], [z1; z2]); - zp2 = stk_predict (M2, xt); - - assert (stk_isequal_tolabs (double (zp2 - zp1), zeros (15, 2), 1e-10)) -1 test, 1 passed, 0 known failure, 0 skipped [inst/core/stk_predict_leaveoneout.m] >>>>> /build/octave-stk-2.5.1/inst/core/stk_predict_leaveoneout.m ***** shared n, x_obs, z_obs, model @@ -7028,58 +6141,6 @@ assert (isequal (loo_res.colnames, {'residuals', 'norm_res'})); assert (all (isfinite (loo_res(:)))); 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/core/stk_predict.m] ->>>>> /build/octave-stk-2.5.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); -***** error y_prd1 = stk_predict(model, x_obs); -***** error y_prd1 = stk_predict(model, x_obs, z_obs); -***** test y_prd1 = stk_predict(model, x_obs, z_obs, x_prd); -***** error y_prd1 = stk_predict(model, x_obs, z_obs, x_prd, 0); -***** 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/octave-stk-2.5.1/inst/core/stk_make_matcov.m ***** shared model, model2, x0, x1, n0, n1, d, Ka, Kb, Kc, Pa, Pb, Pc @@ -7109,176 +6170,17 @@ ***** assert (isequal (Pa, Pb)); ***** assert (isequal (Pa, Pc)); 18 tests, 18 passed, 0 known failure, 0 skipped -[inst/core/stk_ortho_func.m] ->>>>> /build/octave-stk-2.5.1/inst/core/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); -***** error P = stk_ortho_func (model, x, pi); -***** 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 -10 tests, 10 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb08.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb08.m -***** test stk_example_kb08; close all; - -#========================# -# stk_example_kb08 # -#========================# - -'stk_example_kb08' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb08.m - - 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 -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_kb02.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb02.m -***** test stk_example_kb02; close all; - -#========================# -# stk_example_kb02 # -#========================# - -'stk_example_kb02' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb02.m - - STK_EXAMPLE_KB02 Ordinary kriging in 1D with parameter estimation - - This example shows how to estimate covariance parameters and compute - ordinary kriging predictions on a one-dimensional noiseless dataset. - - The model and data are the same as in stk_example_kb01, but this time the - parameters of the covariance function are estimated using the Restricted - Maximum Likelihood (ReML) method. - - See also: stk_example_kb01, stk_example_kb02n - - -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. - -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. -model = - - scalar structure containing the fields: - - covariance_type = @stk_materncov_iso - lm = - - - - dim = 1 - param = - - -0.21078 - 2.30259 - 0.75619 - - lognoisevariance = -Inf - - - True function and observed data - - 1.5 |-+ - | ***G** +--------------------+ - | **** *** |***?***True function| - 1 |-+ ** ** +---G---Observations-+ - | *** ** - | ** ** - 0.5 |-+ ** ** *** - | G* ** **** **G** - | ** ** G** *** - 0 |** ** ** *** - | ** ** ** - | ** ** ** - -0.5 |-+ ** ** - | ** ** - | G* ** - -1 |-+ *** *** - | ****** - | + + + + - -1.5 |------------------------------------------------------------------- - -1 -0.5 0 0.5 1 - -1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb07.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb07.m -***** test stk_example_kb07; close all; - -#========================# -# stk_example_kb07 # -#========================# - -'stk_example_kb07' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb07.m - - STK_EXAMPLE_KB07 Simulation of sample paths from a Matern process - - -Additional help for built-in functions and operators is -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_kb02n.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb02n.m -***** test stk_example_kb02n; close all; - -#=========================# -# stk_example_kb02n # -#=========================# - -'stk_example_kb02n' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb02n.m - - STK_EXAMPLE_KB02N Noisy ordinary kriging in 1D with parameter estimation +[inst/examples/03_miscellaneous/stk_example_misc03.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/03_miscellaneous/stk_example_misc03.m +***** test stk_example_misc03; close all; - This example shows how to estimate covariance parameters and compute - ordinary kriging predictions on a one-dimensional noisy dataset. +#==========================# +# stk_example_misc03 # +#==========================# - 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. +'stk_example_misc03' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/03_miscellaneous/stk_example_misc03.m - See also: stk_example_kb01n, stk_example_kb02 + STK_EXAMPLE_MISC03 How to deal with (known) seasonality Additional help for built-in functions and operators is @@ -7292,7 +6194,7 @@ scalar structure containing the fields: - covariance_type = @stk_materncov_iso + covariance_type = @stk_materncov52_iso lm = @@ -7300,199 +6202,49 @@ dim = 1 param = - -0.098610 - 2.302585 - 0.613435 - - lognoisevariance = -3.0915 - -True noise variance = 0.0400 -Estimated noise variance = 0.0454 - - - 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 ** *** *** - 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/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb06.m -***** test stk_example_kb06; close all; - -#========================# -# stk_example_kb06 # -#========================# - -'stk_example_kb06' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb06.m - - STK_EXAMPLE_KB06 Ordinary kriging VS kriging with a linear trend - - The same dataset is analyzed using two variants of kriging. - - The left panel shows the result of ordinary kriging, in other words, Gaussian - process interpolation assuming a constant (but unknown) mean. The right panel - shows the result of adding a linear trend in the mean of the Gaussian process. - - The difference with the left plot is clear in extrapolation: the first predic- - tor exhibits a "mean reverting" behaviour, while the second one captures an - increasing trend in the data. - - -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_kb09.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.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/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb01n.m -***** test stk_example_kb01n; close all; - -#=========================# -# stk_example_kb01n # -#=========================# - -'stk_example_kb01n' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb01n.m - - STK_EXAMPLE_KB01N Ordinary kriging in 1D, with noisy data - - This example shows how to compute ordinary kriging predictions on a - one-dimensional noisy dataset. - - The Gaussian Process (GP) prior is the same as in stk_example_kb01. - - The observation noise is Gaussian and homoscedastic (constant variance). - Its variance is assumed to be known. - - Note that the kriging predictor, which is the posterior mean of the GP, - does NOT interpolate the data in this noisy example. - - See also: stk_example_kb01, stk_example_kb02n + 1.6693 + -1.7784 + lognoisevariance = -4.7950 -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. - -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. -model = +model2 = scalar structure containing the fields: - covariance_type = @stk_materncov_iso + covariance_type = @stk_materncov52_iso lm = - +@(t) [ones(length (t), 1), sin(2 * pi * t / T0), cos(2 * pi * t / T0)] dim = 1 param = - -0.69315 - 1.38629 - 0.91629 + -6.9502 + -2.6937 - lognoisevariance = -3.2189 + lognoisevariance = -4.7625 - - 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 **** - 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_kb03.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb03.m -***** test stk_example_kb03; close all; +[inst/examples/03_miscellaneous/stk_example_misc01.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/03_miscellaneous/stk_example_misc01.m +***** test stk_example_misc01; close all; -#========================# -# stk_example_kb03 # -#========================# +#==========================# +# stk_example_misc01 # +#==========================# -'stk_example_kb03' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb03.m +'stk_example_misc01' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/03_miscellaneous/stk_example_misc01.m - STK_EXAMPLE_KB03 Ordinary kriging in 2D + STK_EXAMPLE_MISC01 Several correlation functions from the Matern family - An anisotropic Matern covariance function is used for the Gaussian Process - (GP) prior. The parameters of this covariance function (variance, regularity - and ranges) are estimated using the Restricted Maximum Likelihood (ReML) - method. + The 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 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 Matern covariance function tends to the Gaussian correlation function when + its regularity (smoothness) parameter tends to infinity. - The function is sampled on a space-filling Latin Hypercube design, and the - data is assumed to be noiseless. + See also: stk_materncov_iso, stk_materncov_aniso Additional help for built-in functions and operators is @@ -7502,40 +6254,29 @@ 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/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb01.m -***** test stk_example_kb01; close all; - -#========================# -# stk_example_kb01 # -#========================# - -'stk_example_kb01' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb01.m - - STK_EXAMPLE_KB01 Ordinary kriging in 1D, with noiseless data +[inst/examples/03_miscellaneous/stk_example_misc02.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/03_miscellaneous/stk_example_misc02.m +***** test stk_example_misc02; close all; - This example shows how to compute ordinary kriging predictions on a - one-dimensional noiseless dataset. +#==========================# +# stk_example_misc02 # +#==========================# - The word 'ordinary' indicates that the mean function of the GP prior is - assumed to be constant and unknown. +'stk_example_misc02' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/03_miscellaneous/stk_example_misc02.m - A Matern covariance function is used for the Gaussian Process (GP) prior. - The parameters of this covariance function are assumed to be known (i.e., - no parameter estimation is performed here). + STK_EXAMPLE_MISC02 How to use priors on the covariance parameters - Note that the kriging predictor, which is the posterior mean of the GP, - interpolates the data in this noiseless example. + A Matern covariance in dimension one is considered as an example. A Gaussian + prior is used for all three parameters: log-variance, log-regularity and log- + inverse-range. The corresponding parameter estimates are Maximum A Posteriori + (MAP) estimates or, more precisely, Restricted MAP (ReMAP) estimates. - See also: stk_example_kb01n, stk_example_kb02 + Several values for the variance of the prior are successively considered, to + illustrate the effect of this prior variance on the parameter estimates. When + the variance is small, the MAP estimate is close to the mode of the prior. On + the other hand, when the variance is large, the prior becomes "flat" and the + MAP estimate is close to the ReML estimate (see figure b). Additional help for built-in functions and operators is @@ -7545,87 +6286,31 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. -model = - - scalar structure containing the fields: - - covariance_type = @stk_materncov_iso - lm = - - - - dim = 1 - param = - - -0.69315 - 1.38629 - 0.91629 - - lognoisevariance = -Inf - - - True function and observed data + prior std = 10.00 prior std = 1.00 - 1.5 |-+ - | ***G** +--------------------+ - | *** *** |***?***True function| - 1 |-+ ** ** +---G---Observations-+ - | ** *** - | ** ** - 0.5 |-+** ** *****G - | *G ** *** **** - 0 |** ** G* ** - |* ** ** *** - | ** ** ** - -0.5 |-+ ** ** * - | ** ** - | G* ** - -1 |-+ ** ** - | ****** - | + + + + - -1.5 |----------------------------------------------------------- - -1 -0.5 0 0.5 1 - input variable x + 3 |-+ 4 |-+ #### + |%%## ####%%%% 3 |-+# ##%%%%% + 2 |-+&&&%&&&%# #%&&&&&&&& 2 |-+&&% #%%% %%&&&&&&& + 1 |-+X==GG==&&%###&&&XXXXXX& 1 |-+X&&GG==&&% &&&&XXXXX& + |====predicted output z=== |======&&====G=G========== + 0 |-+&&& %&&&&&&&&&&XXXXXX& 0 |-+&&& %&&&&&&&&&&XXXXXX& + -1 |-+%# #### #%&&&&&&&& -1 |-+%# #%&&&&&&&& + |# + + + ##+####+ -2 |-+ + + + ##+%%%%+ + -2 |------------------------- -3 |------------------------- + 0 prior std = 0.20.8 1 0 prior std = 0.01.8 1 + input x input x + 6 |-+ 6 |-+ + | ### | # + 4 |-+ #%%%%%% 4 |-+ #%%%%% + 2 |-+%# #&&% %&&&&&&&& 2 |-+ %%# #&&&&&&&& + |X&&=predicted output z=== |&&&&=GG=====#%=========== + 0 |-+==& %&&=G=G&&&&XXXXX& 0 |-+=== %&=G=G&&&&&&XXX& + -2 |-+&% #%&&&&&&& -2 |-+&# #%%&&&&& + |%# + + + +#%%%+ |## + + + +###%+ + -4 |------------------------- -4 |------------------------- + 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/01_kriging_basics/stk_example_kb05.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb05.m -***** test stk_example_kb05; close all; - -#========================# -# stk_example_kb05 # -#========================# - -'stk_example_kb05' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb05.m - - STK_EXAMPLE_KB05 Generation of conditioned sample paths - - A Matern Gaussian process model is used, with constant but unknown mean - (ordinary kriging) and known covariance parameters. - - Given noiseless observations from the unknown function, a batch of conditioned - sample paths is drawn using the "conditioning by kriging" technique. In short, - this means that unconditioned sample path are simulated first (using - stk_generate_samplepaths), and then conditioned on the observations by kriging - (using stk_conditioning). - - Note: in this example, for pedagogical purposes, conditioned samplepaths are - simulated in two steps: first, unconditioned samplepaths are simulated; - second, conditioned samplepaths are obtained using conditioning by kriging. - In practice, these two steps can be carried out all at once using - stk_generate_samplepath (see, e.g., stk_example_kb09). - - See also: stk_generate_samplepaths, stk_conditioning, stk_example_kb09 - - -Additional help for built-in functions and operators is -available in the online version of the manual. Use the command -'doc ' to search the manual index. - -Help and information about Octave is also available on the WWW -at https://www.octave.org and via the help@octave.org -mailing list. -1 test, 1 passed, 0 known failure, 0 skipped [inst/examples/03_miscellaneous/stk_example_misc04.m] >>>>> /build/octave-stk-2.5.1/inst/examples/03_miscellaneous/stk_example_misc04.m ***** test stk_example_misc04; close all; @@ -7675,40 +6360,48 @@ mailing list. simulated Pareto fronts Proba. of being dominated - |------------------------| 4000 +---++--+-+--++---+ +||100% - |%+ + %$+= @#$&*@@*& | | | | | | | | | || - 2000 |%+ %$ = @#$&*@@*& +-| + + + + + + + + || - |% %$ = @#$&*@@*&& | | | || - |% %$ = @#$&*@@* &&&| 2000 +---+ +---+ || - 1000 |%%%%%%%%%%%%%%%%%@%%%%%%| | | +||75% - | %$ ==@#@&*@======| | | || - 0 |-+ %$########@######| | | || - | %$$$$$$$$$@$$$$$$| 0 +---+ +---+ || - | $&*@***second objective | +||50% - -1000 |-+ $& @@@@@@@| -2000 +---+ +---+ || - | $& @ | | | || - -2000 |-+ $& @@@@@@@| | | || - | $& | | | || - | $& | -4000 +---+ +---+ +||25% - -3000 |-+ $&&&&&&&&&| | | || - | | + + + + + + + + || - -4000 |-+ +-| | | | | | | | | || - | + + + + + + | -6000 +---++--+-+--++---+ || - |------------------------| -4-30-20-1000100203000+||0% - -300-200-1000 0 1002000 first objective + |------------------------| 3000 +---++--+-+--++---+ +||100% + | &$+ % #&$@ =&+## + + | | | | | | | | | || + | &$ %%%&%@%%%%%%%%%%%%%| + + + + + + + + || + 2000 |-&$ #&$@ =& ## +-| 2000 +---+ +---+ || + | &$&&&&&&$@&=&&##&&&&&&&| | | || + | $ #&%@%=&%#%%%%%%%%| | | +||75% + 1000 |-+$ #&@@@=&@#@@@@@@@@| 1000 +---+ +---+ || + | $ #&$@ =& ## | | | || + | $ #&$@@@@@@@@@@@@@@| | | || + 0 |-+$ #&&&&&&&&&&&&&second objective---+ +---+ +||50% + | $$$$$$$$$$$$$$$$$$$$$$| | | || + | = ##$*##&&&&&&&&&&&| | | || + | = $* | -1000 +---+ +---+ || + -1000 |-+========*$$$$$$$$$$$$$| | | || + | **************| | | +||25% + | | -2000 +---+ +---+ || + -2000 |-+ +-| + + + + + + + + || + | | | | | | | | | | || + | + + + + + + | -3000 +---++--+-+--++---+ || + |------------------------| -3-20-1000100200304000+||0% + -200-10000 100020003000 first objective 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/03_miscellaneous/stk_example_misc03.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/03_miscellaneous/stk_example_misc03.m -***** test stk_example_misc03; close all; +[inst/examples/02_design_of_experiments/stk_example_doe01.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/02_design_of_experiments/stk_example_doe01.m +***** test stk_example_doe01; close all; -#==========================# -# stk_example_misc03 # -#==========================# +#=========================# +# stk_example_doe01 # +#=========================# -'stk_example_misc03' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/03_miscellaneous/stk_example_misc03.m +'stk_example_doe01' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/02_design_of_experiments/stk_example_doe01.m - STK_EXAMPLE_MISC03 How to deal with (known) seasonality + STK_EXAMPLE_DOE01 Examples of two-dimensional designs + + All designs are constructed on the hyper-rectangle BOX = [0; 2] x [0; 4]. + + Examples of the following designs are shown: + a) Regular grid --> stk_sampling_regulargrid, + b) "Maximin" latin hypercube sample --> stk_sampling_maximinlhs, + c) RR2-scrambled Halton sequence --> stk_sampling_halton_rr2, + d) Uniformly distributed random sample --> stk_sampling_randunif. Additional help for built-in functions and operators is @@ -7718,93 +6411,39 @@ 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 = - - 1.6631 - -1.7871 - - lognoisevariance = -4.7448 - -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.55317 - -0.95617 - - lognoisevariance = -4.7395 - 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/03_miscellaneous/stk_example_misc01.m] ->>>>> /build/octave-stk-2.5.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/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.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_doe02.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/02_design_of_experiments/stk_example_doe02.m +***** test stk_example_doe02; close all; - See also: stk_materncov_iso, stk_materncov_aniso +#=========================# +# stk_example_doe02 # +#=========================# +'stk_example_doe02' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/02_design_of_experiments/stk_example_doe02.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_DOE02 "Sequential Maximin" design -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_misc02.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/03_miscellaneous/stk_example_misc02.m -***** test stk_example_misc02; close all; + In this example, a two-dimensional space-filling design is progressively + enriched with new points using a "sequential maximin" approach. More + precisely, the k-th point X(k, :) is selected to maximize the distance to the + set of all previously selected points X(1, :), X(2, :), ..., X(k-1, :). -#==========================# -# stk_example_misc02 # -#==========================# + NOTES: -'stk_example_misc02' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/03_miscellaneous/stk_example_misc02.m + * The resulting design is NOT optimal with respect to the maximin criterion + (separation distance). - STK_EXAMPLE_MISC02 How to use priors on the covariance parameters + * This procedure is not truly a *sequential* design procedure, since the + choice of the k-th point X(k, :) does NOT depend on the response at the + previously selected locations X(i, :), i < k. - 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. + REFERENCE - 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). + [1] Emmanuel Vazquez and Julien Bect, "Sequential search based on kriging: + convergence analysis of some algorithms", In: ISI - 58th World + Statistics Congress of the International Statistical Institute (ISI'11), + Dublin, Ireland, August 21-26, 2011. Additional help for built-in functions and operators is @@ -7814,29 +6453,245 @@ Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. - prior std = 10.00 prior std = 1.00 - 3 |-+ 4 |-+ #### - |%%## ####%%%% 3 |-+# ##%%%%% - 2 |-+&&&%&&&%# #%&&&&&&&& 2 |-+&&% #%%% %%&&&&&&& - 1 |-+X==GG==&&%###&&&XXXXXX& 1 |-+X&&GG==&&% &&&&XXXXX& - |====predicted output z=== |======&&====G=G========== - 0 |-+&&& %&&&&&&&&&&XXXXXX& 0 |-+&&& %&&&&&&&&&&XXXXXX& - -1 |-+%# #### #%&&&&&&&& -1 |-+%# #%&&&&&&&& - |# + + + ##+####+ -2 |-+ + + + ##+%%%%+ - -2 |------------------------- -3 |------------------------- - 0 prior std = 0.20.8 1 0 prior std = 0.01.8 1 - input x input x - 6 |-+ 6 |-+ - | ### | # - 4 |-+ #%%%%%% 4 |-+ #%%%%% - 2 |-+%# #&&% %&&&&&&&& 2 |-+ %%# #&&&&&&&& - |X&&=predicted output z=== |&&&&=GG=====#%=========== - 0 |-+==& %&&=G=G&&&&XXXXX& 0 |-+=== %&=G=G&&&&&&XXX& - -2 |-+&% #%&&&&&&& -2 |-+&# #%%&&&&& - |%# + + + +#%%%+ |## + + + +###%+ - -4 |------------------------- -4 |------------------------- - 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 + n = 10, fd = 3.54e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F +-| + | | + | | + 0.4 |-+ F +-| + | | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 11, fd = 3.31e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F +-| + | | + | | + 0.4 |-+ F +-| + | | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 12, fd = 2.79e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F +-| + | | + | | + 0.4 |-+ F +-| + | F | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 13, fd = 2.61e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F +-| + | | + | | + 0.4 |-+ F +-| + | F | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 14, fd = 2.58e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F +-| + | | + | | + 0.4 |-+ F +-| + | F | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 15, fd = 2.47e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F F +-| + | | + | | + 0.4 |-+ F +-| + | F | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 16, fd = 2.36e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F F +-| + | | + | | + 0.4 |-+ F +-| + | F | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 17, fd = 2.20e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F F +-| + | | + | | + 0.4 |-+ F +-| + | F | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 18, fd = 2.12e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F F +-| + | | + | | + 0.4 |-+ F +-| + | F | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 + + + n = 19, fd = 2.11e-01 + + + 1 |---------------------------------------------------------------------| + | + + + + | + | F | + 0.8 |-+ +-| + | F | + | | + | F | + 0.6 |-+ F F +-| + | | + | | + 0.4 |-+ F +-| + | F | + | | + | F | + 0.2 |-+ +-| + | F F | + | + + + + | + 0 |---------------------------------------------------------------------| + 0 0.2 0.4 0.6 0.8 1 1 test, 1 passed, 0 known failure, 0 skipped [inst/examples/02_design_of_experiments/stk_example_doe03.m] @@ -8127,288 +6982,6 @@ Number of evaluations: 3 + 9 = 12. 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/02_design_of_experiments/stk_example_doe02.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/02_design_of_experiments/stk_example_doe02.m -***** test stk_example_doe02; close all; - -#=========================# -# stk_example_doe02 # -#=========================# - -'stk_example_doe02' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/02_design_of_experiments/stk_example_doe02.m - - STK_EXAMPLE_DOE02 "Sequential Maximin" design - - In this example, a two-dimensional space-filling design is progressively - enriched with new points using a "sequential maximin" approach. More - precisely, the k-th point X(k, :) is selected to maximize the distance to the - set of all previously selected points X(1, :), X(2, :), ..., X(k-1, :). - - NOTES: - - * The resulting design is NOT optimal with respect to the maximin criterion - (separation distance). - - * This procedure is not truly a *sequential* design procedure, since the - choice of the k-th point X(k, :) does NOT depend on the response at the - previously selected locations X(i, :), i < k. - - REFERENCE - - [1] Emmanuel Vazquez and Julien Bect, "Sequential search based on kriging: - convergence analysis of some algorithms", In: ISI - 58th World - Statistics Congress of the International Statistical Institute (ISI'11), - Dublin, Ireland, August 21-26, 2011. - - -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. - - n = 10, fd = 3.19e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | | - | F | - | | - 0.6 |-+ F +-| - | | - | | - 0.4 |-+ F +-| - | F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 11, fd = 3.04e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | | - | F | - | | - 0.6 |-+ F +-| - | | - | | - 0.4 |-+ F +-| - | F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 12, fd = 3.02e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | | - | F | - | | - 0.6 |-+ F +-| - | | - | | - 0.4 |-+ F +-| - | F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 13, fd = 2.69e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | | - | F | - | | - 0.6 |-+ F +-| - | | - | | - 0.4 |-+ F +-| - | F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 14, fd = 2.63e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | | - | F | - | | - 0.6 |-+ F +-| - | | - | | - 0.4 |-+ F +-| - | F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 15, fd = 2.42e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | | - | F | - | | - 0.6 |-+ F F +-| - | | - | | - 0.4 |-+ F +-| - | F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 16, fd = 2.37e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | F | - | F | - | | - 0.6 |-+ F F +-| - | | - | | - 0.4 |-+ F +-| - | F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 17, fd = 2.33e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | F | - | F | - | | - 0.6 |-+ F F +-| - | | - | | - 0.4 |-+ F +-| - | F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 18, fd = 2.27e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | F | - | F | - | | - 0.6 |-+ F F +-| - | | - | | - 0.4 |-+ F +-| - | F F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - - - n = 19, fd = 2.22e-01 - - - 1 |---------------------------------------------------------------------| - | + + + + | - | F | - 0.8 |-+ F +-| - | F | - | F | - | | - 0.6 |-+ F F +-| - | | - | | - 0.4 |-+ F +-| - | F F | - | | - | F | - 0.2 |-+ F +-| - | | - | + + + +F | - 0 |---------------------------------------------------------------------| - 0 0.2 0.4 0.6 0.8 1 - -1 test, 1 passed, 0 known failure, 0 skipped [inst/examples/02_design_of_experiments/stk_example_doe05.m] >>>>> /build/octave-stk-2.5.1/inst/examples/02_design_of_experiments/stk_example_doe05.m ***** test stk_example_doe05; close all; @@ -8441,593 +7014,564 @@ 15 |-+ - 10 |-+ ## ####%%%#### - |%%%&&&&&&&&%%%%%%%%&&&&&%%%%%%%%&&&========&&&&&&%%%## - 5 |-+&&XXXXXX&&&&&&&&&&XXX&&&&&&&&&************G***&&&&&&&%## - z 0 |-+************G**************G***XXXX&&&&&&&&===******&&&&&& - -5 |-+&&&&&&&&&&&&&&&=============&&&&&&&&%%%%###%%===&&X******* - | ######### ########## #===&&&&&==G - -10 |-+ + + + + + ======%+ + 10 |-+ ######## + | ###%%%%%%%### ####%%#### #%%========&&&&&%%%%## + 5 |-+&&&&&&&&&&&&&&&&&&&&&&&&&%%%%&====XXXX****G*XX&&&&&&%## + z 0 |-+************G******XXXXX&&&===*********X&&&=******X&&&&%## + -5 |-+XXXXXXXXX&&&&&&===*********G***XXXX&&&&&&%%&&===X*****&&&& + |%&&&&&&&&&&&%%%%&&&&&&&&&&&&&&&&&&&&&&%%## ##%===&XX****G + -10 |-+#######+# ##+%%%%%%###+ ###### + +#%======&+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.012 |-----------------------------------------------------------| - 0.01 |-+ + + + + + ** +-| - | * * | - 0.008 |-+ * *+-| - 0.006 |-+ * *+-| - 0.004 |-+ **** * *+-| - | **** ** ** * * | - 0.002 |-+ ** *** ** ** + + +** *-| + 0.06 |-----------------------------------------------------------| + 0.05 |-+ + + + + + *F*+-| + | ** * * | + 0.04 |-+ ** * * *+-| + AKG 0.03 |-+ ** * * *-| + 0.02 |-+ * ** * *-| + | ***** * * ** * | + 0.01 |-+*** *** ** ** + ****** + +** **| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 15 |-+ - 10 |-+ ## ##%%%%%%## - |%%%%&&&&&&&%%%%%%%%%&&&&%%%%%%%&&&&========&%# - 5 |-+&&XXXXXX&&&&&&&&&&XXX&&&&&&&&*************G=&%# - z 0 |-+************G**************G**=&&&&&&&&&&&&****G% - -5 |-+&&&&&&&&&&&&&&&=============&&%%%%%%%%#####%&=*G**&&%%%&&G - | ######### ########## #==********G - -10 |-+ + + + + + #G=G===%+ + 10 |-+ ######## + | ###%%%%%%%### ####%%#### #%%========&%# + 5 |-+&&&&&&&&&&&&&&&&&&&&&&&&&%%%%&====XXX*****G=&&# + z 0 |-+************G******XXXXX&&&==********XXX&&****&&# + -5 |-+XXXXXXXXX&&&&&&===*********G**XXX&&&&&&&&%%&&=**G&&%%%%&&G + |%&&&&&&&&&&&%%%%&&&&&&&&&&&&&&&&&&&&%%%### #&=G********G + -10 |-+#######+# ##+%%%%%%## + ##### + + %=G=G==%+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.005 |-----------------------------------------------------------| - | + + + + + * | - 0.004 |-+ * +-| - 0.003 |-+ * +-| - | * | - 0.002 |-+ * +-| - 0.001 |-+ ** * +-| - | + + + + + * ******| + 0.04 |-----------------------------------------------------------| + 0.035 |-+ + + + + + F-| + 0.03 |-+ **-| + 0.025 |-+ *** *+*| + 0.02 |-+ * * ** *+*| + 0.015 |-+ * * * * * +-| + 0.01 |-+ *** ** ** * * * +-| + 0.005 |-+ *** *** ** ** + + **+ * * +-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 30 |-+ - | - 20 |-+ ##%%%%## ###%%%%## ##%%%%%%%## - 10 |-+&&&&&&&&&&%# #%&&&&&&&&&&%# #%&&&&&&&&&&&&&%# - z |&&&XXXXXXXXX&&&&&XXXXXXXXX&&&&&&====********G**&& - 0 |-+************G**************G*******XXXX&&&&==**G& #%&G - -10 |-+&&&&&&&&&&&%#%&&&&&&=====&%#%&&&&&&&&&&%% #=***G=*G**GG - | #%%%%%%+%# #%+%%%%%%# + #%%%%%%+# +#G**G==% + - -20 |------------------------------------------------------------ + 15 |-+ ### + 10 |-+ ####### ##%%%%%%%%# + | #%%%&&&&&%%## #%%&========&&%# + 5 |-+&&&XXXX&&&&&&&&&&&%%#######%%&====XXX*****G=&&# + z 0 |-+************G***X&&&&&&&&&&===*******XXX&&****&% + -5 |-+XXXXXXXXXX&&&&&******G*****G***XXXXX&&&&&%%&&***G% #%&G + |&&&&&&&&&&&&&%%%&&&&&&&&&&&&&&&&&&&&&&&%%# #%&*G**&&**G*G + -10 |-+#%%%%%%+%# ##+######## +###%%%###+ +%G=G*G=G%+ + -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.08 |-----------------------------------------------------------| - 0.07 |-+ + + + + + F +-| - 0.06 |-+ * +-| - 0.05 |-+ *** +-| - AKG 0.04 |-+ ****** +-| - 0.03 |-+ ** ****** +-| - 0.02 |-+ **** ** ** * *** *+-| - 0.01 |-+ ** ** ** ** + *****+ * *** **-| + 0.16 |-----------------------------------------------------------| + 0.14 |-+ + + + + + +-| + 0.12 |-+ F*-| + 0.1 |-+ * * *-| + AKG 0.08 |-+ * * * +*| + 0.06 |-+ * ** * +*| + 0.04 |-+ * * * +*| + 0.02 |-+ *****+ + + + ** ** +-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 30 |-+ - | - 20 |-+ ##%%%%## ###%%%%### ##%%%%%%%## - 10 |-+&&&&&&&&&&%# #%&&&&&&&&&&%# #%&&&&&&&&&&&&%%# - z |&&&XXXXXXXXX&&&&&XXXXXXXXX&&&&&&====********G**&& - 0 |-+************G**************G******XXXXX&&&&==**G& %&G - -10 |-+&&&&&&&&&&&%#%&&&&&&=====&%#%&&&&&&&&&&%% #=**GG=&G**GG - | #%%%%%%+%# #%+%%%%%%# + #%%%%%%+# + G**GG=% + - -20 |------------------------------------------------------------ + 15 |-+ ### + 10 |-+ ####### ##%%%%%%%## + | #%%%&&&&&%%## #%%&========&&%# + 5 |-+&&&XXXXX&&&&&&&&&&%%#######%%&====XXX*****G=&&# + z 0 |-+************G***X&&&&&&&&&&===*******XXX&&****&% + -5 |-+XXXXXXXXXX&&&&&******G*****G***XXXXX&&&&&%%&&***G& %&G + |&&&&&&&&&&&&&%%%&&&&&&&&&&&&&&&&&&&&&&&%%# #%&=GGG*&*GG*G + -10 |-+#%%%%%%+%# ##+######## +###%%%###+ +#G=G*G=G%+ + -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.03 |-----------------------------------------------------------| - 0.025 |-+ ** + + *** + + + +-| - | **** * * | - 0.02 |-+ * * * * **+-| - 0.015 |-+ * ** ** * ** **+-| - 0.01 |-+ * * * * **** **** *-| - | ** ** ** * * * **** * | - 0.005 |-+ * +* *+ ** + * ** +* * *-| + 0.12 |-----------------------------------------------------------| + 0.1 |-+ + + + + + ** **-| + | ** * * | + 0.08 |-+ * * * +*| + AKG 0.06 |-+ * * * +*| + 0.04 |-+ * * * +*| + | ** * | + 0.02 |-+ ****** + + + * * +-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ##%%%&&&&X======****&&&% - z |**************G*&&&&&&&&&&&&&G**********XXX*G***& - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&&%&=**G& #G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GG# G&*GG - -10 |-+ + ##+####### + #######+ +%GG*GGG*=+ + 15 |-+ ##### + 10 |-+ ####### ##%%%%%%%%# + | #%%&&&&&&&%%# #%%&========&&%# + 5 |-+&&&XXXXX&&&&&&&&&&%%#######%%&====XX******G=&&# + z 0 |-+************G***X&&&&&&&&&&===*******XXX&&&***&% + -5 |-+XXXXXXXXXX&&&&&******G*****G***XXXXX&&&&&%%&&***G# #&G + |&&&&&&&&&&&&&%%%&&&&&&&&&&&&&&&&&&&&&&&%%# #%&=GGG&&&GG*G + -10 |-+#%%%%%%+%# ##+#########+###%%%%##+ +#GGG*GGG%+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.06 |-----------------------------------------------------------| - 0.05 |-+ + + + + + * F*-| - | * * * * | - 0.04 |-+ * * * *-| - AKG 0.03 |-+ * * * +*| - 0.02 |-+ * * * +*| - | * ** *| - 0.01 |-+ + + + + +* * +*| + 0.12 |-----------------------------------------------------------| + 0.1 |-+ + + + + + +-| + | F * | + 0.08 |-+ ** **-| + AKG 0.06 |-+ * * * *-| + 0.04 |-+ * * * **| + | * * * *| + 0.02 |-+ *****+ + + + +* ** +*| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ##%%%&&&&X=====*****&&&% - z |**************G*&&&&&&&&&&&&&G**********XXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&&%&=**G& #G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GG# G%*GG - -10 |-+ + ##+####### + #######+ +%GG*GGG*=+ + 15 |-+ ##### + 10 |-+ ####### ##%%%%%%%%# + | #%%&&&&&&&%%# #%%&========&&%# + 5 |-+&&&XXXXX&&&&&&&&&&%%#######%%&====XXX*****G=&&# + z 0 |-+************G***X&&&&&&&&&&===*******XXX&&&***&& + -5 |-+XXXXXXXXXX&&&&&******G*****G***XXXXX&&&&&%%&&=**G% &G + |&&&&&&&&&&&&&%%%&&&&&&&&&&&&&&&&&&&&&&&%%## #%&=GGG&&&GG*G + -10 |-+#%%%%%%+%# ##+#########+###%%%%##+ + GGG*GGG&+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x 0.04 |-----------------------------------------------------------| - 0.035 |-+ + + + + + +-| - 0.03 |-+ F* **-| - 0.025 |-+ ** **-| - 0.02 |-+ * * * *-| - 0.015 |-+ * * * *-| - 0.01 |-+ * ** *-| - 0.005 |-+ + + + + + * ** +*| + 0.035 |-+ + + + + + F* *-| + 0.03 |-+ ** **-| + 0.025 |-+ * * **-| + 0.02 |-+ * * *+*| + 0.015 |-+ * ** +*| + 0.01 |-+ *** * ** +*| + 0.005 |-+ ** *** + + + + * ** +-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%# #&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X====******&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& #G - -5 |-+## #####%&&&&&======&%%%%%&&&&&%%%## #=**GG# G%*GG - -10 |-+ + ##+####### + #######+ +#GG*GGG*=+ + 15 |-+ ###### + 10 |-+ ###%%### ##%%%%%%%%# + | #%%&&&&&&&%%# #### #%&&========&&%# + 5 |-+&&&XXXXX&&&&&&&&&&%%#######%%&====XXX*****G*&&% + z 0 |-+************G***XX&&&&&&&&&===*******XXX&&&***&& + -5 |-+XXXXXXXXXX&&&&&******G*****G***XXXXXX&&&&%%&&=**G% &G + |&&&&&&&&&&&&&%%%&&&&&&&&&&&&&&&&&&&&&&&%%## #%&=GGG&%%GG*G + -10 |-+%%%%%%%+%## ##+#########+##%%%%%%#+ + GGG*GGG&+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x 0.02 |-----------------------------------------------------------| - | + + + + + F | - 0.015 |-+ * **-| - | ** ** | - 0.01 |-+ ** **-| - | * * * * | - 0.005 |-+ * ** *-| - | + + + + + * ** *| + | + + + + + | + 0.015 |-+ *F **-| + | ** ** ** | + 0.01 |-+ * * ** **-| + | * * * ** * | + 0.005 |-+ * * * * ** *-| + | * ** + + ***** + + * ** *| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%# #&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X====******&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%%&&&&&%%%## #=**GG GG*GG - -10 |-+ + ##+####### + #######+ +#GG*GGG*=+ + 15 |-+ ####### + 10 |-+ ####### ##%%%&&%%%# + |#%%&&&&&&&&&%## ## #%&&========&&%# + 5 |-+&***G****X&&&&&&&&%%#######%%&====XX******G*&&% + z 0 |-+**=======***G**=X&&&&&&&&&&===*******XXX&&&***&& + -5 |-+&&&%##%%&&&&&&*******G*****G***XXXXXX&&&&%%&&=**G% G G &G + |#### #####%&&&&&&&&&&&&&&&&&&&&&&&%%## #%&=GGG&&&GG*G + -10 |-+ + ###+%########+##%%%%%%#+ + GGG*GGG%+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x 0.012 |-----------------------------------------------------------| - 0.01 |-+ + + + + + *F *+-| - | ** ** | - 0.008 |-+ ** **-| - 0.006 |-+ * * **-| - 0.004 |-+ * ** *-| - | * ** *| - 0.002 |-+ + + + + + * ** +*| + 0.01 |-+ + + + + + F+-| + | * | + 0.008 |-+ ** * *-| + 0.006 |-+ ** * *-| + 0.004 |-+ *** ** * *-| + | * ** * ** * | + 0.002 |-+ + * + * **+ + * * *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%# #&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X====******&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%%&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +#GGGGGG*=+ + 15 |-+ ####### + 10 |-+ ##### #%%%&&&&%%# + |#%%&&&&&&&&&%## #%&&========&&%# + 5 |-+&***G*****&&&&&&&%%########%&&====XX******G*&&% + z 0 |-+**=======***G**=X&&&&&&&&&&===*******XXX&&&***&& + -5 |-+&&&%##%%&&&&&&*******G*****G**XXXXXX&&&&&%%&&=**G% G G &G + |### ####%&&&&&&&&&&&&&&&&&&&&&&&%%## #%&=GGG&%&GG*G + -10 |-+ + ##+#########+##%%%%%##+ + GGG*GGG%+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.01 |-----------------------------------------------------------| - | + + + + + * F | - 0.008 |-+ ** **-| - 0.006 |-+ ** * *-| - | ** * * | - 0.004 |-+ **** *-| - 0.002 |-+ * ** *-| - | + + + + + * ** * | + 0.007 |-----------------------------------------------------------| + 0.006 |-+ + + + + + ** +-| + 0.005 |-+ ** *+-| + 0.004 |-+ ** **-| + | ** * * ** | + 0.003 |-+ ** * * ** *-| + 0.002 |-+ * * * ** *-| + 0.001 |-+ + ** + * **+ + * ** *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%# #&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X=====*****&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& #G - -5 |-+## #####%&&&&&======&%%%%%&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ + 15 |-+ ####### + 10 |-+ ##### #%%%&&&&%%# + |#%%&&&&&&&&&%## #%&&========&&%# + 5 |-+&***G*****&&&&&&&%%########%&&====XX******G*&&# + z 0 |-+**=======***G**=X&&&&&&&&&&===*******XXX&&&***&& + -5 |-+&&&%##%%&&&&&&*******G*****G**XXXXXX&&&&&%%&&=**G% G G &G + |### ####%&&&&&&&&&&&&&&&&&&&&&&&%%## #%&=GGGG%&GG*G + -10 |-+ + ##+#########+##%%%%%##+ + GGG*GGG#+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.02 |-----------------------------------------------------------| - | + + + + + | - 0.015 |-+ * F+-| - | ** ** | - 0.01 |-+ ** * *-| - | * * * * | - 0.005 |-+ * *** *-| - | + + + + + * ** * | + 0.007 |-----------------------------------------------------------| + 0.006 |-+ + + + + + F+-| + 0.005 |-+ ** **-| + 0.004 |-+ ** ** * *-| + | * * ** * * | + 0.003 |-+ * ** * ** *-| + 0.002 |-+ ** * * ** *-| + 0.001 |-+ + *** + * *+ + * * *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #%&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ##%%%&&&&X=====*****&&&% - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& #G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ + 15 |-+ ###### + 10 |-+ #### ##%%%&&&%%# + |#%%&&&&&&&&&%## #%&&========&&%# + 5 |-+&***G****&&&&&&&&%%########%&&====XX******G*&&# + z 0 |-+**=======***G**=&&&&&&&&&&&===*******XXX&&&***&% + -5 |-+&&%%##%%&&&&&&*******G*****G**XXXXXX&&&&&%%&&=**G% G G &G + |### ###%&&&&&&&&&&&&&&&&&&&&&&&%%# #%&=GGGG%&GG*G + -10 |-+ + ##+#########+###%%%%##+ + GGG*GGG#+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.012 |-----------------------------------------------------------| - 0.01 |-+ + + + + + ** *+-| - | ** ** | - 0.008 |-+ ** **+-| - 0.006 |-+ ** * *-| - 0.004 |-+ * *** *-| - | * *** * | - 0.002 |-+ + + + + + * ** *-| + 0.005 |-----------------------------------------------------------| + | + + + + + ** * | + 0.004 |-+ ** * *-| + 0.003 |-+ ** ** * *-| + | **** ** * * | + 0.002 |-+ * ** * ** *-| + 0.001 |-+ ** * * ** *-| + | + *** + * *+ + * * * | 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #%&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ##%%%&&&&X=====*****&&&% - z |**************G*&&&&&&&&&&&&&G**********XXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ + 15 |-+ ###### + 10 |-+ #### ##%%%&&&%%# + |#%%&&&&&&&&&%## #%&&========&&%# + 5 |-+&***G****&&&&&&&&%%########%&&====XX******G*&&# + z 0 |-+**=======***G**=&&&&&&&&&&&===*******XXX&&&***&& + -5 |-+&&%%##%%&&&&&&*******G*****G**XXXXXX&&&&&%%&&=**G% G G &G + |### ###%&&&&&&&&&&&&&&&&&&&&&&&%%# ##&=GGGG#&GG*G + -10 |-+ + ##+#########+###%%%%##+ + GGG*GGG#+ -15 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.007 |-----------------------------------------------------------| - 0.006 |-+ + + + + + ** F+-| - 0.005 |-+ ** **+-| - 0.004 |-+ ** **+-| - | ** ** | - 0.003 |-+ ** * *-| - 0.002 |-+ **** *-| - 0.001 |-+ + + + + + * ** *-| + 0.0035 |-----------------------------------------------------------| + 0.003 |-+ + + + + + F*+-| + 0.0025 |-+ ** **+-| + 0.002 |-+ * * **+-| + | * * ** ** | + 0.0015 |-+ * * ** * *-| + 0.001 |-+ * ** * * *-| + 0.0005 |-+ + *** + * *+ + * * *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #%&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ##%%%&&&&X=====*****&&&% - z |**************G*&&&&&&&&&&&&&G**********XXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ - -15 |------------------------------------------------------------ + 20 |-+ + 15 |-+ ####### + 10 |-+#%%%%%%%%%# #%%&&====&&%%# + 5 |-+&&**G****&&&&&&&%%%## #####%&======X*****G=&&# + z 0 |-+***=====****G***=&&&&&&&&&==**********XX&&*****&# G + -5 |-+&&%####%&&&&&&&&*****G*****G*&&XXX&&&&&&%%#%&&**GGGG G&** + -10 |-+ #%%&&&&&&&&&&%%%%&&&&&%%%## #%GGGG*GGG=G + -15 |-+ + + + ##### + + GGG + + -20 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.02 |-----------------------------------------------------------| - | + + + + + F | - 0.015 |-+ * * *+-| - | * * ** | - 0.01 |-+ * ** *-| - | * ** * | - 0.005 |-+ * ** **| - | + + + + ** * ** *| + 0.005 |-----------------------------------------------------------| + | + + + *F* + + | + 0.004 |-+ * * * +-| + 0.003 |-+ * ** * +-| + | * * * * * | + 0.002 |-+ ** * * * **-| + 0.001 |-+ * * * ** *-| + | + *** + * ** + * ** * | 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #%&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ##%%%&&&&X=====*****&&&% - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ - -15 |------------------------------------------------------------ + 20 |-+ + 15 |-+ #%%%%%%# + 10 |-+#%%%%%%%%%# %&&G&====&&&%# + 5 |-+&&**G****&&&&&&&%%%# ###%&&************G=&&# + z 0 |-+***=====****G****&&&&&&&&&=****&&%%%&&&&&&&****& G + -5 |-+&&%####%%&&&&&&&*****G*****G&&% #%&&**GGGG G&** + -10 |-+ #%%&&&&&&&&&&%# #%GGGG*GGG=G + -15 |-+ + + + + + GGG + + -20 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.02 |-----------------------------------------------------------| - | + + + + + | - 0.015 |-+ F +-| - | * * | - 0.01 |-+ * ** *-| + 0.006 |-----------------------------------------------------------| + 0.005 |-+ + + + + + * *+-| + | * ** | + 0.004 |-+ ** **-| + 0.003 |-+ * ** *-| + 0.002 |-+ * ** *-| | * ** * | - 0.005 |-+ * ** *-| - | + + + + + ** ** * | + 0.001 |-+ + *** + + + * ** *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #%&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X=====*****&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***& - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ - -15 |------------------------------------------------------------ + 20 |-+ + 15 |-+ #%&&&&%# + 10 |-+#%%%%&&&%%# %&&G****=&&&%# + 5 |-+&&**G****&&&&&&&%%%# ##%&&*****=&&****G*&&# + z 0 |-+***=====****G***=&&&&&&&&&=****&&%%%%&&&&&&****& G + -5 |-+&&%####%%&&&&&&&*****G*****G&&% #%&&**GGGG G&** + -10 |-+ #%%&&&&&&&&&&%# #%GGGG*GGG=G + -15 |-+ + + + + + GGG + + -20 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.012 |-----------------------------------------------------------| - 0.01 |-+ + + + + + * *+-| - | ** ** | - 0.008 |-+ * * **-| - 0.006 |-+ * ** *-| - 0.004 |-+ * ** *-| + 0.006 |-----------------------------------------------------------| + 0.005 |-+ + + + + + F+-| + | * ** | + 0.004 |-+ * **-| + 0.003 |-+ ** **-| + 0.002 |-+ * ** *-| | * ** * | - 0.002 |-+ + + + + + * ** *-| + 0.001 |-+ + *** * + + + * ** *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #%&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X=====*****&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ - -15 |------------------------------------------------------------ + 20 |-+ + 15 |-+ #%&&&&%# + 10 |-+#%%%%&&&%%# %&&G****=&&&%# + 5 |-+&&**G****&&&&&&&%%%# ##%&&*****=&&****G*&&# + z 0 |-+***=====****G***=&&&&&&&&&=****&&%%%%&&&&&&****& G + -5 |-+&&%####%%&&&&&&&*****G*****G&&% #%&&**GGGG G&** + -10 |-+ #%%&&&&&&&&&&%# #%GGGG*GGG=G + -15 |-+ + + + + + GGGG + + -20 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.012 |-----------------------------------------------------------| - 0.01 |-+ + + + + + * *+-| - | ** ** | - 0.008 |-+ * ** *-| - 0.006 |-+ * ** *-| - 0.004 |-+ * ** *-| - | * ** * | - 0.002 |-+ + + + + + * ** *-| + 0.003 |-----------------------------------------------------------| + 0.0025 |-+ + + + + + * F+-| + | * * | + 0.002 |-+ * **-| + 0.0015 |-+ ** **-| + 0.001 |-+ * ** *-| + | ** * ** * | + 0.0005 |-+ + **+** *** + + + * * *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #%&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X=====*****&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***& - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ - -15 |------------------------------------------------------------ + 20 |-+ + 15 |-+ #%&&&&%# + 10 |-+#%%%%&&&%%# #%&&G****=&&&%# + 5 |-+&&**G****&&&&&&&%%%# ###%&&*****=&X****G*&&# + z 0 |-+***=====****G***=&&&&&&&&&=****&&%%%%&&&&&&****& G + -5 |-+&&%####%%&&&&&&&*****G*****G&&% #%&&**GGGG G&** + -10 |-+ #%%&&&&&&&&&&%# #%GGGG*GGG=G + -15 |-+ + + + + + GGGG + + -20 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.01 |-----------------------------------------------------------| - | + + + + + * * | - 0.008 |-+ ** **-| - 0.006 |-+ * * **-| - | * ** * | - 0.004 |-+ * ** *-| + 0.004 |-----------------------------------------------------------| + 0.0035 |-+ + + + + + * F+-| + 0.003 |-+ * *+-| + 0.0025 |-+ ** **-| 0.002 |-+ * ** *-| - | + + + + + * ** * | + 0.0015 |-+ * ** *-| + 0.001 |-+ * ** *-| + 0.0005 |-+ + **** ** + + + * ** *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%## #%&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X=====*****&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***&# - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%&&&&&&&%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ - -15 |------------------------------------------------------------ + 20 |-+ + 15 |-+ #%&&&&%# + 10 |-+#%%%%&&&%%# #%&&G****=&&&%# + 5 |-+&&**G****&&&&&&&%%%# ###%&&*****=&X****G*&&# + z 0 |-+***=====****G***=&&&&&&&&&=****&&%%%%&&&&&&****& G + -5 |-+&&%####%%&&&&&&&*****G*****G&&% #%&&**GGGG G&** + -10 |-+ #%%&&&&&&&&&&%# #%GGGG*GGG=G + -15 |-+ + + + + + GGGG + + -20 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.02 |-----------------------------------------------------------| - | + + + + + | - 0.015 |-+ * F+-| - | ** ** | - 0.01 |-+ * ** *-| - | * ** * | - 0.005 |-+ * ** *-| - | + + + + ***** * *| + 0.004 |-----------------------------------------------------------| + 0.0035 |-+ + + + + + * *+-| + 0.003 |-+ * *+-| + 0.0025 |-+ * **-| + 0.002 |-+ * ** *-| + 0.0015 |-+ * ** *-| + 0.001 |-+ * ** *-| + 0.0005 |-+ + **** ** + + + * ** *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 - 20 |-+ ##### - 15 |-+ ##%%%%%%%%# - 10 |-+#%%%%%%%%%# #&&&&&&&&&&&&%# - 5 |-+&&&&G&&&&&&&&%%%## ###%%&&&&X====******&&&# - z |**************G*&&&&&&&&&&&&&G*********XXXX*G***& - 0 |-+=&&&%%&&&&&&==******G******===&XXXXX&&&&&%%&=**G& G - -5 |-+## #####%&&&&&======&%%%%%&&&&&%%%## #=**GGG GG*GG - -10 |-+ + ##+####### + #######+ +%GGGGGG*=+ - -15 |------------------------------------------------------------ + 20 |-+ + 15 |-+ #%&&&&%# + 10 |-+#%%%%&&&%%# #%&&G****=&&&%# + 5 |-+&&**G****&&&&&&&&%%# ###%&&*****=&*****G*&&# + z 0 |-+***=====****G***=&&&&&&&&&=****&&%%%%&&&&&&****& G + -5 |-+&&%####%%&&&&&&&*****G*****G&&% #%&&**GGGG G&** + -10 |-+ #%%&&&&&&&&&&%# #%GGGG*GGG=G + -15 |-+ + + + + + GGGG + + -20 |------------------------------------------------------------ 0 2 4 6 8 10 12 x - 0.01 |-----------------------------------------------------------| - | + + + + + F * | - 0.008 |-+ * *+-| - 0.006 |-+ ** **-| - | * ** * | - 0.004 |-+ * ** *-| - 0.002 |-+ * ** *-| - | + + + + + * ** * | + 0.0014 |-----------------------------------------------------------| + 0.0012 |-+ + + + + + F +-| + 0.001 |-+ * +-| + 0.0008 |-+ **+-| + | * ** * | + 0.0006 |-+ *** ** *+-| + 0.0004 |-+ * * ** ** *-| + 0.0002 |-+ + * + * **** + + + * * *-| 0 |-----------------------------------------------------------| 0 2 4 6 8 10 12 : x z - init001 : 0.00000 1.2658 - init002 : 3.00000 1.6114 - init003 : 6.00000 1.0700 - init004 : 9.00000 4.5522 - init005 : 12.00000 -6.6575 - xg(185) : 11.09548 -11.6812 - xg(176) : 10.55276 -10.1779 - xg(200) : 12.00000 -3.6271 - xg(166) : 9.94975 -2.6007 - xg(166) : 9.94975 -1.7978 - xg(187) : 11.21608 -8.0077 - xg(200) : 12.00000 -6.1560 - xg(174) : 10.43216 -12.7754 - xg(196) : 11.75879 -6.0876 - xg(182) : 10.91457 -12.3350 - xg(178) : 10.67337 -10.4509 - xg(186) : 11.15578 -11.1612 - xg(174) : 10.43216 -9.1789 - xg(186) : 11.15578 -10.7789 - xg(174) : 10.43216 -6.0605 - xg(076) : 4.52261 -3.8262 - xg(025) : 1.44724 4.9671 - xg(188) : 11.27638 -11.6923 - xg(190) : 11.39698 -10.6456 - xg(178) : 10.67337 -8.2439 - xg(191) : 11.45729 -8.6512 - xg(177) : 10.61307 -8.8359 - xg(190) : 11.39698 -11.2871 - xg(177) : 10.61307 -8.0917 - xg(190) : 11.39698 -12.9987 - xg(178) : 10.67337 -8.5019 - xg(191) : 11.45729 -11.5610 - xg(178) : 10.67337 -10.7378 - xg(191) : 11.45729 -9.8621 - xg(178) : 10.67337 -9.9656 - xg(191) : 11.45729 -11.3117 - xg(178) : 10.67337 -10.5053 - xg(191) : 11.45729 -7.7073 - xg(178) : 10.67337 -10.0515 - xg(190) : 11.39698 -13.5809 - xg(179) : 10.73367 -8.3434 - xg(179) : 10.73367 -12.8770 - xg(191) : 11.45729 -11.2095 - xg(179) : 10.73367 -10.7184 - xg(191) : 11.45729 -7.8015 - xg(190) : 11.39698 -9.9827 - xg(178) : 10.67337 -11.4757 - xg(190) : 11.39698 -6.3179 - xg(189) : 11.33668 -13.3628 - xg(178) : 10.67337 -11.7713 - xg(189) : 11.33668 -11.7783 - xg(178) : 10.67337 -12.2572 - xg(189) : 11.33668 -9.6126 - xg(178) : 10.67337 -9.7828 - xg(189) : 11.33668 -13.2131 - xg(178) : 10.67337 -11.6630 - xg(189) : 11.33668 -13.0020 - xg(178) : 10.67337 -10.6802 - xg(189) : 11.33668 -14.0628 - xg(178) : 10.67337 -11.6970 - xg(189) : 11.33668 -9.0652 - xg(178) : 10.67337 -7.3232 - xg(178) : 10.67337 -9.5045 - xg(189) : 11.33668 -10.9816 - xg(184) : 11.03518 -12.0647 - xg(180) : 10.79397 -13.4861 - xg(180) : 10.79397 -10.4568 - xg(180) : 10.79397 -6.6235 - xg(180) : 10.79397 -8.9533 - xg(180) : 10.79397 -10.5946 - xg(180) : 10.79397 -12.5578 - xg(180) : 10.79397 -10.1496 - xg(190) : 11.39698 -10.7511 - xg(180) : 10.79397 -7.5412 - xg(180) : 10.79397 -9.7217 - xg(190) : 11.39698 -14.2941 - xg(180) : 10.79397 -11.4635 - xg(180) : 10.79397 -10.9952 - xg(191) : 11.45729 -7.2237 - xg(190) : 11.39698 -8.3622 - xg(190) : 11.39698 -9.9034 - xg(180) : 10.79397 -8.1739 - xg(180) : 10.79397 -10.2753 - xg(190) : 11.39698 -11.0154 - xg(180) : 10.79397 -10.3531 - xg(180) : 10.79397 -13.2601 - xg(190) : 11.39698 -9.5241 - xg(190) : 11.39698 -8.6760 - xg(190) : 11.39698 -9.4207 - xg(180) : 10.79397 -12.8357 - xg(190) : 11.39698 -9.9756 - xg(190) : 11.39698 -11.8555 - xg(180) : 10.79397 -5.9983 - xg(180) : 10.79397 -5.5866 - xg(180) : 10.79397 -11.7431 - xg(180) : 10.79397 -11.2303 - xg(190) : 11.39698 -13.4180 - xg(180) : 10.79397 -10.3801 - xg(180) : 10.79397 -7.9673 - xg(180) : 10.79397 -13.4787 + init001 : 0.00000 -1.7168 + init002 : 3.00000 -0.6419 + init003 : 6.00000 -3.1168 + init004 : 9.00000 3.5678 + init005 : 12.00000 -8.9755 + xg(186) : 11.15578 -9.8205 + xg(179) : 10.73367 -10.6154 + xg(200) : 12.00000 -1.9836 + xg(171) : 10.25126 -6.0699 + xg(171) : 10.25126 -4.6363 + xg(193) : 11.57789 -7.6539 + xg(079) : 4.70352 -4.1826 + xg(171) : 10.25126 -7.6614 + xg(193) : 11.57789 -9.7116 + xg(172) : 10.31156 -10.7926 + xg(191) : 11.45729 -7.8921 + xg(191) : 11.45729 -9.3003 + xg(174) : 10.43216 -5.7109 + xg(181) : 10.85427 -9.9351 + xg(176) : 10.55276 -8.5531 + xg(191) : 11.45729 -12.8255 + xg(176) : 10.55276 -10.8750 + xg(191) : 11.45729 -11.6325 + xg(176) : 10.55276 -10.7728 + xg(191) : 11.45729 -6.9183 + xg(176) : 10.55276 -5.8035 + xg(191) : 11.45729 -13.1556 + xg(184) : 11.03518 -14.0083 + xg(178) : 10.67337 -9.5511 + xg(178) : 10.67337 -9.0130 + xg(178) : 10.67337 -11.0865 + xg(192) : 11.51759 -8.0699 + xg(178) : 10.67337 -11.6185 + xg(191) : 11.45729 -11.5719 + xg(178) : 10.67337 -10.4460 + xg(179) : 10.73367 -4.9222 + xg(191) : 11.45729 -5.3659 + xg(191) : 11.45729 -7.8042 + xg(025) : 1.44724 4.5820 + xg(179) : 10.73367 -11.4096 + xg(190) : 11.39698 -9.0620 + xg(190) : 11.39698 -10.0949 + xg(179) : 10.73367 -11.7725 + xg(189) : 11.33668 -10.5274 + xg(189) : 11.33668 -11.4766 + xg(179) : 10.73367 -10.4887 + xg(179) : 10.73367 -9.4622 + xg(179) : 10.73367 -8.1158 + xg(179) : 10.73367 -7.7875 + xg(191) : 11.45729 -5.7830 + xg(190) : 11.39698 -11.1129 + xg(179) : 10.73367 -10.2801 + xg(179) : 10.73367 -9.7212 + xg(190) : 11.39698 -8.4013 + xg(190) : 11.39698 -9.4117 + xg(190) : 11.39698 -7.6053 + xg(189) : 11.33668 -10.5731 + xg(179) : 10.73367 -11.9750 + xg(188) : 11.27638 -12.2690 + xg(179) : 10.73367 -11.6981 + xg(188) : 11.27638 -9.6581 + xg(188) : 11.27638 -16.0716 + xg(179) : 10.73367 -11.5464 + xg(179) : 10.73367 -9.0164 + xg(179) : 10.73367 -9.8771 + xg(120) : 7.17588 7.9451 + xg(180) : 10.79397 -10.5646 + xg(180) : 10.79397 -10.8294 + xg(180) : 10.79397 -7.2440 + xg(180) : 10.79397 -9.8816 + xg(180) : 10.79397 -10.3495 + xg(190) : 11.39698 -9.5218 + xg(180) : 10.79397 -10.0251 + xg(190) : 11.39698 -9.1488 + xg(180) : 10.79397 -8.7231 + xg(190) : 11.39698 -8.2591 + xg(190) : 11.39698 -9.4513 + xg(180) : 10.79397 -11.2600 + xg(190) : 11.39698 -11.9842 + xg(180) : 10.79397 -12.6878 + xg(190) : 11.39698 -12.2065 + xg(180) : 10.79397 -13.8722 + xg(190) : 11.39698 -11.6342 + xg(180) : 10.79397 -8.2042 + xg(180) : 10.79397 -11.0745 + xg(190) : 11.39698 -11.5581 + xg(180) : 10.79397 -11.1207 + xg(180) : 10.79397 -8.6404 + xg(190) : 11.39698 -8.0164 + xg(180) : 10.79397 -10.2970 + xg(190) : 11.39698 -7.6918 + xg(180) : 10.79397 -13.4961 + xg(190) : 11.39698 -11.3838 + xg(180) : 10.79397 -15.0045 + xg(187) : 11.21608 -9.4064 + xg(187) : 11.21608 -11.7632 + xg(187) : 11.21608 -9.8871 + xg(187) : 11.21608 -12.2033 + xg(180) : 10.79397 -11.6635 + xg(180) : 10.79397 -11.6484 Number of evaluations: 5 + 95 = 100. 1 test, 1 passed, 0 known failure, 0 skipped -[inst/examples/02_design_of_experiments/stk_example_doe01.m] ->>>>> /build/octave-stk-2.5.1/inst/examples/02_design_of_experiments/stk_example_doe01.m -***** test stk_example_doe01; close all; - -#=========================# -# stk_example_doe01 # -#=========================# - -'stk_example_doe01' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/02_design_of_experiments/stk_example_doe01.m - - STK_EXAMPLE_DOE01 Examples of two-dimensional designs - - All designs are constructed on the hyper-rectangle BOX = [0; 2] x [0; 4]. - - Examples of the following designs are shown: - a) Regular grid --> stk_sampling_regulargrid, - b) "Maximin" latin hypercube sample --> stk_sampling_maximinlhs, - c) RR2-scrambled Halton sequence --> stk_sampling_halton_rr2, - d) Uniformly distributed random sample --> stk_sampling_randunif. - - -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_doe04.m] >>>>> /build/octave-stk-2.5.1/inst/examples/02_design_of_experiments/stk_example_doe04.m ***** test stk_example_doe04; close all; @@ -9061,13 +7605,6 @@ 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_goldsteinprice.m] ->>>>> /build/octave-stk-2.5.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_testcase_truss3.m] >>>>> /build/octave-stk-2.5.1/inst/examples/test_functions/stk_testcase_truss3.m ***** shared tc, xd, n @@ -9088,6 +7625,1503 @@ assert (isequal (size (v), [n 1])); assert (isequal (size (z), [n 5])); 2 tests, 2 passed, 0 known failure, 0 skipped +[inst/examples/test_functions/stk_testfun_goldsteinprice.m] +>>>>> /build/octave-stk-2.5.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/01_kriging_basics/stk_example_kb06.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb06.m +***** test stk_example_kb06; close all; + +#========================# +# stk_example_kb06 # +#========================# + +'stk_example_kb06' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb06.m + + STK_EXAMPLE_KB06 Ordinary kriging VS kriging with a linear trend + + The same dataset is analyzed using two variants of kriging. + + The left panel shows the result of ordinary kriging, in other words, Gaussian + process interpolation assuming a constant (but unknown) mean. The right panel + shows the result of adding a linear trend in the mean of the Gaussian process. + + The difference with the left plot is clear in extrapolation: the first predic- + tor exhibits a "mean reverting" behaviour, while the second one captures an + increasing trend in the data. + + +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_kb07.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb07.m +***** test stk_example_kb07; close all; + +#========================# +# stk_example_kb07 # +#========================# + +'stk_example_kb07' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb07.m + + STK_EXAMPLE_KB07 Simulation of sample paths from a Matern process + + +Additional help for built-in functions and operators is +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_kb08.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb08.m +***** test stk_example_kb08; close all; + +#========================# +# stk_example_kb08 # +#========================# + +'stk_example_kb08' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb08.m + + 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 +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_kb01.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb01.m +***** test stk_example_kb01; close all; + +#========================# +# stk_example_kb01 # +#========================# + +'stk_example_kb01' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb01.m + + STK_EXAMPLE_KB01 Ordinary kriging in 1D, with noiseless data + + This example shows how to compute ordinary kriging predictions on a + one-dimensional noiseless dataset. + + The word 'ordinary' indicates that the mean function of the GP prior is + assumed to be constant and unknown. + + A Matern covariance function is used for the Gaussian Process (GP) prior. + The parameters of this covariance function are assumed to be known (i.e., + no parameter estimation is performed here). + + Note that the kriging predictor, which is the posterior mean of the GP, + interpolates the data in this noiseless example. + + See also: stk_example_kb01n, stk_example_kb02 + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. +model = + + scalar structure containing the fields: + + covariance_type = @stk_materncov_iso + lm = + + + + dim = 1 + param = + + -0.69315 + 1.38629 + 0.91629 + + lognoisevariance = -Inf + + + True function and observed data + + 1.5 |-+ + | ***G** +--------------------+ + | *** *** |***?***True function| + 1 |-+ ** ** +---G---Observations-+ + | ** *** + | ** ** + 0.5 |-+** ** *****G + | *G ** *** **** + 0 |** ** G* ** + |* ** ** *** + | ** ** ** + -0.5 |-+ ** ** * + | ** ** + | G* ** + -1 |-+ ** ** + | ****** + | + + + + + -1.5 |----------------------------------------------------------- + -1 -0.5 0 0.5 1 + input variable x + +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/01_kriging_basics/stk_example_kb02.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb02.m +***** test stk_example_kb02; close all; + +#========================# +# stk_example_kb02 # +#========================# + +'stk_example_kb02' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb02.m + + STK_EXAMPLE_KB02 Ordinary kriging in 1D with parameter estimation + + This example shows how to estimate covariance parameters and compute + ordinary kriging predictions on a one-dimensional noiseless dataset. + + The model and data are the same as in stk_example_kb01, but this time the + parameters of the covariance function are estimated using the Restricted + Maximum Likelihood (ReML) method. + + See also: stk_example_kb01, stk_example_kb02n + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. +model = + + scalar structure containing the fields: + + covariance_type = @stk_materncov_iso + lm = + + + + dim = 1 + param = + + -0.21078 + 2.30259 + 0.75619 + + lognoisevariance = -Inf + + + True function and observed data + + 1.5 |-+ + | ***G** +--------------------+ + | **** *** |***?***True function| + 1 |-+ ** ** +---G---Observations-+ + | *** ** + | ** ** + 0.5 |-+ ** ** *** + | G* ** **** **G** + | ** ** G** *** + 0 |** ** ** *** + | ** ** ** + | ** ** ** + -0.5 |-+ ** ** + | ** ** + | G* ** + -1 |-+ *** *** + | ****** + | + + + + + -1.5 |------------------------------------------------------------------- + -1 -0.5 0 0.5 1 + +1 test, 1 passed, 0 known failure, 0 skipped +[inst/examples/01_kriging_basics/stk_example_kb01n.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb01n.m +***** test stk_example_kb01n; close all; + +#=========================# +# stk_example_kb01n # +#=========================# + +'stk_example_kb01n' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb01n.m + + STK_EXAMPLE_KB01N Ordinary kriging in 1D, with noisy data + + This example shows how to compute ordinary kriging predictions on a + one-dimensional noisy dataset. + + The Gaussian Process (GP) prior is the same as in stk_example_kb01. + + The observation noise is Gaussian and homoscedastic (constant variance). + Its variance is assumed to be known. + + Note that the kriging predictor, which is the posterior mean of the GP, + does NOT interpolate the data in this noisy example. + + See also: stk_example_kb01, stk_example_kb02n + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. +model = + + scalar structure containing the fields: + + covariance_type = @stk_materncov_iso + lm = + + + + dim = 1 + param = + + -0.69315 + 1.38629 + 0.91629 + + lognoisevariance = -3.2189 + + + 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 **** + 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/octave-stk-2.5.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/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.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_kb03.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb03.m +***** test stk_example_kb03; close all; + +#========================# +# stk_example_kb03 # +#========================# + +'stk_example_kb03' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb03.m + + STK_EXAMPLE_KB03 Ordinary kriging in 2D + + An anisotropic Matern covariance function is used for the Gaussian Process + (GP) prior. The parameters of this covariance function (variance, regularity + and ranges) are estimated using the Restricted Maximum Likelihood (ReML) + method. + + The mean function of the GP prior is assumed to be constant and unknown. This + default choice can be overridden by means of the model.lm property. + + The function is sampled on a space-filling Latin Hypercube design, and the + data is assumed to be noiseless. + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. + +BOX = 2-dimensional hyper-rectangle (stk_hrect object): + + : 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_kb02n.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb02n.m +***** test stk_example_kb02n; close all; + +#=========================# +# stk_example_kb02n # +#=========================# + +'stk_example_kb02n' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb02n.m + + STK_EXAMPLE_KB02N Noisy ordinary kriging in 1D with parameter estimation + + This example shows how to estimate covariance parameters and 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. + + See also: stk_example_kb01n, stk_example_kb02 + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. +model = + + scalar structure containing the fields: + + covariance_type = @stk_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 + + + 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 ** *** *** + 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_kb05.m] +>>>>> /build/octave-stk-2.5.1/inst/examples/01_kriging_basics/stk_example_kb05.m +***** test stk_example_kb05; close all; + +#========================# +# stk_example_kb05 # +#========================# + +'stk_example_kb05' is a script from the file /build/octave-stk-2.5.1/debian/octave-stk/usr/share/octave/packages/stk-2.5.1/examples/01_kriging_basics/stk_example_kb05.m + + STK_EXAMPLE_KB05 Generation of conditioned sample paths + + A Matern Gaussian process model is used, with constant but unknown mean + (ordinary kriging) and known covariance parameters. + + Given noiseless observations from the unknown function, a batch of conditioned + sample paths is drawn using the "conditioning by kriging" technique. In short, + this means that unconditioned sample path are simulated first (using + stk_generate_samplepaths), and then conditioned on the observations by kriging + (using stk_conditioning). + + Note: in this example, for pedagogical purposes, conditioned samplepaths are + simulated in two steps: first, unconditioned samplepaths are simulated; + second, conditioned samplepaths are obtained using conditioning by kriging. + In practice, these two steps can be carried out all at once using + stk_generate_samplepath (see, e.g., stk_example_kb09). + + See also: stk_generate_samplepaths, stk_conditioning, stk_example_kb09 + + +Additional help for built-in functions and operators is +available in the online version of the manual. Use the command +'doc ' to search the manual index. + +Help and information about Octave is also available on the WWW +at https://www.octave.org and via the help@octave.org +mailing list. +1 test, 1 passed, 0 known failure, 0 skipped +[inst/param/estim/stk_param_init_lnv.m] +>>>>> /build/octave-stk-2.5.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]); + 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_init.m] +>>>>> /build/octave-stk-2.5.1/inst/param/estim/stk_param_init.m +***** test + xi = (1:10)'; zi = sin (xi); + model = stk_model ('stk_materncov52_iso'); + model.param = stk_param_init (model, xi, zi, [1; 10], false); + xt = (1:9)' + 0.5; zt = sin (xt); + zp = stk_predict (model, xi, zi, xt); + assert (sum ((zt - zp.mean) .^ 2) < 1e-3); +***** test % check equivariance of parameter estimates + f = @(x) sin (x); + xi = stk_sampling_regulargrid (10, 1); zi = stk_feval (f, xi); + shift = 1000; scale = 0.01; + model = stk_model ('stk_materncov32_iso'); + p1 = stk_param_init (model, xi, zi); + p2 = stk_param_init (model, xi, shift + scale .* zi); + assert (stk_isequal_tolabs (p2(1), p1(1) + log (scale^2), 1e-10)) + assert (stk_isequal_tolabs (p2(2), p1(2), eps)) +***** shared xi, zi, BOX, xt, zt + + f = @(x)(- (0.8 * x + sin (5 * x + 1) + 0.1 * sin (10 * x))); + DIM = 1; % Dimension of the factor space + BOX = [-1.0; 1.0]; % Factor space + + xi = stk_sampling_regulargrid (20, DIM, BOX); % Evaluation points + zi = stk_feval (f, xi); % Evaluation results + + NT = 400; % Number of points in the grid + xt = stk_sampling_regulargrid (NT, DIM, BOX); % Generate a regular grid + zt = stk_feval (f, xt); % Values of f on the grid +***** xtest % This test is known to fail in Debian buster i386 + % because of a known problem in Octave's sqp/qp functions + % http://savannah.gnu.org/bugs/?38875 + model = stk_model ('stk_materncov_iso'); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +***** test + model = stk_model ('stk_materncov_aniso'); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +***** test + model = stk_model ('stk_materncov32_iso'); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +***** test + model = stk_model ('stk_materncov32_aniso'); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +***** test + model = stk_model ('stk_materncov52_iso'); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +***** test + model = stk_model ('stk_materncov52_aniso'); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +***** test + model = stk_model ('stk_gausscov_iso'); + [param0, model.lognoisevariance] = stk_param_init (model, xi, zi, BOX); + model.param = stk_param_estim (model, xi, zi, param0); + zp = stk_predict (model, xi, zi, xt); + assert (max ((zp.mean - zt) .^ 2) < 1e-3) +warning: matrix singular to machine precision, rcond = 6.3619e-19 +***** 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 = 2.11204e-18 +***** 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) +***** 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); +***** error % Heteroscedastic case / do_estim_lnv = true + 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, true); +***** 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. +***** 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. +16 tests, 16 passed, 0 known failure, 0 skipped +[inst/param/estim/stk_param_gls.m] +>>>>> /build/octave-stk-2.5.1/inst/param/estim/stk_param_gls.m +***** shared xi, zi, model, beta, sigma2 + xi = (1:10)'; zi = sin (xi); + model = stk_model ('stk_materncov52_iso'); + model.param = [0.0 0.0]; +***** test + model.lm = stk_lm_constant (); + [beta, sigma2] = stk_param_gls (model, xi, zi); +***** assert (stk_isequal_tolabs (beta, 0.1346064, 1e-6)) +***** assert (stk_isequal_tolabs (sigma2, 0.4295288, 1e-6)) +***** test + model.lm = stk_lm_affine (); + [beta, sigma2] = stk_param_gls (model, xi, zi); +***** assert (stk_isequal_tolabs (beta, [0.4728342; -0.0614960], 1e-6)) +***** assert (stk_isequal_tolabs (sigma2, 0.4559431, 1e-6)) +***** test + model.lm = stk_lm_null (); + [beta, sigma2] = stk_param_gls (model, xi, zi); +***** assert (isequal (beta, zeros (0, 1))) +***** assert (stk_isequal_tolabs (sigma2, 0.3977993, 1e-6)) +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/param/estim/stk_param_relik.m] +>>>>> /build/octave-stk-2.5.1/inst/param/estim/stk_param_relik.m +***** shared f, xi, zi, NI, model, J, dJ1, dJ2 + + 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 [J, dJ1, dJ2] = stk_param_relik (); +***** error [J, dJ1, dJ2] = stk_param_relik (model); +***** error [J, dJ1, dJ2] = stk_param_relik (model, xi); +***** test [J, dJ1, dJ2] = stk_param_relik (model, xi, zi); +***** error [J, dJ1, dJ2] = stk_param_relik (model, xi, zi, pi); +***** test + TOL_REL = 0.01; + assert (stk_isequal_tolrel (J, 21.6, TOL_REL)); + assert (stk_isequal_tolrel (dJ1, [4.387 -0.1803 0.7917 0.1392 2.580]', TOL_REL)); + assert (isnan (dJ2)); +***** 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 + [ARL, dARL_dtheta, dARL_dLNV] = stk_param_relik (model, xi, zi); + assert (stk_isequal_tolrel (ARL, 6.327, TOL_REL)); + assert (stk_isequal_tolrel (dARL_dtheta, [0.268 0.0149 -0.636]', TOL_REL)); + assert (stk_isequal_tolrel (dARL_dLNV, -1.581e-04, TOL_REL)); +***** test % Same 1D test with simple kriging + model.lm = stk_lm_null; + [ARL, dARL_dtheta, dARL_dLNV] = stk_param_relik (model, xi, zi); + assert (stk_isequal_tolrel (ARL, 7.475, TOL_REL)); + assert (stk_isequal_tolrel (dARL_dtheta, [0.765 0.0238 -1.019]', TOL_REL)); + assert (stk_isequal_tolrel (dARL_dLNV, 3.0517e-03, TOL_REL)); +***** test % Check the gradient on a 2D test case + + f = @stk_testfun_braninhoo; + DIM = 2; + BOX = [[-5; 10], [0; 15]]; + NI = 20; + TOL_REL = 1e-2; + DELTA = 1e-6; + + model = stk_model ('stk_materncov52_iso', DIM); + xi = stk_sampling_halton_rr2 (NI, DIM, BOX); + zi = stk_feval (f, xi); + + model.param = [1 1]; + [r1 dr] = stk_param_relik (model, xi, zi); + + model.param = model.param + DELTA * [0 1]; + r2 = stk_param_relik (model, xi, zi); + + assert (stk_isequal_tolrel (dr(2), (r2 - r1) / DELTA, TOL_REL)); +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/param/estim/stk_param_estim.m] +>>>>> /build/octave-stk-2.5.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))) +***** test % same thing, with empty lnv0 (ok) + param2 = stk_param_estim (model, xi, zi, param0, []); + assert (stk_isequal_tolrel (param2, param1, 1e-2)) +***** 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)) +***** 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)) +***** 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); +***** error param = stk_param_estim (model, xi, zi, param0, log(eps), @stk_param_relik, pi); +***** 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, model.param); + assert ((all (isfinite (param))) && (length (param) == 2)); +warning: Constant-response data: the output of stk_param_estim is likely to be unreliable. +warning: param0 has nans, calling stk_param_init instead +warning: Parameter estimation is impossible with constant-response data. +12 tests, 12 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_randomlhs.m] +>>>>> /build/octave-stk-2.5.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); +***** error x = stk_sampling_randomlhs (n, dim, box, pi); +***** 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 +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_olhs.m] +>>>>> /build/octave-stk-2.5.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_sampling_maximinlhs.m] +>>>>> /build/octave-stk-2.5.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); +***** error x = stk_sampling_maximinlhs (n, dim, box, niter, pi); +***** 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 +10 tests, 10 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_vdc_rr2.m] +>>>>> /build/octave-stk-2.5.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/stk_sampcrit_ei.m] +>>>>> /build/octave-stk-2.5.1/inst/sampling/@stk_sampcrit_ei/stk_sampcrit_ei.m +***** error F = stk_sampcrit_ei ([], 1.234); % too many input arguments +***** shared F, M, EI + M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); +***** 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); +25 tests, 25 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_regulargrid.m] +>>>>> /build/octave-stk-2.5.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); +***** error x = stk_sampling_regulargrid (n, dim, box, pi); +***** assert (isa (x, 'stk_dataframe')); +***** assert (isa (x, 'stk_factorialdesign')); +***** assert (isequal (x.colnames, {})); +***** test + cn = {'W', 'H'}; box = stk_hrect (box, cn); + x = stk_sampling_regulargrid (n, dim, box); + assert (isequal (x.colnames, cn)); +***** test + for dim = 1:3, + n = 3^dim; + x = stk_sampling_regulargrid(n, dim); + assert(isequal(size(x), [n dim])); + u = double(x); u = u(:); + assert(~any(isnan(u) | isinf(u))); + assert((min(u) >= 0) && (max(u) <= 1)); + end +***** test + nn = [3 4 5]; + for dim = 1:3, + x = stk_sampling_regulargrid(nn(1:dim), dim); + assert(isequal(size(x), [prod(nn(1:dim)) dim])); + u = double(x); u = u(:); + assert(~any(isnan(u) | isinf(u))); + assert((min(u) >= 0) && (max(u) <= 1)); + end +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampcrit_ehvi_eval.m] +>>>>> /build/octave-stk-2.5.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_nesteddesign.m] +>>>>> /build/octave-stk-2.5.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); +***** error x = stk_sampling_nesteddesign (n, dim, box, niter, levels, pi); +***** 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'}) ); +12 tests, 12 passed, 0 known failure, 0 skipped +[inst/sampling/@stk_function/stk_function.m] +>>>>> /build/octave-stk-2.5.1/inst/sampling/@stk_function/stk_function.m +***** shared F +***** test F = stk_function () % ending ";" omitted on purpose, to test disp + +F = + +***** error F = stk_function (1.234) % too many input arguments +***** 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 +12 tests, 12 passed, 0 known failure, 0 skipped +[inst/sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m] +>>>>> /build/octave-stk-2.5.1/inst/sampling/@stk_sampcrit_eqi/stk_sampcrit_eqi.m +***** error F = stk_sampcrit_eqi ([], 0.5, 10, 1.234); % too many input arguments +***** shared F, M, EQI + M = stk_model_gpposterior (stk_model, [1 2 3]', [1.234 3 2]'); +***** 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]'); +***** 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')) +64 tests, 64 passed, 0 known failure, 0 skipped +[inst/sampling/stk_halfpintl.m] +>>>>> /build/octave-stk-2.5.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_eval.m] +>>>>> /build/octave-stk-2.5.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 +***** error EI = stk_sampcrit_ei_eval (0, 0, 0, 0, 0) % too many 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)) +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampcrit_akg_eval.m] +>>>>> /build/octave-stk-2.5.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, ignd1, ignd2, K] = stk_predict (M_prior, xi, zi, [xi; xc]); % See CG#07 + + 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); +***** error AKG = stk_sampcrit_akg_eval (zc_mean, zc_std, zr_mean, zr_std, zcr_cov, 1.234); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_halton_rr2.m] +>>>>> /build/octave-stk-2.5.1/inst/sampling/stk_sampling_halton_rr2.m +***** error stk_sampling_halton_rr2 () % nargin < 1 +***** error stk_sampling_halton_rr2 (10, 3, [], -1) % nargin > 3 +***** 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)); +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_randunif.m] +>>>>> /build/octave-stk-2.5.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); +***** error x = stk_sampling_randunif (n, dim, box, pi); +***** 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 +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/sampling/stk_sampling_nestedlhs.m] +>>>>> /build/octave-stk-2.5.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); +***** error x = stk_sampling_nestedlhs (n, dim, box, niter, levels, pi); +***** 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'}) ); +12 tests, 12 passed, 0 known failure, 0 skipped +[inst/sampling/@stk_sampcrit_akg/stk_sampcrit_akg.m] +>>>>> /build/octave-stk-2.5.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]'); +***** 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]'); +***** 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) +***** error F = stk_sampcrit_akg (M, xr, 1.234); % too many input arguments +38 tests, 38 passed, 0 known failure, 0 skipped +[inst/utils/stk_conditioning.m] +>>>>> /build/octave-stk-2.5.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); +***** error zsimc = stk_conditioning (lambda, zi, zsim, xi_ind, pi^2); +***** 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); +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/utils/stk_generate_samplepaths.m] +>>>>> /build/octave-stk-2.5.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); +***** error zsim = stk_generate_samplepaths (model, xi, zi, xt, nb_paths, log (2)); +***** 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))); +11 tests, 11 passed, 0 known failure, 0 skipped Checking C++ files ... Summary: 1564 tests, 1564 passed, 0 known failures, 0 skipped dh_octave_substvar -O--buildsystem=octave @@ -9107,30 +9141,32 @@ dh_strip -O--buildsystem=octave dh_makeshlibs -O--buildsystem=octave dh_shlibdeps -O--buildsystem=octave -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex were not linked against libpthread.so.0 (they use none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex were not linked against libstdc++.so.6 (they use none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex were not linked against libgcc_s.so.1 (they use none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex were not linked against liboctave.so.6 (they use none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex were not linked against libgomp.so.1 (they use none of the library's symbols) +dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex were not linked against libstdc++.so.6 (they use none of the library's symbols) +dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex were not linked against libgcc_s.so.1 (they use none of the library's symbols) +dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex were not linked against libpthread.so.0 (they use none of the library's symbols) +dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex were not linked against liboctave.so.6 (they use none of the library's symbols) +dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_paretofind_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__get_column_number__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dominatedhv_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_vdc_rr2__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_pairwise__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_isdominated_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_filldist_discr_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_sampling_sobol_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_mindist_mex__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixy__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_distrib_bivnorm0_cdf__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_gpquadform_matrixx__.mex debian/octave-stk/usr/lib/i386-linux-gnu/octave/packages/stk-2.5.1/i686-pc-linux-gnu-api-v52/__stk_dist_matrixx__.mex were not linked against libgomp.so.1 (they use none of the library's symbols) dh_installdeb -O--buildsystem=octave dh_gencontrol -O--buildsystem=octave dpkg-gencontrol: warning: package octave-stk: substitution variable ${octave:Upstream-Description} unused, but is defined dh_md5sums -O--buildsystem=octave dh_builddeb -O--buildsystem=octave -dpkg-deb: building package 'octave-stk-dbgsym' in '../octave-stk-dbgsym_2.5.1-2_i386.deb'. dpkg-deb: building package 'octave-stk' in '../octave-stk_2.5.1-2_i386.deb'. +dpkg-deb: building package 'octave-stk-dbgsym' in '../octave-stk-dbgsym_2.5.1-2_i386.deb'. dpkg-genbuildinfo --build=binary dpkg-genchanges --build=binary >../octave-stk_2.5.1-2_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) I: copying local configuration +I: user script /srv/workspace/pbuilder/18134/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/18134/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/23672 and its subdirectories -I: Current time: Mon Jun 15 21:08:02 -12 2020 -I: pbuilder-time-stamp: 1592298482 +I: removing directory /srv/workspace/pbuilder/18134 and its subdirectories +I: Current time: Tue Jul 20 05:34:09 +14 2021 +I: pbuilder-time-stamp: 1626708849