浏览代码

add script to generate all AES paper figures in color or mono

Fernando Pablo Lopez-Lezcano 10 年之前
父节点
当前提交
feb7638b5e
共有 1 个文件被更改,包括 78 次插入 和 0 次删除
  1. 78 0
      make_figures_aes.m

+ 78 - 0
make_figures_aes.m

@@ -0,0 +1,78 @@
+%%
+%% Make all figures for the AES paper
+%%
+%% Copyright Fernando Lopez-Lezcano 2016
+%% nando@ccrma.stanford.edu
+
+function make_figures_aes(col)
+
+  %% start from scratch and load common functions
+  close all;
+  clear all;
+  sphear_common;
+
+  global AESDIR = "../papers/AES_SFCconf2016/AES_SFCconf2016_template_abstractOnly/";
+
+  %% select color or mono
+%  if (! exist(col))
+%    col = 0;
+%  end
+%  if (col == 1)
+    %% color figures
+%    cext = "_color";
+%    copt = "epsc";
+%  else
+    %% mono figures
+    cext = "_mono";
+    copt = "eps";
+%  end
+  
+  %% frequency response with just A2B matrices
+  [F FE Fs A2BF] = sphear_a2b_all((1:16), 300, 20000, 3, 256, 32);
+  FIR = sphear_fir_design(F, A2BF, 256, 20, Fs, 24000, copt);
+  sphear_fir_render(FIR, 300, 20000, 256, 32, 8192, copt);
+  close all;
+
+  system(["cp -p figures/sphear_bf_azimuth_000" cext ".eps " AESDIR "sphear_bf_azimuth_000_a2b_all.eps"]);
+  system(["cp -p figures/sphear_bf_azimuth_045" cext ".eps " AESDIR "sphear_bf_azimuth_045_a2b_all.eps"]);
+
+  %% frequency response with just the A2B matrices and limit frequency
+  FIR = sphear_fir_design(F, A2BF, 256, 20, Fs, 4000, copt);
+  sphear_fir_render(FIR, 300, 20000, 256, 32, 8192, copt);
+  close all;
+
+  system(["cp -p figures/sphear_bf_azimuth_000" cext ".eps " AESDIR "sphear_bf_azimuth_000_a2b.eps"]);
+  system(["cp -p figures/sphear_bf_azimuth_045" cext ".eps " AESDIR "sphear_bf_azimuth_045_a2b.eps"]);
+  system(["cp -p figures/wxyz_filter_lf" cext ".eps " AESDIR "wxyz_filter_lf_a2b.eps"]);
+
+  %% and now design the full filter, on-axis averaging only
+  FIR = sphear_fir_design(F, A2BF, 256, 20, Fs, 4000, 0);
+  sphear_fir_render(FIR, 300, 20000, 256, 32, 8192, 0);
+  [B] = sphear_a2b_fir_all(300, 20000, 3, 8192, 48000, 0);
+  [W X Y Z] = sphear_fir_extract(B, 0, 1);
+  FIR = sphear_fir_design(F, A2BF, 256, 20, Fs, 4000, copt, W, X, Y);
+  sphear_fir_render(FIR, 300, 20000, 256, 32, 8192, copt);
+  sphear_fir_render_directions(FIR, 300, 20000, 256, 32, 4096, copt);
+  close all;
+
+  system(["cp -p figures/sphear_bf_azimuth_000" cext ".eps " AESDIR "sphear_bf_azimuth_000.eps"]);
+  system(["cp -p figures/sphear_bf_azimuth_045" cext ".eps " AESDIR "sphear_bf_azimuth_045.eps"]);
+  system(["cp -p figures/wxyz_filter_ff" cext ".eps " AESDIR "wxyz_filter_ff.eps"]);
+  system(["cp -p figures/sphear_directions.eps " AESDIR "sphear_directions_onaxis.eps"]);
+
+  %% and again with all angles averaging
+  FIR = sphear_fir_design(F, A2BF, 256, 20, Fs, 4000, 0);
+  sphear_fir_render(FIR, 300, 20000, 256, 32, 8192, 0);
+  [B] = sphear_a2b_fir_all(300, 20000, 3, 8192, 48000, 0);
+  [W X Y Z] = sphear_fir_extract(B, 1, 1);
+  FIR = sphear_fir_design(F, A2BF, 256, 20, Fs, 4000, copt, W, X, Y);
+  sphear_fir_render(FIR, 300, 20000, 256, 32, 8192, copt);
+  sphear_fir_render_directions(FIR, 300, 20000, 256, 32, 4096, copt);
+  close all;
+
+  system(["cp -p figures/sphear_bf_azimuth_000" cext ".eps " AESDIR "sphear_bf_azimuth_000_all.eps"]);
+  system(["cp -p figures/sphear_bf_azimuth_045" cext ".eps " AESDIR "sphear_bf_azimuth_045_all.eps"]);
+  system(["cp -p figures/wxyz_filter_ff" cext ".eps " AESDIR "wxyz_filter_ff_all.eps"]);
+  system(["cp -p figures/sphear_directions.eps " AESDIR "sphear_directions_all.eps"]);
+
+end