Diff of the two buildlogs: -- --- b1/build.log 2024-10-21 21:38:29.796054991 +0000 +++ b2/build.log 2024-10-21 21:44:09.900019413 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Oct 21 09:15:18 -12 2024 -I: pbuilder-time-stamp: 1729545318 +I: Current time: Mon Nov 24 18:01:32 +14 2025 +I: pbuilder-time-stamp: 1763956892 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -30,52 +30,84 @@ dpkg-source: info: applying pkg-config-hdf5.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3748905/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/1309707/tmp/hooks/D01_modify_environment starting +debug: Running on ionos15-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Nov 24 04:01 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/1309707/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/1309707/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.32(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='916300721aa34651b1bb4a83fee58b93' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='3748905' - PS1='# ' - PS2='> ' + INVOCATION_ID=9161a36e37fe4e8c9c414fb96f086680 + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=1309707 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.aYJ0hHvE/pbuilderrc_UdlF --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.aYJ0hHvE/b1 --logfile b1/build.log octave-communications_1.2.6-3.dsc' - SUDO_GID='111' - SUDO_UID='106' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://46.16.76.132:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.aYJ0hHvE/pbuilderrc_oFv9 --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.aYJ0hHvE/b2 --logfile b2/build.log octave-communications_1.2.6-3.dsc' + SUDO_GID=111 + SUDO_UID=106 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://213.165.73.152:3128 I: uname -a - Linux ionos11-amd64 6.1.0-26-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.112-1 (2024-09-30) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.10.11+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.10.11-1~bpo12+1 (2024-10-03) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3748905/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/1309707/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -682,7 +714,7 @@ Get: 553 http://deb.debian.org/debian unstable/main amd64 texlive-latex-recommended all 2024.20240829-2 [8845 kB] Get: 554 http://deb.debian.org/debian unstable/main amd64 texlive all 2024.20240829-2 [18.6 kB] Get: 555 http://deb.debian.org/debian unstable/main amd64 texlive-plain-generic all 2024.20240829-1 [28.6 MB] -Fetched 300 MB in 53s (5623 kB/s) +Fetched 300 MB in 5s (57.2 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package poppler-data. (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 ... 19946 files and directories currently installed.) @@ -2971,7 +3003,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/octave-communications-1.2.6/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../octave-communications_1.2.6-3_source.changes +I: user script /srv/workspace/pbuilder/1309707/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/1309707/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/octave-communications-1.2.6/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../octave-communications_1.2.6-3_source.changes dpkg-buildpackage: info: source package octave-communications dpkg-buildpackage: info: source version 1.2.6-3 dpkg-buildpackage: info: source distribution unstable @@ -3311,7 +3347,7 @@ xmf-dist/fonts/type1/public/amsfonts/cm/cmsy7.pfb> -Output written on comms.pdf (95 pages, 438725 bytes). +Output written on comms.pdf (95 pages, 438724 bytes). Transcript written on comms.log. This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2025/dev/Debian) (preloaded format=pdfetex) restricted \write18 enabled. @@ -3403,7 +3439,7 @@ st/fonts/type1/public/amsfonts/cm/cmsy7.pfb> -Output written on comms.pdf (99 pages, 469642 bytes). +Output written on comms.pdf (99 pages, 469646 bytes). Transcript written on comms.log. makeinfo --no-split -o comms.info comms.texi comms.texi:2991: warning: @itemize has text but no @item @@ -3480,44 +3516,44 @@ /usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H cyclpoly.cc -o cyclpoly.oct /usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H genqamdemod.cc -o genqamdemod.oct /usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c galois-def.cc -o galois-def.o -g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H __errcore__.cc -o /tmp/oct-7Qc0SM.o /usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c galois.cc -o galois.o -g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H cyclgen.cc -o /tmp/oct-cu2GQ0.o /usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c galoisfield.cc -o galoisfield.o -g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H cyclpoly.cc -o /tmp/oct-GqHrHl.o +g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H cyclgen.cc -o /tmp/oct-vWgiSK.o +g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H __gfweight__.cc -o /tmp/oct-sKkECU.o +g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H __errcore__.cc -o /tmp/oct-tTPmfz.o +g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H cyclpoly.cc -o /tmp/oct-UUe2QK.o /usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c gf.cc -o gf.o +g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H genqamdemod.cc -o /tmp/oct-5qu1nn.o /usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-gm-gm.cc -o op-gm-gm.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H galois-def.cc -o galois-def.o +/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-gm-m.cc -o op-gm-m.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H galois.cc -o galois.o -g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H __gfweight__.cc -o /tmp/oct-NiNWrG.o -g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H genqamdemod.cc -o /tmp/oct-mWOVmk.o +/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-gm-s.cc -o op-gm-s.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H galoisfield.cc -o galoisfield.o +/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-m-gm.cc -o op-m-gm.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H gf.cc -o gf.o +/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-s-gm.cc -o op-s-gm.o +/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -I/usr/include/hdf5/serial -c ov-galois.cc -o ov-galois.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H op-gm-gm.cc -o op-gm-gm.o -/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-gm-m.cc -o op-gm-m.o -/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-gm-s.cc -o op-gm-s.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H op-gm-m.cc -o op-gm-m.o -/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-m-gm.cc -o op-m-gm.o -/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -c op-s-gm.cc -o op-s-gm.o +/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H isprimitive.cc -o isprimitive.oct +/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H primpoly.cc -o primpoly.oct g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H op-gm-s.cc -o op-gm-s.o +/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H syndtable.cc -o syndtable.oct g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H op-m-gm.cc -o op-m-gm.o -/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H -I/usr/include/hdf5/serial -c ov-galois.cc -o ov-galois.o -/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H isprimitive.cc -o isprimitive.oct g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H op-s-gm.cc -o op-s-gm.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I/usr/include/hdf5/serial -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H ov-galois.cc -o ov-galois.o -/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H primpoly.cc -o primpoly.oct -g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H isprimitive.cc -o /tmp/oct-tGErrY.o -g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H primpoly.cc -o /tmp/oct-Ul5owp.o -/usr/bin/mkoctfile --verbose -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H syndtable.cc -o syndtable.oct -g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H syndtable.cc -o /tmp/oct-R1yP3o.o -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __errcore__.oct /tmp/oct-7Qc0SM.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __gfweight__.oct /tmp/oct-NiNWrG.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o primpoly.oct /tmp/oct-Ul5owp.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o genqamdemod.oct /tmp/oct-mWOVmk.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o syndtable.oct /tmp/oct-R1yP3o.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o cyclgen.oct /tmp/oct-cu2GQ0.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o cyclpoly.oct /tmp/oct-GqHrHl.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro -g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o isprimitive.oct /tmp/oct-tGErrY.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H isprimitive.cc -o /tmp/oct-X1hELs.o +g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H primpoly.cc -o /tmp/oct-O7A3dX.o +g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DGALOIS_DISP_PRIVATES -DHAVE_CONFIG_H syndtable.cc -o /tmp/oct-7aw3Wi.o +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __gfweight__.oct /tmp/oct-sKkECU.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o isprimitive.oct /tmp/oct-X1hELs.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o __errcore__.oct /tmp/oct-tTPmfz.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o syndtable.oct /tmp/oct-7aw3Wi.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o primpoly.oct /tmp/oct-O7A3dX.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o genqamdemod.oct /tmp/oct-5qu1nn.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o cyclpoly.oct /tmp/oct-UUe2QK.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro +g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o cyclgen.oct /tmp/oct-vWgiSK.o -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose galois-def.o galois.o galoisfield.o gf.o op-gm-gm.o op-gm-m.o op-gm-s.o op-m-gm.o op-s-gm.o ov-galois.o -L/usr/lib/x86_64-linux-gnu/hdf5/serial -lhdf5 -o gf.oct g++ -I/usr/include/octave-9.2.0/octave/.. -I/usr/include/octave-9.2.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/build/reproducible-path/octave-communications-1.2.6=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -o gf.oct galois-def.o galois.o galoisfield.o gf.o op-gm-gm.o op-gm-m.o op-gm-s.o op-m-gm.o op-s-gm.o ov-galois.o -L/usr/lib/x86_64-linux-gnu/hdf5/serial -lhdf5 -shared -Wl,-Bsymbolic -Wl,-z,relro -flto=auto -ffat-lto-objects -Wl,-z,relro make[1]: Leaving directory '/build/reproducible-path/octave-communications-1.2.6/src' @@ -3528,22 +3564,141 @@ Checking package... Run the unit tests... Checking m files ... -[inst/hammgen.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/hammgen.m -***** error hammgen () -***** error hammgen (1, 2, 3) -***** error hammgen (1) -***** error hammgen (20) -***** error hammgen (3, 4) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/helscanintrlv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/helscanintrlv.m -***** error helscanintrlv () -***** error helscanintrlv (1) -***** error helscanintrlv (1, 2) -***** error helscanintrlv (1, 2, 3) -***** error helscanintrlv (1, 2, 3, 4, 5) +[inst/genqammod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/genqammod.m +***** assert (genqammod ([0:7], [-7:2:7]), [-7:2:7]) +***** assert (genqammod ([0:7], [-7 -5 -1 -3 7 5 1 3]), [-7 -5 -1 -3 7 5 1 3]) +***** error genqammod () +***** error genqammod (1) +***** error genqammod (1, 2, 3) +***** error genqammod (10, -7:2:7) +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/egolayenc.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/egolayenc.m +***** error egolayenc () +***** error egolayenc (1) +***** error egolayenc (1, 2) +***** test + x = [1 1 0 0 1 1 0 0 0 0 1 0; 1 1 1 0 1 1 1 0 0 0 1 1]; + y = egolayenc (x); + err = zeros(2, 24); + err(1, [4 10 12]) = 1; #should be able to correct any 3 errors per column + err(2, [2 3 13]) = 1; + y1 = xor (y, err); + [xb, err0] = egolaydec (y); + [x1, err1] = egolaydec (y1); + assert (y, [1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 0 0 1 0; 1 0 0 1 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1]) + assert (xb(:, 13:24), x) + assert (x1(:, 13:24), x) + assert (err0, [0; 0]) + assert (err1, [0; 0]) +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/dpcmdeco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/dpcmdeco.m +***** error dpcmdeco () +***** error dpcmdeco (1) +***** error dpcmdeco (1, 2) +***** error dpcmdeco (1, 2, 3, 4) +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/riceenco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/riceenco.m +***** assert (riceenco (1:4, 2), {[0 0 1], [0 1 0], [0 1 1], [1 0 0 0]}) +***** error riceenco () +***** error riceenco (1, 2, 3) +***** error riceenco (-1) +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/matdeintrlv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/matdeintrlv.m +***** error matdeintrlv () +***** error matdeintrlv (1) +***** error matdeintrlv (1, 2) +***** error matdeintrlv (1, 2, 3, 4) +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/convenc.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/convenc.m +***** test + t = poly2trellis (1, 1); + m = randi ([0 1], 128, 1); + [y, s] = convenc (m, t); + assert (y, m) + assert (s, 0) +***** test + t = poly2trellis (3, [7 5]); + m = [1 1 0 1 1 1 0 0 1 0 0 0]; + y = [1 1 0 1 0 1 0 0 0 1 1 0 0 1 1 1 1 1 1 0 1 1 0 0]; + assert (convenc (m, t), y) +***** error convenc () +***** error convenc (1) +***** error convenc (1, 2) +***** error convenc (1, 2, 3, 4, 5) +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/gfweight.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/gfweight.m +***** error gfweight () +***** error gfweight (1, 2, 3) +***** error gfweight ([1 2 3]) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/minpol.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/minpol.m +***** error minpol () +***** error minpol (1) +***** error minpol (1, 2) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/berconfint.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/berconfint.m +***** assert (berconfint (1, 2), 0.5) +***** assert (berconfint (10, 200, 0.98), 0.05) +***** test + [ber, conf_inter] = berconfint(100, 1E6, 0.95); + assert (ber, 1E-4) + assert (conf_inter, [8.222786e-05 1.216128e-04], 1E-10) #values are from prop.test(x=100,n=1E6,correct=FALSE) in R +***** error berconfint () +***** error berconfint (1, 2, 3, 4) 5 tests, 5 passed, 0 known failure, 0 skipped +[inst/fmmod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fmmod.m +***** error fmmod () +***** error fmmod (1) +***** error fmmod (1, 2) +***** demo + ## Sampling Frequency + fs = 400; + + ## Carrier Frequency + fc = 200; + + ## Time Duration + time = (0: 1 ./ fs:0.2)'; + + ## Create two sinusoidal signals with frequencies 30 Hz and 60 Hz + x = sin (2 .* pi .* 30 .* time) + 2 .* sin (2 .* pi .* 60 .* time); + + ## Frequency Deviation + fDev = 50; + + ## Frequency modulate x + y = fmmod (x, fc, fs, fDev); + + ## plotting + plot (time, x, 'r', time, y, 'b--') + xlabel ('Time (s)') + ylabel ('Amplitude') + legend ('Original Signal','Modulated Signal') +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/golombenco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/golombenco.m +***** assert (golombenco (3:5, 5), {[0 1 1 0], [0 1 1 1], [1 0 0 0 ]}) +***** assert (golombenco (3:5, 3), {[1 0 0] , [1 0 1 0], [1 0 1 1]}) +***** error golombenco () +***** error golombenco (1) +***** error golombenco (1, 2, 3) +***** error golombenco (1, 0) +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/cosets.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/cosets.m +***** error cosets () +***** error cosets (1, 2, 3) +2 tests, 2 passed, 0 known failure, 0 skipped [inst/deintrlv.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/deintrlv.m ***** error deintrlv () @@ -3551,83 +3706,30 @@ ***** error deintrlv (1, 2, 3) ***** error deintrlv ([0 0], [2 3]) 4 tests, 4 passed, 0 known failure, 0 skipped -[inst/huffmandeco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/huffmandeco.m -***** test - dict = huffmandict (1:4, [0.5 0.25 0.15 0.10]); - hcode = huffmanenco (1:4, dict); - assert (huffmandeco (hcode, dict), [1:4], 0) - fail ("huffmandeco ([hcode 0], dict)", "warning") - fail ("huffmandeco ('this is not a code', dict)") -***** test - dict2 = huffmandict (1:100, ones (1, 100)/100); - hcode2 = huffmanenco ([1:100 100:-1:1], dict2); - assert (huffmandeco (hcode2, dict2), [1:100 100:-1:1], 0) -***** fail ("huffmandeco ([1 0 1 0], 'this is not a dictionary')") -***** error huffmandeco () -***** error huffmandeco (1) -***** error huffmandeco (1, 2, 3) -***** error huffmandeco (1, 2) -***** error huffmandeco (2, {}) -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/ademodce.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ademodce.m -***** error ademodce () -***** error ademodce (1, 2, "invalid") -***** error ademodce (1, 2, "am", 3, 4, 5, 6) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/lz77enco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/lz77enco.m -***** demo - lz77enco ([0 0 1 0 1 0 2 1 0 2 1 0 2 1 2 0 2 1 0 2 1 2 0 0], 3, 9, 18) -***** error lz77enco (1, 1, 1, 1) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/bsc.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/bsc.m -***** error bsc () -***** error bsc (1) -***** error bsc (1, 2, 3) -***** error bsc (1, 2) -***** error bsc (2, 1) +[inst/lloyds.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/lloyds.m +***** error lloyds () +***** error lloyds (1) +***** error lloyds (1, 2, 3, 4, 5) +***** error lloyds (1, [3 2 1]) +***** error lloyds (1, 2, 3, 4) 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/@galois/ifft.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/ifft.m -***** error ifft (gf (1, 12)) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/@galois/roots.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/roots.m -***** error roots (gf (eye (3), 3)) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/@galois/fft.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/fft.m -***** error fft (gf (1, 12)) -1 test, 1 passed, 0 known failure, 0 skipped -[inst/@galois/conv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/conv.m -***** error conv (gf (1, 2), gf (1, 3)) -***** error conv (gf (eye (3), 3), gf (eye (3), 3)) -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/@galois/deconv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/deconv.m -***** error deconv (gf (1, 2), gf (1, 3)) -***** error deconv (gf (eye (3), 3), gf (eye (3), 3)) -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/@galois/dftmtx.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/dftmtx.m -***** error dftmtx (gf (1, 12)) -***** error dftmtx (gf (eye (3), 4)) -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/modmap.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/modmap.m -***** error modmap () -***** error modmap (1, 0, 0) -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/qaskenco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qaskenco.m -***** error qaskenco () -***** error qaskenco (1, 2, 3) -***** error qaskenco (0:7, 3) -3 tests, 3 passed, 0 known failure, 0 skipped +[inst/eyediagram.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/eyediagram.m +***** demo + n = 50; + ovsp = 50; + x = 1:n; + xi = [1:1/ovsp:n-0.1]; + y = randsrc (1, n, [1 + i, 1 - i, -1 - i, -1 + i]); + yi = interp1 (x, y, xi); + noisy = awgn (yi, 15, "measured"); + eyediagram (noisy, ovsp); +***** error eyediagram () +***** error eyediagram (1) +***** error eyediagram (1, 2, 3, 4, 5, 6) +***** error eyediagram (1, -1) +4 tests, 4 passed, 0 known failure, 0 skipped [inst/wgn.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/wgn.m ***** assert (isreal (wgn (10, 10, 30, 1, "dBm", "real"))); @@ -3640,30 +3742,40 @@ ***** error wgn (1, 1); ***** error wgn (1, 1, 1, 1, 1, 1); 9 tests, 9 passed, 0 known failure, 0 skipped -[inst/pamdemod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/pamdemod.m -***** assert (pamdemod ([-7:2:7], 8, 0, "Bin"), [0:7]) -***** assert (pamdemod ([-7:2:7], 8, 0, "Gray"), [0 1 3 2 6 7 5 4]) -***** error pamdemod () -***** error pamdemod (1) -***** error pamdemod (1, 2, 3, "invalid") +[inst/ricedeco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ricedeco.m +***** assert (ricedeco (riceenco (1:4, 2), 2), [1:4]) +***** error ricedeco () +***** error ricedeco (1) +***** error ricedeco (1, 2) +***** error ricedeco (1, 2, 3) 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/matdeintrlv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/matdeintrlv.m -***** error matdeintrlv () -***** error matdeintrlv (1) -***** error matdeintrlv (1, 2) -***** error matdeintrlv (1, 2, 3, 4) -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/finddelay.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/finddelay.m -***** test - d = finddelay([0, 0, 1, 2, 3], [1, 2, 3]); - assert (d, -2) -***** test - d = finddelay([1, 2, 3], [0, 0, 1, 2, 3]); - assert (d, 2) -2 tests, 2 passed, 0 known failure, 0 skipped +[inst/rledeco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rledeco.m +***** assert (rledeco ([1 5 2 4 3 1]), [5 4 4 1 1 1]) +***** error rledeco () +***** error rledeco (1, 2) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/fiboenco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fiboenco.m +***** assert (fiboenco (10), {[ 0 1 0 0 1 1]}) +***** assert (fiboenco (11), {[ 0 0 1 0 1 1]}) +***** assert (fiboenco (1:4), {[1 1], [0 1 1], [0 0 1 1], [1 0 1 1]}) +***** assert (fibodeco (fiboenco (1:600)), [1:600]) +***** error fiboenco () +***** error fiboenco (1, 2) +***** error fiboenco (0) +***** error fiboenco (1000) +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/rsencof.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rsencof.m +***** error rsencof () +***** error rsencof (1) +***** error rsencof (1, 2, 3, 4, 5) +***** error rsencof (1, 2) +***** error rsencof ("in", "out", 0) +***** error rsencof ("in", "out", "invalid") +6 tests, 6 passed, 0 known failure, 0 skipped [inst/comms.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/comms.m ***** test @@ -3690,7 +3802,8 @@ Viterbi: Not tested << Modulation Package >> - Analog Modulation: PASSED + Analog Modulation: warning: findstr is obsolete; use strfind instead +PASSED Digital Mapping: warning: shift is deprecated and will be removed from a future version of Octave, please use circshift instead PASSED Digital Modulation: Not tested @@ -3709,29 +3822,69 @@ Logical operators: PASSED Polynomial manipulation: polyval: P must be a numeric floating point vector 1 test, 1 passed, 0 known failure, 0 skipped -[inst/berconfint.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/berconfint.m -***** assert (berconfint (1, 2), 0.5) -***** assert (berconfint (10, 200, 0.98), 0.05) -***** test - [ber, conf_inter] = berconfint(100, 1E6, 0.95); - assert (ber, 1E-4) - assert (conf_inter, [8.222786e-05 1.216128e-04], 1E-10) #values are from prop.test(x=100,n=1E6,correct=FALSE) in R -***** error berconfint () -***** error berconfint (1, 2, 3, 4) +[inst/matintrlv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/matintrlv.m +***** error matintrlv () +***** error matintrlv (1) +***** error matintrlv (1, 2) +***** error matintrlv (1, 2, 3, 4) +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/lz77enco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/lz77enco.m +***** demo + lz77enco ([0 0 1 0 1 0 2 1 0 2 1 0 2 1 2 0 2 1 0 2 1 2 0 0], 3, 9, 18) +***** error lz77enco (1, 1, 1, 1) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/ssbdemod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ssbdemod.m +***** error ssbdemod () +***** error ssbdemod (1) +***** error ssbdemod (1, 2) +***** error ssbdemod (1, 2, 3, 4) +***** error ssbdemod (1, 2, 3, 4, 5) +***** demo + fc=400; + fs=8000; + t=0:(1/fs):0.1; + y=sin(20*pi*t); + y1=ssbmod(y,fc,fs); + y2=ssbdemod(y1,fc,fs); + figure(1) + subplot(3,1,1) + plot(t,y) + subplot(3,1,2) + plot(t,y1) + subplot(3,1,3) + plot(t,y2) +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/randint.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randint.m +***** shared n, m, seed, a1, a2, a3, a4, a5, a6 + n = 10; m = 32; seed = 1; a1 = randint (n); a2 = randint (n, n); + a3 = randint (n, n, m); a4 = randint (n, n, [-m, m]); + a5 = randint (n, n, m, seed); a6 = randint (n, n, m, seed); +***** error randint (); +***** error randint (n, n, n, n, n); +***** assert (size (a1) == [n, n] && size (a2) == [n, n]); +***** assert (max ([a1(:); a2(:)]) <= 1 && min ([a1(:); a2(:)]) >= 0); +***** assert (size (a3) == [n, n] && size (a4) == [n, n]); +***** assert (max (a3(:)) < m && min (a3(:)) >= 0); +***** assert (max (a4(:)) <= m && min (a4(:)) >= -m); +***** assert (a5(:) == a6(:)); +***** test + a = randint (10, 10, -32); + assert (max (a(:)) <= 0 && min (a(:)) > -32); +***** error randint (1, 2, 3, 4, 5) +***** error randint (1, 1, [1 2 3]) +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/fmdemod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fmdemod.m +***** error fmdemod () +***** error fmdemod (1) +***** error fmdemod (1, 2) +***** error fmdemod (1, 2, 3, 4) +***** error fmdemod (pi/2, 100, 10) 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/quantiz.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/quantiz.m -***** assert (quantiz (1:10, 0:9), 1:10); -***** assert (quantiz ([1:10]', 0:9), [1:10]'); -***** assert (quantiz (1:10, [3 6 9]), [0 0 0 1 1 1 2 2 2 3]); -***** assert (quantiz (1:10, 5), [0 0 0 0 0 1 1 1 1 1]); -***** assert (quantiz ([-Inf -1 0 1 Inf], [-1 0 1]), [0 0 1 2 3]); -***** assert (quantiz ([-Inf -1 0 1 Inf], 0), [0 0 0 1 1]); -***** error quantiz () -***** error quantiz (1) -***** error quantiz (1, 2, 3, 4) -9 tests, 9 passed, 0 known failure, 0 skipped [inst/symerr.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/symerr.m ***** error symerr () @@ -3740,18 +3893,30 @@ ***** error symerr (1, 1, 1) ***** error symerr (1, 1, "invalid") 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/riceenco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/riceenco.m -***** assert (riceenco (1:4, 2), {[0 0 1], [0 1 0], [0 1 1], [1 0 0 0]}) -***** error riceenco () -***** error riceenco (1, 2, 3) -***** error riceenco (-1) +[inst/shannonfanoenco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/shannonfanoenco.m +***** assert (shannonfanoenco (1:4, shannonfanodict (1:4, [0.5 0.25 0.15 0.10])), [0 1 0 1 1 0 1 1 1 0], 0) +***** error shannonfanoenco () +***** error shannonfanoenco (1) +***** error shannonfanoenco (1, 2, 3) +***** error shannonfanoenco (1, {}) +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/reedmullerenc.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/reedmullerenc.m +***** error reedmullerenc () +***** error reedmullerenc (1) +***** error reedmullerenc (1, 2) +***** error reedmullerenc (1, 2, 3, 4) 4 tests, 4 passed, 0 known failure, 0 skipped -[inst/prbs_iterator.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/prbs_iterator.m -***** error prbs_iterator () -***** error prbs_iterator (1, 2, 3) -2 tests, 2 passed, 0 known failure, 0 skipped +[inst/huffmandict.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/huffmandict.m +***** assert (huffmandict (1:4, [0.5 0.25 0.15 0.1], 1), {[0], [1 0], [1 1 1], [1 1 0]}, 0) +***** assert (huffmandict (1:4, 0.25*ones (1, 4), 1), {[1 1], [1 0], [0 1], [0 0]}, 0) +***** assert (huffmandict (1:4, [1 0 0 0 ]), {[1], [0 1], [0 0 0], [0 0 1]}, 0) +***** error huffmandict () +***** error huffmandict (1) +***** error huffmandict (1, [0.5 0.5 0.5]) +6 tests, 6 passed, 0 known failure, 0 skipped [inst/huffmanenco.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/huffmanenco.m ***** assert (huffmanenco (1:4, huffmandict (1:4, [0.5 0.25 0.15 0.10])), [1 0 1 0 0 0 0 0 1], 0) @@ -3761,21 +3926,61 @@ ***** error huffmanenco (1, 2, 3) ***** error huffmanenco (1, {}) 6 tests, 6 passed, 0 known failure, 0 skipped -[inst/ricedeco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ricedeco.m -***** assert (ricedeco (riceenco (1:4, 2), 2), [1:4]) -***** error ricedeco () -***** error ricedeco (1) -***** error ricedeco (1, 2) -***** error ricedeco (1, 2, 3) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/dpcmdeco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/dpcmdeco.m -***** error dpcmdeco () -***** error dpcmdeco (1) -***** error dpcmdeco (1, 2) -***** error dpcmdeco (1, 2, 3, 4) +[inst/bchpoly.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/bchpoly.m +***** error bchpoly (1) +***** error bchpoly (1, 2, 3, 4, 5) +***** error bchpoly (5, 10) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/gen2par.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/gen2par.m +***** error gen2par () +***** error gen2par (1, 2) +***** error gen2par ([1; 2]) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/rcosfir.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rcosfir.m +***** test + [h, st] = rcosfir (0.2,[-3 3],4,1,'sqrt'); + assert (h, [-0.0189 0.0106 0.0424 0.0520 0.0233 -0.0360 -0.0924 -0.1000 -0.0263 0.1261 0.3136 0.4677 0.5273 0.4677 0.3136 0.1261 -0.0263 -0.1000 -0.0924 -0.0360 0.0233 0.0520 0.0424 0.0106 -0.0189], 2E-3) #checked against Matlab -- not clear why the discrepancy is so large + assert (st, 0.25) +***** test + [h, st] = rcosfir (0.2,[-2 2],5,1,'sqrt'); + assert (h, [0.0208 -0.0206 -0.0654 -0.0927 -0.0825 -0.0235 0.0813 0.2134 0.3427 0.4371 0.4717 0.4371 0.3427 0.2134 0.0813 -0.0235 -0.0825 -0.0927 -0.0654 -0.0206 0.0208], 4E-3) + assert (st, 0.2, eps) +***** test + [h, st] = rcosfir (0.2,[-3 3],4,1,'normal'); + assert (h, [2.7377e-17 6.0970e-02 1.0000e-01 8.2363e-02 -3.3461e-17 -1.1449e-01 -1.9489e-01 -1.6977e-01 3.7544e-17 2.9384e-01 6.3069e-01 8.9821e-01 1.0000e+00 8.9821e-01 6.3069e-01 2.9384e-01 3.7544e-17 -1.6977e-01 -1.9489e-01 -1.1449e-01 -3.3461e-17 8.2363e-02 1.0000e-01 6.0970e-02 2.7377e-17], 1E-5) + assert (st, 0.25) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/demodmap.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/demodmap.m +***** error demodmap () +***** error demodmap (1) +***** error demodmap (1, 2) +***** error demodmap (1, 2, 3, "invalid") 4 tests, 4 passed, 0 known failure, 0 skipped +[inst/bin2gray.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/bin2gray.m +***** error bin2gray () +***** error bin2gray (1) +***** error bin2gray (1, 2) +***** error bin2gray ([0:10], 'qam', 32) +***** error bin2gray ([0:3], 'qam', 15) +***** test + assert (bin2gray ([0:3 12:15], 'qam', 16), [0 1 3 2 8 9 11 10]'); +***** test + assert (bin2gray (0:3, 'psk', 16), [0 1 3 2]'); +7 tests, 7 passed, 0 known failure, 0 skipped +[inst/shannonfanodeco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/shannonfanodeco.m +***** assert (shannonfanodeco (shannonfanoenco (1:4, shannonfanodict (1:4, [0.5 0.25 0.15 0.10])), shannonfanodict (1:4, [0.5 0.25 0.15 0.10])), [1:4], 0) +***** error shannonfanodeco () +***** error shannonfanodeco (1) +***** error shannonfanodeco (1, 2, 3) +***** error shannonfanodeco (1, 2) +***** error shannonfanodeco (2, {}) +6 tests, 6 passed, 0 known failure, 0 skipped [inst/qammod.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qammod.m ***** error qammod () @@ -3789,161 +3994,70 @@ M = 16;sym = 0:M-1; assert (qammod(sym, M, 'gray'), [-3+3i -3+1i -3-3i -3-1i -1+3i -1+1i -1-3i -1-1i 3+3i 3+1i 3-3i 3-1i 1+3i 1+1i 1-3i 1-1i].'); 6 tests, 6 passed, 0 known failure, 0 skipped -[inst/shannonfanoenco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/shannonfanoenco.m -***** assert (shannonfanoenco (1:4, shannonfanodict (1:4, [0.5 0.25 0.15 0.10])), [0 1 0 1 1 0 1 1 1 0], 0) -***** error shannonfanoenco () -***** error shannonfanoenco (1) -***** error shannonfanoenco (1, 2, 3) -***** error shannonfanoenco (1, {}) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/intrlv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/intrlv.m -***** error intrlv () -***** error intrlv (1) -***** error intrlv (1, 2, 3) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/gen2par.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/gen2par.m -***** error gen2par () -***** error gen2par (1, 2) -***** error gen2par ([1; 2]) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/qfunc.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qfunc.m -***** assert (qfunc ([-Inf 0 Inf]), [1 0.5 0]) -***** error qfunc () -***** error qfunc (1, 2) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/ssbmod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ssbmod.m -***** error ssbmod () -***** error ssbmod (1) -***** error ssbmod (1, 2) -***** error ssbmod (1, 2, 3, 4) -***** error ssbmod (1, 2, 3, 4, 5) -***** error ssbmod (pi/2, 100, 10) -***** demo - #carrier frequency - fc=400; - #sampling frequency - fs=8000; - - t=0:(1/fs):0.1; - - #message signal y - y=sin(20*pi*t); - - #ssb modulation - y1=ssbmod(y,fc,fs); - - #plot results - figure(1) - subplot(2,1,1) - plot(t,y) - - #ssbmod plot - subplot(2,1,2) - plot(t,y1) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/systematize.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/systematize.m -***** error systematize () -***** error systematize (1, 2) -***** error systematize (eye (3)) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/fmmod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fmmod.m -***** error fmmod () -***** error fmmod (1) -***** error fmmod (1, 2) -***** demo - ## Sampling Frequency - fs = 400; - - ## Carrier Frequency - fc = 200; - - ## Time Duration - time = (0: 1 ./ fs:0.2)'; - - ## Create two sinusoidal signals with frequencies 30 Hz and 60 Hz - x = sin (2 .* pi .* 30 .* time) + 2 .* sin (2 .* pi .* 60 .* time); - - ## Frequency Deviation - fDev = 50; - - ## Frequency modulate x - y = fmmod (x, fc, fs, fDev); - - ## plotting - plot (time, x, 'r', time, y, 'b--') - xlabel ('Time (s)') - ylabel ('Amplitude') - legend ('Original Signal','Modulated Signal') -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/de2bi.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/de2bi.m +[inst/bi2de.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/bi2de.m ***** shared x - x = randi ([0 2^16-1], 100, 1); -***** assert (de2bi (0), 0) -***** assert (de2bi (1), 1) -***** assert (de2bi (uint8(31)), uint8 (ones (1,5))) -***** assert (class(de2bi(uint8(31))), 'uint8') -***** assert (de2bi (255), ones (1, 8)) -***** assert (de2bi (255, [], 256), 255) -***** assert (de2bi (1023, 8, 8), [7 7 7 1 0 0 0 0]) -***** assert (size (de2bi (x, 16)), [100 16]) -***** assert (de2bi (x, 16, "right-msb"), de2bi (x, 16)) -***** assert (de2bi (x, 16, "left-msb"), fliplr (de2bi (x, 16))) -***** assert (de2bi (13, "right-msb"), [1 0 1 1]) -***** assert (de2bi (13, "left-msb"), [1 1 0 1]) -***** assert (de2bi (13, [], "right-msb"), [1 0 1 1]) -***** assert (de2bi (13, [], [], "right-msb"), [1 0 1 1]) -***** error de2bi () -***** error de2bi (1, 2, 3, 4, 5) -***** error de2bi (1, 2, 3, 4) -***** error de2bi (1, 2, 3, "invalid") -***** error de2bi (0.1) -***** error de2bi (-1) -***** error de2bi (5,[],1) -***** error de2bi (5,[],0) -***** error de2bi (5,[],-2) -23 tests, 23 passed, 0 known failure, 0 skipped -[inst/amdemod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/amdemod.m -***** error amdemod () -***** error amdemod (1) -***** error amdemod (1, 2) -***** error amdemod (1, 2, 3, 4) -***** error amdemod (pi/2, 100, 10) -***** demo - #Parameters - Fs = 44100; - T = 1; - Fc = 15000; - Fm = 10; - #Low-pass filter design - [num,den] = butter(10,1.2*Fc/Fs); - #Signals - t = 0:1/Fs:T; - x = cos(2*pi*Fm*t); - y = ammod(x,Fc,Fs); - z = amdemod(y,Fc,Fs); - #Plot - figure('Name','AM Modulation'); - subplot(3,1,1); plot(t,x); title('Modulating signal'); - subplot(3,1,2); plot(t,y); title('Modulated signal'); - subplot(3,1,3); plot(t,z); title('Demodulated signal'); + x = randi ([0 1], 100, 16); +***** assert (bi2de (0), 0) +***** assert (bi2de (1), 1) +***** assert (bi2de (ones (1, 8)), 255) +***** assert (bi2de ([7 7 7 7], 8), 4095) +***** assert (size (bi2de (x)), [100 1]) +***** assert (bi2de (x, "right-msb"), bi2de (x)) +***** assert (bi2de (x, "left-msb"), bi2de (fliplr (x))) +***** error bi2de () +***** error bi2de (1, 2, 3, 4) +***** error bi2de (1, 2, 3) +***** error bi2de (1, 2, "invalid") +***** error bi2de (0.1) +***** error bi2de (-1) +***** error bi2de (2) +***** error bi2de (7, 6) +15 tests, 15 passed, 0 known failure, 0 skipped +[inst/bsc.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/bsc.m +***** error bsc () +***** error bsc (1) +***** error bsc (1, 2, 3) +***** error bsc (1, 2) +***** error bsc (2, 1) 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/huffmandict.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/huffmandict.m -***** assert (huffmandict (1:4, [0.5 0.25 0.15 0.1], 1), {[0], [1 0], [1 1 1], [1 1 0]}, 0) -***** assert (huffmandict (1:4, 0.25*ones (1, 4), 1), {[1 1], [1 0], [0 1], [0 0]}, 0) -***** assert (huffmandict (1:4, [1 0 0 0 ]), {[1], [0 1], [0 0 0], [0 0 1]}, 0) -***** error huffmandict () -***** error huffmandict (1) -***** error huffmandict (1, [0.5 0.5 0.5]) +[inst/pamdemod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/pamdemod.m +***** assert (pamdemod ([-7:2:7], 8, 0, "Bin"), [0:7]) +***** assert (pamdemod ([-7:2:7], 8, 0, "Gray"), [0 1 3 2 6 7 5 4]) +***** error pamdemod () +***** error pamdemod (1) +***** error pamdemod (1, 2, 3, "invalid") +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/istrellis.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/istrellis.m +***** test + T = struct ("numInputSymbols", 2, + "numOutputSymbols", 4, + "numStates", 8, + "nextStates", [0 4; 0 4; 1 5; 1 5; 2 6; 2 6; 3 7; 3 7], + "outputs", [0 3; 3 0; 3 0; 0 3; 1 2; 2 1; 2 1; 1 2]); + assert (istrellis (T), true) +***** test + [status, text] = istrellis ([]); + assert (status, false); + assert (isempty (strfind (text, "not a valid trellis")), false) +***** test + [status, text] = istrellis (struct ()); + assert (status, false); + assert (isempty (strfind (text, "not a valid trellis")), false) +***** test + T = struct ("numInputSymbols", 3, + "numOutputSymbols", 4, + "numStates", 0, + "nextStates", zeros (0, 4), + "outputs", zeros (0, 4)); + [status, text] = istrellis (T); + assert (status, false); + assert (isempty (strfind (text, "numInputSymbols")), false) +***** error istrellis () +***** error istrellis (1, 2) 6 tests, 6 passed, 0 known failure, 0 skipped [inst/oct2dec.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/oct2dec.m @@ -3959,94 +4073,123 @@ ***** error oct2dec (-1) ***** error oct2dec (8) 8 tests, 8 passed, 0 known failure, 0 skipped +[inst/randerr.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randerr.m +***** shared n, err1, err2, seed, a1, a2, a3, a4, a5, a6 + n = 10; err1 = 2; err2 = [1, 2; 0.7, 0.3] ; seed = 1; + a1 = randerr (n); a2 = randerr (n, n); + a3 = randerr (n, n, err1); a4 = randerr (n, n, err2); + a5 = randerr (n, n, err1, seed); a6 = randerr (n, n, err1, seed); +***** error randerr (n, n, n, n, n); +***** assert (size (a1) == [n, n] && size (a2) == [n, n]); +***** assert (all (sum (a1.') == 1) && all (sum (a2.') == 1)) +***** assert (all ((a1(:) == 1 | a1(:) == 0)) && all ((a2(:) == 1 | a2(:) == 0))) +***** assert (size (a3) == [n, n] && size (a4) == [n, n]); +***** assert (all (sum (a3.') == err1)) +***** assert (all ((a3(:) == 1 | a3(:) == 0))) +***** assert (all ((sum (a4.') == err2(1,1)) | (sum (a4.') == err2(1,2)))) +***** assert (all ((a4(:) == 1 | a4(:) == 0))) +***** assert (a5(:) == a6(:)); +***** error randerr (1, 2, 3, 4, 5) +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/encode.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/encode.m +***** error encode () +***** error encode (1) +***** error encode (1, 2) +***** error encode (1, 2, 3, 4, 5, 6) +***** error decode (1, 2, 3) +***** error decode (1, 5, 6) +***** error decode (1, 5, 3, "invalid") +7 tests, 7 passed, 0 known failure, 0 skipped +[inst/rsgenpoly.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rsgenpoly.m +***** error rsgenpoly () +***** error rsgenpoly (1) +***** error rsgenpoly (1, 2, 3, 4, 5, 6) +***** error rsgenpoly (1, 2) +***** error rsgenpoly (2, 0) +***** error rsgenpoly (4, 3) +6 tests, 6 passed, 0 known failure, 0 skipped +[inst/quantiz.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/quantiz.m +***** assert (quantiz (1:10, 0:9), 1:10); +***** assert (quantiz ([1:10]', 0:9), [1:10]'); +***** assert (quantiz (1:10, [3 6 9]), [0 0 0 1 1 1 2 2 2 3]); +***** assert (quantiz (1:10, 5), [0 0 0 0 0 1 1 1 1 1]); +***** assert (quantiz ([-Inf -1 0 1 Inf], [-1 0 1]), [0 0 1 2 3]); +***** assert (quantiz ([-Inf -1 0 1 Inf], 0), [0 0 0 1 1]); +***** error quantiz () +***** error quantiz (1) +***** error quantiz (1, 2, 3, 4) +9 tests, 9 passed, 0 known failure, 0 skipped +[inst/dpcmopt.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/dpcmopt.m +***** error dpcmopt () +***** error dpcmopt (1) +***** error dpcmopt (1, 2, 3, 4) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/shannonfanodict.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/shannonfanodict.m +***** shared CW, P +***** test + P = [0.5 0.25 0.15 0.1]; + assert (shannonfanodict (1:4, P), {[0], [1 0], [1 1 0], [1 1 1 0]}) +***** error shannonfanodict () +***** error shannonfanodict (1) +***** error shannonfanodict (1, 2, 3) +***** error shannonfanodict (1, [0.5 0.5 0.5]) +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/rleenco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rleenco.m +***** assert (rleenco ([5 4 4 1 1 1]), [1 5 2 4 3 1]) +***** error rleenco () +***** error rleenco (1, 2) +3 tests, 3 passed, 0 known failure, 0 skipped [inst/randdeintrlv.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randdeintrlv.m ***** error randdeintrlv () ***** error randdeintrlv (1) ***** error randdeintrlv (1, 2, 3) 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/helintrlv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/helintrlv.m -***** error helintrlv () -***** error helintrlv (1) -***** error helintrlv (1, 2) -***** error helintrlv (1, 2, 3) -***** error helintrlv (1, 2, 3, 4, 5, 6) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/qamdemod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qamdemod.m -***** error qamdemod () -***** error qamdemod (1) -***** error qamdemod (1, 2) -***** error qamdemod (1, 2, 3) -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/gfweight.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/gfweight.m -***** error gfweight () -***** error gfweight (1, 2, 3) -***** error gfweight ([1 2 3]) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/eyediagram.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/eyediagram.m +[inst/finddelay.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/finddelay.m +***** test + d = finddelay([0, 0, 1, 2, 3], [1, 2, 3]); + assert (d, -2) +***** test + d = finddelay([1, 2, 3], [0, 0, 1, 2, 3]); + assert (d, 2) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/lz77deco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/lz77deco.m ***** demo - n = 50; - ovsp = 50; - x = 1:n; - xi = [1:1/ovsp:n-0.1]; - y = randsrc (1, n, [1 + i, 1 - i, -1 - i, -1 + i]); - yi = interp1 (x, y, xi); - noisy = awgn (yi, 15, "measured"); - eyediagram (noisy, ovsp); -***** error eyediagram () -***** error eyediagram (1) -***** error eyediagram (1, 2, 3, 4, 5, 6) -***** error eyediagram (1, -1) -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/bin2gray.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/bin2gray.m -***** error bin2gray () -***** error bin2gray (1) -***** error bin2gray (1, 2) -***** error bin2gray ([0:10], 'qam', 32) -***** error bin2gray ([0:3], 'qam', 15) -***** test - assert (bin2gray ([0:3 12:15], 'qam', 16), [0 1 3 2 8 9 11 10]'); -***** test - assert (bin2gray (0:3, 'psk', 16), [0 1 3 2]'); + lz77deco ([8 2 1 ; 7 3 2 ; 6 7 2 ; 2 8 0], 3, 9, 18) +***** error lz77deco (1, 2, 3, 4) +***** error lz77deco (1, 1, 1, 1) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/vec2mat.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/vec2mat.m +***** assert (vec2mat ([]), []) +***** assert (vec2mat (1), 1) +***** assert (vec2mat (1, 5), [1 0 0 0 0]) +***** assert (vec2mat (0:8), 0:8) +***** assert (vec2mat (0:8, 3), [0:2; 3:5; 6:8]) +***** error vec2mat () +***** error vec2mat (1, 2, 3, 4) 7 tests, 7 passed, 0 known failure, 0 skipped -[inst/fmdemod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fmdemod.m -***** error fmdemod () -***** error fmdemod (1) -***** error fmdemod (1, 2) -***** error fmdemod (1, 2, 3, 4) -***** error fmdemod (pi/2, 100, 10) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/egolayenc.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/egolayenc.m -***** error egolayenc () -***** error egolayenc (1) -***** error egolayenc (1, 2) -***** test - x = [1 1 0 0 1 1 0 0 0 0 1 0; 1 1 1 0 1 1 1 0 0 0 1 1]; - y = egolayenc (x); - err = zeros(2, 24); - err(1, [4 10 12]) = 1; #should be able to correct any 3 errors per column - err(2, [2 3 13]) = 1; - y1 = xor (y, err); - [xb, err0] = egolaydec (y); - [x1, err1] = egolaydec (y1); - assert (y, [1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 0 0 1 0; 1 0 0 1 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1]) - assert (xb(:, 13:24), x) - assert (x1(:, 13:24), x) - assert (err0, [0; 0]) - assert (err1, [0; 0]) +[inst/compand.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/compand.m +***** error compand () +***** error compand (1) +***** error compand (1, 2) +***** error compand (1, 2, 3, 4, 5) 4 tests, 4 passed, 0 known failure, 0 skipped -[inst/randintrlv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randintrlv.m -***** error randintrlv () -***** error randintrlv (1) -***** error randintrlv (1, 2, 3) +[inst/systematize.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/systematize.m +***** error systematize () +***** error systematize (1, 2) +***** error systematize (eye (3)) 3 tests, 3 passed, 0 known failure, 0 skipped [inst/decode.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/decode.m @@ -4058,40 +4201,151 @@ ***** error decode (1, 5, 6) ***** error decode (1, 5, 3, "invalid") 7 tests, 7 passed, 0 known failure, 0 skipped +[inst/egolaydec.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/egolaydec.m +***** assert (egolaydec ([1 1 1 zeros(1, 21)]), zeros (1, 24)) +***** assert (egolaydec ([1 0 1 zeros(1, 20) 1]), zeros (1, 24)) +***** error egolaydec () +***** error egolaydec (1) +***** error egolaydec (1, 2) +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/@galois/deconv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/deconv.m +***** error deconv (gf (1, 2), gf (1, 3)) +***** error deconv (gf (eye (3), 3), gf (eye (3), 3)) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/@galois/conv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/conv.m +***** error conv (gf (1, 2), gf (1, 3)) +***** error conv (gf (eye (3), 3), gf (eye (3), 3)) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/@galois/fft.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/fft.m +***** error fft (gf (1, 12)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/@galois/dftmtx.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/dftmtx.m +***** error dftmtx (gf (1, 12)) +***** error dftmtx (gf (eye (3), 4)) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/@galois/roots.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/roots.m +***** error roots (gf (eye (3), 3)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/@galois/ifft.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/@galois/ifft.m +***** error ifft (gf (1, 12)) +1 test, 1 passed, 0 known failure, 0 skipped +[inst/scatterplot.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/scatterplot.m +***** demo + n = 200; + ovsp = 5; + x = 1:n; + xi = [1:1/ovsp:n-0.1]; + y = randsrc (1, n, [1 + i, 1 - i, -1 - i, -1 + i]); + yi = interp1 (x, y, xi); + noisy = awgn (yi, 15, "measured"); + h = scatterplot (noisy); + hold on; + scatterplot (noisy, ovsp, 0, "r+", h); +***** error scatterplot () +***** error scatterplot (1, 2, 3, 4, 5, 6) +***** error scatterplot (1, -1) +3 tests, 3 passed, 0 known failure, 0 skipped [inst/prbs_sequence.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/prbs_sequence.m ***** error prbs_sequence () ***** error prbs_sequence (1, 2) 2 tests, 2 passed, 0 known failure, 0 skipped -[inst/compand.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/compand.m -***** error compand () -***** error compand (1) -***** error compand (1, 2) -***** error compand (1, 2, 3, 4, 5) -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/pskdemod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/pskdemod.m -***** assert (pskdemod ([1 j -1 -j], 4, 0, "Bin"), [0:3]) -***** assert (pskdemod ([1 j -j -1], 4, 0, "Gray"), [0:3]) -***** error pskdemod () -***** error pskdemod (1) -***** error pskdemod (1, 2, 3, "invalid") +[inst/pammod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/pammod.m +***** assert (round (pammod ([0:7], 8, 0, "Bin")), [-7:2:7]) +***** assert (round (pammod ([0:7], 8, 0, "Gray")), [-7 -5 -1 -3 7 5 1 3]) +***** error pammod () +***** error pammod (1) +***** error pammod (1, 2, 3, "invalid") 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/lloyds.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/lloyds.m -***** error lloyds () -***** error lloyds (1) -***** error lloyds (1, 2, 3, 4, 5) -***** error lloyds (1, [3 2 1]) -***** error lloyds (1, 2, 3, 4) +[inst/ammod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ammod.m +***** error ammod () +***** error ammod (1) +***** error ammod (1, 2) +***** error ammod (1, 2, 3, 4) +***** error ammod (pi/2, 100, 10) +***** demo + ## carrier Frequency + fc = 200; + + ## sampling frequency + fs= 4000; + + ## time Duration + t = (0 : 1 ./ fs : 1); + + ## sine Wave with time duration of 't' + x = sin (2 .* pi .* t); + + ## Amplitude Modulation + y = ammod (x, fc, fs); + + plot(y); + title('Amplitude Modulation'); + xlabel('Time(sec)'); + ylabel('Amplitude'); 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/fibosplitstream.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fibosplitstream.m -***** assert (fibodeco (fibosplitstream ([fiboenco(1:10){:}])), [1:10]) -***** error fibosplitstream () -***** error fibosplitstream (1, 2) -3 tests, 3 passed, 0 known failure, 0 skipped +[inst/fibodeco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fibodeco.m +***** assert (fibodeco ({[1 1], [0 1 1], [0 0 1 1], [1 0 1 1]}), [1:4]) +***** assert (fibodeco ({[0 1 0 0 1 1]}), 10) +***** error fibodeco () +***** error fibodeco (1, 2) +4 tests, 4 passed, 0 known failure, 0 skipped +[inst/huffmandeco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/huffmandeco.m +***** test + dict = huffmandict (1:4, [0.5 0.25 0.15 0.10]); + hcode = huffmanenco (1:4, dict); + assert (huffmandeco (hcode, dict), [1:4], 0) + fail ("huffmandeco ([hcode 0], dict)", "warning") + fail ("huffmandeco ('this is not a code', dict)") +***** test + dict2 = huffmandict (1:100, ones (1, 100)/100); + hcode2 = huffmanenco ([1:100 100:-1:1], dict2); + assert (huffmandeco (hcode2, dict2), [1:100 100:-1:1], 0) +***** fail ("huffmandeco ([1 0 1 0], 'this is not a dictionary')") +***** error huffmandeco () +***** error huffmandeco (1) +***** error huffmandeco (1, 2, 3) +***** error huffmandeco (1, 2) +***** error huffmandeco (2, {}) +8 tests, 8 passed, 0 known failure, 0 skipped +[inst/qaskdeco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qaskdeco.m +***** function dec = __fntestqask1__ (msg, m) + [inp, qudr] = qaskenco (msg, m); + dec = qaskdeco (inp, qudr, m); +***** function __fntestqask2__ (m, dims) + msg = floor (rand (dims) * m); + assert (__fntestqask1__ (msg, m), msg); +***** test __fntestqask2__ (2, [100, 100]) +***** test __fntestqask2__ (4, [100, 100]) +***** test __fntestqask2__ (8, [100, 100]) +***** test __fntestqask2__ (16, [100, 100]) +***** test __fntestqask2__ (32, [100, 100]) +***** test __fntestqask2__ (64, [100, 100]) +***** test __fntestqask2__ (2, [100, 100, 3]) +***** test __fntestqask2__ (4, [100, 100, 3]) +***** test __fntestqask2__ (8, [100, 100, 3]) +***** test __fntestqask2__ (16, [100, 100, 3]) +***** test __fntestqask2__ (32, [100, 100, 3]) +***** test __fntestqask2__ (64, [100, 100, 3]) +***** error qaskdeco () +***** error qaskdeco (1) +***** error qaskdeco (1, 2, 3, 4, 5) +***** error qaskdeco (1, 1) +***** error qaskdeco (1, 5) +17 tests, 17 passed, 0 known failure, 0 skipped [inst/biterr.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/biterr.m ***** error biterr () @@ -4099,6 +4353,56 @@ ***** error biterr (1, 2, 3, 4, 5) ***** error biterr (10, 10, 2) 4 tests, 4 passed, 0 known failure, 0 skipped +[inst/prbs_iterator.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/prbs_iterator.m +***** error prbs_iterator () +***** error prbs_iterator (1, 2, 3) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/fibosplitstream.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fibosplitstream.m +***** assert (fibodeco (fibosplitstream ([fiboenco(1:10){:}])), [1:10]) +***** error fibosplitstream () +***** error fibosplitstream (1, 2) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/helscanintrlv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/helscanintrlv.m +***** error helscanintrlv () +***** error helscanintrlv (1) +***** error helscanintrlv (1, 2) +***** error helscanintrlv (1, 2, 3) +***** error helscanintrlv (1, 2, 3, 4, 5) +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/reedmullergen.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/reedmullergen.m +***** error reedmullergen () +***** error reedmullergen (1) +***** error reedmullergen (1, 2, 3) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/randsrc.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randsrc.m +***** shared n, alph1, alph2, seed, a1, a2, a3, a4, a5, a6 + n = 10; alph1 = [0, 1; 0.3, 0.7]; alph2 = ["a", "b"]; seed = 1; + a1 = randsrc (n); a2 = randsrc (n, n); + a3 = randsrc (n, n, alph1); a4 = randsrc (n, n, alph2); + a5 = randsrc (n, n, alph1, seed); a6 = randsrc (n, n, alph1, seed); +***** error randsrc (n, n, n, n, n); +***** assert (size (a1) == [n, n] && size (a2) == [n, n]); +***** assert (max ([a1(:); a2(:)]) <= 1 && min ([a1(:); a2(:)]) >= -1); +***** assert (size (a3) == [n, n] && size (a4) == [n, n]); +***** assert (max (a3(:)) <= 1 && min (a3(:)) >= 0); +***** assert (max (double (a4(:))) <= double ("b")) +***** assert (max (double (a4(:))) >= double ("a")) +***** assert (a5(:) == a6(:)); +***** error randsrc (1, 2, 3, 4, 5) +***** error randsrc (1, 1, ones (3)) +***** error randsrc (1, 1, [0 1 2; 0.5 0.5 0.5]) +11 tests, 11 passed, 0 known failure, 0 skipped +[inst/ademodce.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ademodce.m +***** error ademodce () +***** error ademodce (1, 2, "invalid") +***** error ademodce (1, 2, "am", 3, 4, 5, 6) +3 tests, 3 passed, 0 known failure, 0 skipped [inst/reedmullerdec.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/reedmullerdec.m ***** error reedmullerdec () @@ -4111,35 +4415,32 @@ >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/gftable.m ***** assert (1) 1 test, 1 passed, 0 known failure, 0 skipped -[inst/rledeco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rledeco.m -***** assert (rledeco ([1 5 2 4 3 1]), [5 4 4 1 1 1]) -***** error rledeco () -***** error rledeco (1, 2) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/amodce.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/amodce.m -***** error amodce () -***** error amodce (1, 2, "invalid") -***** error amodce (1, 2, "am", 3, 4, 5, 6) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/fiboenco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fiboenco.m -***** assert (fiboenco (10), {[ 0 1 0 0 1 1]}) -***** assert (fiboenco (11), {[ 0 0 1 0 1 1]}) -***** assert (fiboenco (1:4), {[1 1], [0 1 1], [0 0 1 1], [1 0 1 1]}) -***** assert (fibodeco (fiboenco (1:600)), [1:600]) -***** error fiboenco () -***** error fiboenco (1, 2) -***** error fiboenco (0) -***** error fiboenco (1000) -8 tests, 8 passed, 0 known failure, 0 skipped -[inst/minpol.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/minpol.m -***** error minpol () -***** error minpol (1) -***** error minpol (1, 2) -3 tests, 3 passed, 0 known failure, 0 skipped +[inst/poly2trellis.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/poly2trellis.m +***** test + T = struct ("numInputSymbols", 2, "numOutputSymbols", 4, "numStates", 8, "nextStates", [0 4; 0 4; 1 5; 1 5; 2 6; 2 6; 3 7; 3 7], "outputs", [0 3; 3 0; 3 0; 0 3; 1 2; 2 1; 2 1; 1 2]); + t = poly2trellis (4, [13 17]); + assert (t, T) + assert (istrellis (t), true) +***** test + t = poly2trellis(3,[7 5],7); + T = struct ("numInputSymbols", 2, "numOutputSymbols", 4, "numStates", 4, "nextStates", [0 2; 2 0; 3 1; 1 3], "outputs", [0 3; 0 3; 1 2; 1 2]); + assert (t, T) + assert (istrellis (t), true) +***** test + t = poly2trellis(5,[37 33],33); + T = struct ("numInputSymbols", 2, "numOutputSymbols", 4, "numStates", 16, "nextStates", [0 8; 8 0; 9 1; 1 9; 2 10; 10 2; 11 3; 3 11; 12 4; 4 12; 5 13; 13 5; 14 6; 6 14; 7 15; 15 7], "outputs", [0 3; 0 3; 0 3; 0 3; 2 1; 2 1; 2 1; 2 1; 0 3; 0 3; 0 3; 0 3; 2 1; 2 1; 2 1; 2 1]); + assert (t, T) + assert (istrellis (t), true) +***** error poly2trellis () +***** error poly2trellis (1, 2, 3) +***** error poly2trellis (1) +***** error poly2trellis (2, 8) +***** error poly2trellis (0, 0) +***** error poly2trellis (2, 0) +***** error poly2trellis (2, 2) +***** error poly2trellis (2, 7) +11 tests, 11 passed, 0 known failure, 0 skipped [inst/awgn.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/awgn.m ***** shared x, y, noisy @@ -4153,25 +4454,22 @@ ***** error awgn (1); ***** error awgn (1, 1, 1, 1, 1); 7 tests, 7 passed, 0 known failure, 0 skipped -[inst/vec2mat.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/vec2mat.m -***** assert (vec2mat ([]), []) -***** assert (vec2mat (1), 1) -***** assert (vec2mat (1, 5), [1 0 0 0 0]) -***** assert (vec2mat (0:8), 0:8) -***** assert (vec2mat (0:8, 3), [0:2; 3:5; 6:8]) -***** error vec2mat () -***** error vec2mat (1, 2, 3, 4) -7 tests, 7 passed, 0 known failure, 0 skipped -[inst/golombenco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/golombenco.m -***** assert (golombenco (3:5, 5), {[0 1 1 0], [0 1 1 1], [1 0 0 0 ]}) -***** assert (golombenco (3:5, 3), {[1 0 0] , [1 0 1 0], [1 0 1 1]}) -***** error golombenco () -***** error golombenco (1) -***** error golombenco (1, 2, 3) -***** error golombenco (1, 0) -6 tests, 6 passed, 0 known failure, 0 skipped +[inst/pskmod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/pskmod.m +***** assert (round (pskmod ([0:3], 4, 0, "Bin")), [1 j -1 -j]) +***** assert (round (pskmod ([0:3], 4, 0, "Gray")), [1 j -j -1]) +***** assert <*51560> (size (pskmod ([0:3], 4, pi/4)), [1, 4]) +***** assert <*51560> (size (pskmod ([0:3]', 4, pi/4)), [4, 1]) +***** assert <*51560> (size (pskmod ([0:3; 0:3], 4, pi/4)), [2, 4]) +***** assert <*51560> (size (pskmod (cat(3,[0:3],[0:3]), 4, pi/4)), [1, 4, 2]) +***** assert <*51560> (size (pskmod (cat(3,[0:3]',[0:3]'), 4, pi/4)), [4, 1, 2]) +***** assert <*51560> (size (pskmod (cat(3,[0:3;0:3],[0:3;0:3]), 4, pi/4)), [2, 4, 2]) +***** error pskmod () +***** error pskmod (1) +***** error pskmod (1, 2, 3, 4, 5) +***** error pskmod (1, 2, 3, "invalid") +***** error pskmod (0:7, 4) +13 tests, 13 passed, 0 known failure, 0 skipped [inst/rsdecof.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rsdecof.m ***** error rsdecof () @@ -4180,145 +4478,101 @@ ***** error rsdecof (1, 2) ***** error rsdecof ("in", "out", 0) 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/rcosfir.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rcosfir.m -***** test - [h, st] = rcosfir (0.2,[-3 3],4,1,'sqrt'); - assert (h, [-0.0189 0.0106 0.0424 0.0520 0.0233 -0.0360 -0.0924 -0.1000 -0.0263 0.1261 0.3136 0.4677 0.5273 0.4677 0.3136 0.1261 -0.0263 -0.1000 -0.0924 -0.0360 0.0233 0.0520 0.0424 0.0106 -0.0189], 2E-3) #checked against Matlab -- not clear why the discrepancy is so large - assert (st, 0.25) -***** test - [h, st] = rcosfir (0.2,[-2 2],5,1,'sqrt'); - assert (h, [0.0208 -0.0206 -0.0654 -0.0927 -0.0825 -0.0235 0.0813 0.2134 0.3427 0.4371 0.4717 0.4371 0.3427 0.2134 0.0813 -0.0235 -0.0825 -0.0927 -0.0654 -0.0206 0.0208], 4E-3) - assert (st, 0.2, eps) -***** test - [h, st] = rcosfir (0.2,[-3 3],4,1,'normal'); - assert (h, [2.7377e-17 6.0970e-02 1.0000e-01 8.2363e-02 -3.3461e-17 -1.1449e-01 -1.9489e-01 -1.6977e-01 3.7544e-17 2.9384e-01 6.3069e-01 8.9821e-01 1.0000e+00 8.9821e-01 6.3069e-01 2.9384e-01 3.7544e-17 -1.6977e-01 -1.9489e-01 -1.1449e-01 -3.3461e-17 8.2363e-02 1.0000e-01 6.0970e-02 2.7377e-17], 1E-5) - assert (st, 0.25) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/convenc.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/convenc.m -***** test - t = poly2trellis (1, 1); - m = randi ([0 1], 128, 1); - [y, s] = convenc (m, t); - assert (y, m) - assert (s, 0) -***** test - t = poly2trellis (3, [7 5]); - m = [1 1 0 1 1 1 0 0 1 0 0 0]; - y = [1 1 0 1 0 1 0 0 0 1 1 0 0 1 1 1 1 1 1 0 1 1 0 0]; - assert (convenc (m, t), y) -***** error convenc () -***** error convenc (1) -***** error convenc (1, 2) -***** error convenc (1, 2, 3, 4, 5) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/randint.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randint.m -***** shared n, m, seed, a1, a2, a3, a4, a5, a6 - n = 10; m = 32; seed = 1; a1 = randint (n); a2 = randint (n, n); - a3 = randint (n, n, m); a4 = randint (n, n, [-m, m]); - a5 = randint (n, n, m, seed); a6 = randint (n, n, m, seed); -***** error randint (); -***** error randint (n, n, n, n, n); -***** assert (size (a1) == [n, n] && size (a2) == [n, n]); -***** assert (max ([a1(:); a2(:)]) <= 1 && min ([a1(:); a2(:)]) >= 0); -***** assert (size (a3) == [n, n] && size (a4) == [n, n]); -***** assert (max (a3(:)) < m && min (a3(:)) >= 0); -***** assert (max (a4(:)) <= m && min (a4(:)) >= -m); -***** assert (a5(:) == a6(:)); -***** test - a = randint (10, 10, -32); - assert (max (a(:)) <= 0 && min (a(:)) > -32); -***** error randint (1, 2, 3, 4, 5) -***** error randint (1, 1, [1 2 3]) -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/rsencof.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rsencof.m -***** error rsencof () -***** error rsencof (1) -***** error rsencof (1, 2, 3, 4, 5) -***** error rsencof (1, 2) -***** error rsencof ("in", "out", 0) -***** error rsencof ("in", "out", "invalid") +[inst/ssbmod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ssbmod.m +***** error ssbmod () +***** error ssbmod (1) +***** error ssbmod (1, 2) +***** error ssbmod (1, 2, 3, 4) +***** error ssbmod (1, 2, 3, 4, 5) +***** error ssbmod (pi/2, 100, 10) +***** demo + #carrier frequency + fc=400; + #sampling frequency + fs=8000; + + t=0:(1/fs):0.1; + + #message signal y + y=sin(20*pi*t); + + #ssb modulation + y1=ssbmod(y,fc,fs); + + #plot results + figure(1) + subplot(2,1,1) + plot(t,y) + + #ssbmod plot + subplot(2,1,2) + plot(t,y1) 6 tests, 6 passed, 0 known failure, 0 skipped -[inst/bi2de.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/bi2de.m -***** shared x - x = randi ([0 1], 100, 16); -***** assert (bi2de (0), 0) -***** assert (bi2de (1), 1) -***** assert (bi2de (ones (1, 8)), 255) -***** assert (bi2de ([7 7 7 7], 8), 4095) -***** assert (size (bi2de (x)), [100 1]) -***** assert (bi2de (x, "right-msb"), bi2de (x)) -***** assert (bi2de (x, "left-msb"), bi2de (fliplr (x))) -***** error bi2de () -***** error bi2de (1, 2, 3, 4) -***** error bi2de (1, 2, 3) -***** error bi2de (1, 2, "invalid") -***** error bi2de (0.1) -***** error bi2de (-1) -***** error bi2de (2) -***** error bi2de (7, 6) -15 tests, 15 passed, 0 known failure, 0 skipped -[inst/randsrc.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randsrc.m -***** shared n, alph1, alph2, seed, a1, a2, a3, a4, a5, a6 - n = 10; alph1 = [0, 1; 0.3, 0.7]; alph2 = ["a", "b"]; seed = 1; - a1 = randsrc (n); a2 = randsrc (n, n); - a3 = randsrc (n, n, alph1); a4 = randsrc (n, n, alph2); - a5 = randsrc (n, n, alph1, seed); a6 = randsrc (n, n, alph1, seed); -***** error randsrc (n, n, n, n, n); -***** assert (size (a1) == [n, n] && size (a2) == [n, n]); -***** assert (max ([a1(:); a2(:)]) <= 1 && min ([a1(:); a2(:)]) >= -1); -***** assert (size (a3) == [n, n] && size (a4) == [n, n]); -***** assert (max (a3(:)) <= 1 && min (a3(:)) >= 0); -***** assert (max (double (a4(:))) <= double ("b")) -***** assert (max (double (a4(:))) >= double ("a")) -***** assert (a5(:) == a6(:)); -***** error randsrc (1, 2, 3, 4, 5) -***** error randsrc (1, 1, ones (3)) -***** error randsrc (1, 1, [0 1 2; 0.5 0.5 0.5]) -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/reedmullergen.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/reedmullergen.m -***** error reedmullergen () -***** error reedmullergen (1) -***** error reedmullergen (1, 2, 3) +[inst/pskdemod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/pskdemod.m +***** assert (pskdemod ([1 j -1 -j], 4, 0, "Bin"), [0:3]) +***** assert (pskdemod ([1 j -j -1], 4, 0, "Gray"), [0:3]) +***** error pskdemod () +***** error pskdemod (1) +***** error pskdemod (1, 2, 3, "invalid") +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/apkconst.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/apkconst.m +***** error apkconst () +***** error apkconst (1, 2, 3, 4) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/qfunc.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qfunc.m +***** assert (qfunc ([-Inf 0 Inf]), [1 0.5 0]) +***** error qfunc () +***** error qfunc (1, 2) 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/scatterplot.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/scatterplot.m -***** demo - n = 200; - ovsp = 5; - x = 1:n; - xi = [1:1/ovsp:n-0.1]; - y = randsrc (1, n, [1 + i, 1 - i, -1 - i, -1 + i]); - yi = interp1 (x, y, xi); - noisy = awgn (yi, 15, "measured"); - h = scatterplot (noisy); - hold on; - scatterplot (noisy, ovsp, 0, "r+", h); -***** error scatterplot () -***** error scatterplot (1, 2, 3, 4, 5, 6) -***** error scatterplot (1, -1) +[inst/modmap.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/modmap.m +***** error modmap () +***** error modmap (1, 0, 0) +2 tests, 2 passed, 0 known failure, 0 skipped +[inst/qfuncinv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qfuncinv.m +***** assert (qfuncinv ([0 0.5 1]), [Inf 0 -Inf]) +***** error qfuncinv () +***** error qfuncinv (1, 2) 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/golombdeco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/golombdeco.m -***** assert (golombdeco (golombenco (1:4, 2), 2), [1:4]) -***** error golombdeco () -***** error golombdeco (1) -***** error golombdeco (1, 2) -***** error golombdeco ({}, 0) +[inst/amdemod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/amdemod.m +***** error amdemod () +***** error amdemod (1) +***** error amdemod (1, 2) +***** error amdemod (1, 2, 3, 4) +***** error amdemod (pi/2, 100, 10) +***** demo + #Parameters + Fs = 44100; + T = 1; + Fc = 15000; + Fm = 10; + #Low-pass filter design + [num,den] = butter(10,1.2*Fc/Fs); + #Signals + t = 0:1/Fs:T; + x = cos(2*pi*Fm*t); + y = ammod(x,Fc,Fs); + z = amdemod(y,Fc,Fs); + #Plot + figure('Name','AM Modulation'); + subplot(3,1,1); plot(t,x); title('Modulating signal'); + subplot(3,1,2); plot(t,y); title('Modulated signal'); + subplot(3,1,3); plot(t,z); title('Demodulated signal'); +5 tests, 5 passed, 0 known failure, 0 skipped +[inst/helintrlv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/helintrlv.m +***** error helintrlv () +***** error helintrlv (1) +***** error helintrlv (1, 2) +***** error helintrlv (1, 2, 3) +***** error helintrlv (1, 2, 3, 4, 5, 6) 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/matintrlv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/matintrlv.m -***** error matintrlv () -***** error matintrlv (1) -***** error matintrlv (1, 2) -***** error matintrlv (1, 2, 3, 4) -4 tests, 4 passed, 0 known failure, 0 skipped [inst/egolaygen.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/egolaygen.m ***** test @@ -4328,17 +4582,26 @@ assert (sum (g(:,1:12)), [7*ones(1, 11), 11]) ***** error egolaygen (1) 2 tests, 2 passed, 0 known failure, 0 skipped -[inst/apkconst.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/apkconst.m -***** error apkconst () -***** error apkconst (1, 2, 3, 4) -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/dpcmopt.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/dpcmopt.m -***** error dpcmopt () -***** error dpcmopt (1) -***** error dpcmopt (1, 2, 3, 4) +[inst/intrlv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/intrlv.m +***** error intrlv () +***** error intrlv (1) +***** error intrlv (1, 2, 3) 3 tests, 3 passed, 0 known failure, 0 skipped +[inst/randintrlv.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randintrlv.m +***** error randintrlv () +***** error randintrlv (1) +***** error randintrlv (1, 2, 3) +3 tests, 3 passed, 0 known failure, 0 skipped +[inst/golombdeco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/golombdeco.m +***** assert (golombdeco (golombenco (1:4, 2), 2), [1:4]) +***** error golombdeco () +***** error golombdeco (1) +***** error golombdeco (1, 2) +***** error golombdeco ({}, 0) +5 tests, 5 passed, 0 known failure, 0 skipped [inst/dpcmenco.m] >>>>> /build/reproducible-path/octave-communications-1.2.6/inst/dpcmenco.m ***** function y = my_sawtooth (t, width) @@ -4386,298 +4649,73 @@ assert (qx, [-1, 1, -1, 1, -1]) assert (distor, 0) 6 tests, 6 passed, 0 known failure, 0 skipped -[inst/shannonfanodict.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/shannonfanodict.m -***** shared CW, P -***** test - P = [0.5 0.25 0.15 0.1]; - assert (shannonfanodict (1:4, P), {[0], [1 0], [1 1 0], [1 1 1 0]}) -***** error shannonfanodict () -***** error shannonfanodict (1) -***** error shannonfanodict (1, 2, 3) -***** error shannonfanodict (1, [0.5 0.5 0.5]) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/qaskdeco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qaskdeco.m -***** function dec = __fntestqask1__ (msg, m) - [inp, qudr] = qaskenco (msg, m); - dec = qaskdeco (inp, qudr, m); -***** function __fntestqask2__ (m, dims) - msg = floor (rand (dims) * m); - assert (__fntestqask1__ (msg, m), msg); -***** test __fntestqask2__ (2, [100, 100]) -***** test __fntestqask2__ (4, [100, 100]) -***** test __fntestqask2__ (8, [100, 100]) -***** test __fntestqask2__ (16, [100, 100]) -***** test __fntestqask2__ (32, [100, 100]) -***** test __fntestqask2__ (64, [100, 100]) -***** test __fntestqask2__ (2, [100, 100, 3]) -***** test __fntestqask2__ (4, [100, 100, 3]) -***** test __fntestqask2__ (8, [100, 100, 3]) -***** test __fntestqask2__ (16, [100, 100, 3]) -***** test __fntestqask2__ (32, [100, 100, 3]) -***** test __fntestqask2__ (64, [100, 100, 3]) -***** error qaskdeco () -***** error qaskdeco (1) -***** error qaskdeco (1, 2, 3, 4, 5) -***** error qaskdeco (1, 1) -***** error qaskdeco (1, 5) -17 tests, 17 passed, 0 known failure, 0 skipped -[inst/reedmullerenc.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/reedmullerenc.m -***** error reedmullerenc () -***** error reedmullerenc (1) -***** error reedmullerenc (1, 2) -***** error reedmullerenc (1, 2, 3, 4) -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/cosets.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/cosets.m -***** error cosets () -***** error cosets (1, 2, 3) -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/poly2trellis.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/poly2trellis.m -***** test - T = struct ("numInputSymbols", 2, "numOutputSymbols", 4, "numStates", 8, "nextStates", [0 4; 0 4; 1 5; 1 5; 2 6; 2 6; 3 7; 3 7], "outputs", [0 3; 3 0; 3 0; 0 3; 1 2; 2 1; 2 1; 1 2]); - t = poly2trellis (4, [13 17]); - assert (t, T) - assert (istrellis (t), true) -***** test - t = poly2trellis(3,[7 5],7); - T = struct ("numInputSymbols", 2, "numOutputSymbols", 4, "numStates", 4, "nextStates", [0 2; 2 0; 3 1; 1 3], "outputs", [0 3; 0 3; 1 2; 1 2]); - assert (t, T) - assert (istrellis (t), true) -***** test - t = poly2trellis(5,[37 33],33); - T = struct ("numInputSymbols", 2, "numOutputSymbols", 4, "numStates", 16, "nextStates", [0 8; 8 0; 9 1; 1 9; 2 10; 10 2; 11 3; 3 11; 12 4; 4 12; 5 13; 13 5; 14 6; 6 14; 7 15; 15 7], "outputs", [0 3; 0 3; 0 3; 0 3; 2 1; 2 1; 2 1; 2 1; 0 3; 0 3; 0 3; 0 3; 2 1; 2 1; 2 1; 2 1]); - assert (t, T) - assert (istrellis (t), true) -***** error poly2trellis () -***** error poly2trellis (1, 2, 3) -***** error poly2trellis (1) -***** error poly2trellis (2, 8) -***** error poly2trellis (0, 0) -***** error poly2trellis (2, 0) -***** error poly2trellis (2, 2) -***** error poly2trellis (2, 7) -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/fibodeco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/fibodeco.m -***** assert (fibodeco ({[1 1], [0 1 1], [0 0 1 1], [1 0 1 1]}), [1:4]) -***** assert (fibodeco ({[0 1 0 0 1 1]}), 10) -***** error fibodeco () -***** error fibodeco (1, 2) -4 tests, 4 passed, 0 known failure, 0 skipped -[inst/shannonfanodeco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/shannonfanodeco.m -***** assert (shannonfanodeco (shannonfanoenco (1:4, shannonfanodict (1:4, [0.5 0.25 0.15 0.10])), shannonfanodict (1:4, [0.5 0.25 0.15 0.10])), [1:4], 0) -***** error shannonfanodeco () -***** error shannonfanodeco (1) -***** error shannonfanodeco (1, 2, 3) -***** error shannonfanodeco (1, 2) -***** error shannonfanodeco (2, {}) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/ssbdemod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ssbdemod.m -***** error ssbdemod () -***** error ssbdemod (1) -***** error ssbdemod (1, 2) -***** error ssbdemod (1, 2, 3, 4) -***** error ssbdemod (1, 2, 3, 4, 5) -***** demo - fc=400; - fs=8000; - t=0:(1/fs):0.1; - y=sin(20*pi*t); - y1=ssbmod(y,fc,fs); - y2=ssbdemod(y1,fc,fs); - figure(1) - subplot(3,1,1) - plot(t,y) - subplot(3,1,2) - plot(t,y1) - subplot(3,1,3) - plot(t,y2) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/istrellis.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/istrellis.m -***** test - T = struct ("numInputSymbols", 2, - "numOutputSymbols", 4, - "numStates", 8, - "nextStates", [0 4; 0 4; 1 5; 1 5; 2 6; 2 6; 3 7; 3 7], - "outputs", [0 3; 3 0; 3 0; 0 3; 1 2; 2 1; 2 1; 1 2]); - assert (istrellis (T), true) -***** test - [status, text] = istrellis ([]); - assert (status, false); - assert (isempty (strfind (text, "not a valid trellis")), false) -***** test - [status, text] = istrellis (struct ()); - assert (status, false); - assert (isempty (strfind (text, "not a valid trellis")), false) -***** test - T = struct ("numInputSymbols", 3, - "numOutputSymbols", 4, - "numStates", 0, - "nextStates", zeros (0, 4), - "outputs", zeros (0, 4)); - [status, text] = istrellis (T); - assert (status, false); - assert (isempty (strfind (text, "numInputSymbols")), false) -***** error istrellis () -***** error istrellis (1, 2) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/egolaydec.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/egolaydec.m -***** assert (egolaydec ([1 1 1 zeros(1, 21)]), zeros (1, 24)) -***** assert (egolaydec ([1 0 1 zeros(1, 20) 1]), zeros (1, 24)) -***** error egolaydec () -***** error egolaydec (1) -***** error egolaydec (1, 2) -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/randerr.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/randerr.m -***** shared n, err1, err2, seed, a1, a2, a3, a4, a5, a6 - n = 10; err1 = 2; err2 = [1, 2; 0.7, 0.3] ; seed = 1; - a1 = randerr (n); a2 = randerr (n, n); - a3 = randerr (n, n, err1); a4 = randerr (n, n, err2); - a5 = randerr (n, n, err1, seed); a6 = randerr (n, n, err1, seed); -***** error randerr (n, n, n, n, n); -***** assert (size (a1) == [n, n] && size (a2) == [n, n]); -***** assert (all (sum (a1.') == 1) && all (sum (a2.') == 1)) -***** assert (all ((a1(:) == 1 | a1(:) == 0)) && all ((a2(:) == 1 | a2(:) == 0))) -***** assert (size (a3) == [n, n] && size (a4) == [n, n]); -***** assert (all (sum (a3.') == err1)) -***** assert (all ((a3(:) == 1 | a3(:) == 0))) -***** assert (all ((sum (a4.') == err2(1,1)) | (sum (a4.') == err2(1,2)))) -***** assert (all ((a4(:) == 1 | a4(:) == 0))) -***** assert (a5(:) == a6(:)); -***** error randerr (1, 2, 3, 4, 5) -11 tests, 11 passed, 0 known failure, 0 skipped -[inst/bchpoly.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/bchpoly.m -***** error bchpoly (1) -***** error bchpoly (1, 2, 3, 4, 5) -***** error bchpoly (5, 10) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/rleenco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rleenco.m -***** assert (rleenco ([5 4 4 1 1 1]), [1 5 2 4 3 1]) -***** error rleenco () -***** error rleenco (1, 2) -3 tests, 3 passed, 0 known failure, 0 skipped -[inst/pskmod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/pskmod.m -***** assert (round (pskmod ([0:3], 4, 0, "Bin")), [1 j -1 -j]) -***** assert (round (pskmod ([0:3], 4, 0, "Gray")), [1 j -j -1]) -***** assert <*51560> (size (pskmod ([0:3], 4, pi/4)), [1, 4]) -***** assert <*51560> (size (pskmod ([0:3]', 4, pi/4)), [4, 1]) -***** assert <*51560> (size (pskmod ([0:3; 0:3], 4, pi/4)), [2, 4]) -***** assert <*51560> (size (pskmod (cat(3,[0:3],[0:3]), 4, pi/4)), [1, 4, 2]) -***** assert <*51560> (size (pskmod (cat(3,[0:3]',[0:3]'), 4, pi/4)), [4, 1, 2]) -***** assert <*51560> (size (pskmod (cat(3,[0:3;0:3],[0:3;0:3]), 4, pi/4)), [2, 4, 2]) -***** error pskmod () -***** error pskmod (1) -***** error pskmod (1, 2, 3, 4, 5) -***** error pskmod (1, 2, 3, "invalid") -***** error pskmod (0:7, 4) -13 tests, 13 passed, 0 known failure, 0 skipped -[inst/demodmap.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/demodmap.m -***** error demodmap () -***** error demodmap (1) -***** error demodmap (1, 2) -***** error demodmap (1, 2, 3, "invalid") +[inst/qamdemod.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qamdemod.m +***** error qamdemod () +***** error qamdemod (1) +***** error qamdemod (1, 2) +***** error qamdemod (1, 2, 3) 4 tests, 4 passed, 0 known failure, 0 skipped -[inst/qfuncinv.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qfuncinv.m -***** assert (qfuncinv ([0 0.5 1]), [Inf 0 -Inf]) -***** error qfuncinv () -***** error qfuncinv (1, 2) +[inst/de2bi.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/de2bi.m +***** shared x + x = randi ([0 2^16-1], 100, 1); +***** assert (de2bi (0), 0) +***** assert (de2bi (1), 1) +***** assert (de2bi (uint8(31)), uint8 (ones (1,5))) +***** assert (class(de2bi(uint8(31))), 'uint8') +***** assert (de2bi (255), ones (1, 8)) +***** assert (de2bi (255, [], 256), 255) +***** assert (de2bi (1023, 8, 8), [7 7 7 1 0 0 0 0]) +***** assert (size (de2bi (x, 16)), [100 16]) +***** assert (de2bi (x, 16, "right-msb"), de2bi (x, 16)) +***** assert (de2bi (x, 16, "left-msb"), fliplr (de2bi (x, 16))) +***** assert (de2bi (13, "right-msb"), [1 0 1 1]) +***** assert (de2bi (13, "left-msb"), [1 1 0 1]) +***** assert (de2bi (13, [], "right-msb"), [1 0 1 1]) +***** assert (de2bi (13, [], [], "right-msb"), [1 0 1 1]) +***** error de2bi () +***** error de2bi (1, 2, 3, 4, 5) +***** error de2bi (1, 2, 3, 4) +***** error de2bi (1, 2, 3, "invalid") +***** error de2bi (0.1) +***** error de2bi (-1) +***** error de2bi (5,[],1) +***** error de2bi (5,[],0) +***** error de2bi (5,[],-2) +23 tests, 23 passed, 0 known failure, 0 skipped +[inst/amodce.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/amodce.m +***** error amodce () +***** error amodce (1, 2, "invalid") +***** error amodce (1, 2, "am", 3, 4, 5, 6) 3 tests, 3 passed, 0 known failure, 0 skipped -[inst/lz77deco.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/lz77deco.m -***** demo - lz77deco ([8 2 1 ; 7 3 2 ; 6 7 2 ; 2 8 0], 3, 9, 18) -***** error lz77deco (1, 2, 3, 4) -***** error lz77deco (1, 1, 1, 1) -2 tests, 2 passed, 0 known failure, 0 skipped -[inst/rsgenpoly.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/rsgenpoly.m -***** error rsgenpoly () -***** error rsgenpoly (1) -***** error rsgenpoly (1, 2, 3, 4, 5, 6) -***** error rsgenpoly (1, 2) -***** error rsgenpoly (2, 0) -***** error rsgenpoly (4, 3) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/genqammod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/genqammod.m -***** assert (genqammod ([0:7], [-7:2:7]), [-7:2:7]) -***** assert (genqammod ([0:7], [-7 -5 -1 -3 7 5 1 3]), [-7 -5 -1 -3 7 5 1 3]) -***** error genqammod () -***** error genqammod (1) -***** error genqammod (1, 2, 3) -***** error genqammod (10, -7:2:7) -6 tests, 6 passed, 0 known failure, 0 skipped -[inst/pammod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/pammod.m -***** assert (round (pammod ([0:7], 8, 0, "Bin")), [-7:2:7]) -***** assert (round (pammod ([0:7], 8, 0, "Gray")), [-7 -5 -1 -3 7 5 1 3]) -***** error pammod () -***** error pammod (1) -***** error pammod (1, 2, 3, "invalid") -5 tests, 5 passed, 0 known failure, 0 skipped -[inst/ammod.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/ammod.m -***** error ammod () -***** error ammod (1) -***** error ammod (1, 2) -***** error ammod (1, 2, 3, 4) -***** error ammod (pi/2, 100, 10) -***** demo - ## carrier Frequency - fc = 200; - - ## sampling frequency - fs= 4000; - - ## time Duration - t = (0 : 1 ./ fs : 1); - - ## sine Wave with time duration of 't' - x = sin (2 .* pi .* t); - - ## Amplitude Modulation - y = ammod (x, fc, fs); - - plot(y); - title('Amplitude Modulation'); - xlabel('Time(sec)'); - ylabel('Amplitude'); +[inst/hammgen.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/hammgen.m +***** error hammgen () +***** error hammgen (1, 2, 3) +***** error hammgen (1) +***** error hammgen (20) +***** error hammgen (3, 4) 5 tests, 5 passed, 0 known failure, 0 skipped -[inst/encode.m] ->>>>> /build/reproducible-path/octave-communications-1.2.6/inst/encode.m -***** error encode () -***** error encode (1) -***** error encode (1, 2) -***** error encode (1, 2, 3, 4, 5, 6) -***** error decode (1, 2, 3) -***** error decode (1, 5, 6) -***** error decode (1, 5, 3, "invalid") -7 tests, 7 passed, 0 known failure, 0 skipped +[inst/qaskenco.m] +>>>>> /build/reproducible-path/octave-communications-1.2.6/inst/qaskenco.m +***** error qaskenco () +***** error qaskenco (1, 2, 3) +***** error qaskenco (0:7, 3) +3 tests, 3 passed, 0 known failure, 0 skipped Checking C++ files ... -[src/isprimitive.cc] ->>>>> /build/reproducible-path/octave-communications-1.2.6/src/isprimitive.cc -***** error isprimitive () -***** error isprimitive (1, 2) -2 tests, 2 passed, 0 known failure, 0 skipped -[src/syndtable.cc] ->>>>> /build/reproducible-path/octave-communications-1.2.6/src/syndtable.cc -***** error syndtable () -***** error syndtable (1, 2) -***** error syndtable ([1 2]) +[src/cyclgen.cc] +>>>>> /build/reproducible-path/octave-communications-1.2.6/src/cyclgen.cc +***** error cyclgen () +***** error cyclgen (1) +***** error cyclgen (1, 2, 3, 4) +3 tests, 3 passed, 0 known failure, 0 skipped +[src/cyclpoly.cc] +>>>>> /build/reproducible-path/octave-communications-1.2.6/src/cyclpoly.cc +***** error cyclpoly () +***** error cyclpoly (1) +***** error cyclpoly (1, 2, 3, 4, 5) 3 tests, 3 passed, 0 known failure, 0 skipped [src/__errcore__.cc] >>>>> /build/reproducible-path/octave-communications-1.2.6/src/__errcore__.cc @@ -4686,14 +4724,6 @@ ***** error __errcore__ (1, 2, 3) ***** error __errcore__ ([1 2], 3) 4 tests, 4 passed, 0 known failure, 0 skipped -[src/primpoly.cc] ->>>>> /build/reproducible-path/octave-communications-1.2.6/src/primpoly.cc -***** error primpoly () -***** error primpoly (1, 2, 3, 4) -***** error primpoly (1, "invalid") -***** error primpoly (1, 2, "invalid") -***** error primpoly (1, "nodisplay", "invalid") -5 tests, 5 passed, 0 known failure, 0 skipped [src/genqamdemod.cc] >>>>> /build/reproducible-path/octave-communications-1.2.6/src/genqamdemod.cc ***** assert (genqamdemod ([-7:2:7], [-7:2:7]), [0:7]) @@ -4707,18 +4737,14 @@ ***** error __gfweight__ () ***** error __gfweight__ (1, 2) 2 tests, 2 passed, 0 known failure, 0 skipped -[src/cyclgen.cc] ->>>>> /build/reproducible-path/octave-communications-1.2.6/src/cyclgen.cc -***** error cyclgen () -***** error cyclgen (1) -***** error cyclgen (1, 2, 3, 4) -3 tests, 3 passed, 0 known failure, 0 skipped -[src/cyclpoly.cc] ->>>>> /build/reproducible-path/octave-communications-1.2.6/src/cyclpoly.cc -***** error cyclpoly () -***** error cyclpoly (1) -***** error cyclpoly (1, 2, 3, 4, 5) -3 tests, 3 passed, 0 known failure, 0 skipped +[src/primpoly.cc] +>>>>> /build/reproducible-path/octave-communications-1.2.6/src/primpoly.cc +***** error primpoly () +***** error primpoly (1, 2, 3, 4) +***** error primpoly (1, "invalid") +***** error primpoly (1, 2, "invalid") +***** error primpoly (1, "nodisplay", "invalid") +5 tests, 5 passed, 0 known failure, 0 skipped [src/gf.cc] >>>>> /build/reproducible-path/octave-communications-1.2.6/src/gf.cc ***** error isgalois () @@ -4773,6 +4799,17 @@ ***** error bchdeco (1, 2) ***** error bchdeco (1, 2, 3, 4, 5, 6) 51 tests, 51 passed, 0 known failure, 0 skipped +[src/isprimitive.cc] +>>>>> /build/reproducible-path/octave-communications-1.2.6/src/isprimitive.cc +***** error isprimitive () +***** error isprimitive (1, 2) +2 tests, 2 passed, 0 known failure, 0 skipped +[src/syndtable.cc] +>>>>> /build/reproducible-path/octave-communications-1.2.6/src/syndtable.cc +***** error syndtable () +***** error syndtable (1, 2) +***** error syndtable ([1 2]) +3 tests, 3 passed, 0 known failure, 0 skipped Done running the unit tests. Summary: 587 tests, 587 passed, 0 known failures, 0 skipped dh_install -O--buildsystem=octave @@ -4797,14 +4834,14 @@ dh_gencontrol -O--buildsystem=octave dpkg-gencontrol: warning: package octave-communications: substitution variable ${octave:Depends} unused, but is defined dpkg-gencontrol: warning: package octave-communications: substitution variable ${octave:Upstream-Description} unused, but is defined +dpkg-gencontrol: warning: package octave-communications-common: substitution variable ${octave:Upstream-Description} unused, but is defined dpkg-gencontrol: warning: package octave-communications: substitution variable ${octave:Depends} unused, but is defined dpkg-gencontrol: warning: package octave-communications: substitution variable ${octave:Upstream-Description} unused, but is defined -dpkg-gencontrol: warning: package octave-communications-common: substitution variable ${octave:Upstream-Description} unused, but is defined dh_md5sums -O--buildsystem=octave dh_builddeb -O--buildsystem=octave +dpkg-deb: building package 'octave-communications-dbgsym' in '../octave-communications-dbgsym_1.2.6-3_amd64.deb'. dpkg-deb: building package 'octave-communications' in '../octave-communications_1.2.6-3_amd64.deb'. dpkg-deb: building package 'octave-communications-common' in '../octave-communications-common_1.2.6-3_all.deb'. -dpkg-deb: building package 'octave-communications-dbgsym' in '../octave-communications-dbgsym_1.2.6-3_amd64.deb'. dpkg-genbuildinfo --build=binary -O../octave-communications_1.2.6-3_amd64.buildinfo dpkg-genchanges --build=binary -O../octave-communications_1.2.6-3_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -4813,12 +4850,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/1309707/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/1309707/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/3748905 and its subdirectories -I: Current time: Mon Oct 21 09:38:28 -12 2024 -I: pbuilder-time-stamp: 1729546708 +I: removing directory /srv/workspace/pbuilder/1309707 and its subdirectories +I: Current time: Mon Nov 24 18:07:09 +14 2025 +I: pbuilder-time-stamp: 1763957229