diff options
Diffstat (limited to 'octave/plnlp.m')
| -rw-r--r-- | octave/plnlp.m | 134 |
1 files changed, 0 insertions, 134 deletions
diff --git a/octave/plnlp.m b/octave/plnlp.m deleted file mode 100644 index 01b4931..0000000 --- a/octave/plnlp.m +++ /dev/null @@ -1,134 +0,0 @@ -% Copyright David Rowe 2009 -% This program is distributed under the terms of the GNU General Public License -% Version 2 -% -% Plot NLP states from dump files. - -function plnlp(samname, f) - - sn_name = strcat(samname,"_sn.txt"); - Sn = load(sn_name); - - sw_name = strcat(samname,"_sw.txt"); - Sw = load(sw_name); - - fw_name = strcat(samname,"_fw.txt"); - if (file_in_path(".",fw_name)) - fw = load(fw_name); - endif - - e_name = strcat(samname,"_e.txt"); - if (file_in_path(".",e_name)) - e = load(e_name); - endif - - p_name = strcat(samname,".p"); - if (file_in_path(".",p_name)) - p = load(p_name); - endif - - sq_name = strcat(samname,"_sq.txt"); - if (file_in_path(".",sq_name)) - sq = load(sq_name); - endif - - dec_name = strcat(samname,"_dec.txt"); - if (file_in_path(".",dec_name)) - dec = load(dec_name); - endif - - do - figure(1); - clf; - s = [ Sn(2*f-1,:) Sn(2*f,:) ]; - plot(s, ";Sn;"); - grid - axis([1 length(s) -20000 20000]); - - figure(2); - plot((0:255)*4000/256, Sw(f,:),";Sw;"); - grid - axis([1 4000 -10 80]); - hold on; - - f0 = 8000/p(f); - Wo = 2*pi/p(f); - L = floor(pi/Wo); - f0_label = sprintf("b;P=%3.1f F0=%3.0f;",p(f),f0); - for m=1:L-1 - plot([ m*Wo*4000/pi m*Wo*4000/pi], [10 60], 'b'); - endfor - plot([ L*Wo*4000/pi L*Wo*4000/pi], [10 60], f0_label); - - hold off; - - if (file_in_path(".",fw_name)) - figure(3); - if (file_in_path(".",e_name)) - subplot(211); - endif - plot((0:255)*800/256, fw(f,:)/max(fw(f,:)), ";Fw;"); - axis([1 400 0 1]); - if (file_in_path(".",e_name)) - subplot(212); - e_concat = [ e(2*f-1,:) e(2*f,:) ]; - plot(e_concat(1:400)/max(e_concat(1:400)), "+;MBE E(f);"); - axis([1 400 0 1]); - endif - endif - - if (file_in_path(".",sq_name)) - figure(4); - sq_concat = [ sq(2*f-1,:) sq(2*f,:) ]; - axis - plot(sq_concat, ";sq;"); - endif - - if (file_in_path(".",dec_name)) - figure(5); - plot(dec(f,:), ";dec;"); - endif - - figure(2); - - % interactive menu - - printf("\rframe: %d menu: n-next b-back p-png q-quit ", f); - fflush(stdout); - k = kbhit(); - if (k == 'n') - f = f + 1; - endif - if (k == 'b') - f = f - 1; - endif - - % optional print to PNG - - if (k == 'p') - - pngname = sprintf("%s_%d",samname,f); - - % small image - - __gnuplot_set__ terminal png size 420,300 - ss = sprintf("__gnuplot_set__ output \"%s.png\"", pngname); - eval(ss) - replot; - - % larger image - - __gnuplot_set__ terminal png size 800,600 - ss = sprintf("__gnuplot_set__ output \"%s_large.png\"", pngname); - eval(ss) - replot; - - % for some reason I need this to stop large plot getting wiped - __gnuplot_set__ output "/dev/null" - - endif - - until (k == 'q') - printf("\n"); - -endfunction |
