comparison convergenceTable.m @ 439:2663be328d9a

Improve interface of convergenceTable()
author Jonatan Werpers <jonatan@werpers.com>
date Mon, 13 Mar 2017 14:34:56 +0100
parents 6a5e94bb5e13
children
comparison
equal deleted inserted replaced
436:51d818bc8915 439:2663be328d9a
1 function convergenceTable(methodName, T, orders, m, e, q, tableType) 1 function convergenceTable(caption, orders, m, e, q, tableType)
2 default_arg('tableType','plaintext') 2 default_arg('tableType','plaintext')
3 3
4 switch tableType 4 switch tableType
5 case {'plaintext','text','plain'} 5 case {'plaintext','text','plain'}
6 plainTextTable(methodName, T, orders, m, e, q); 6 plainTextTable(caption, orders, m, e, q);
7 case {'tex', 'latex'} 7 case {'tex', 'latex'}
8 latexTable(methodName, T, orders, m, e, q); 8 latexTable(caption, orders, m, e, q);
9 end 9 end
10 end 10 end
11 11
12 function plainTextTable(methodName, T, orders, m, e, q) 12 function plainTextTable(caption, orders, m, e, q)
13 13
14 14
15 eW = 0; 15 eW = 0;
16 qW = 0; 16 qW = 0;
17 for i = 1:length(orders) 17 for i = 1:length(orders)
21 end 21 end
22 22
23 mW = findFieldWidth('%d',m); 23 mW = findFieldWidth('%d',m);
24 orderHeaderWidth = eW + qW + 1; 24 orderHeaderWidth = eW + qW + 1;
25 25
26 fprintf('method: %s\nT: %d\n',methodName, T); 26 fprintf('%s\n',caption);
27 27
28 % Print order headers 28 % Print order headers
29 fprintf(' %*s |',mW,'') 29 fprintf(' %*s |',mW,'')
30 for i = 1:length(orders) 30 for i = 1:length(orders)
31 fprintf(' %-*s |', orderHeaderWidth, sprintf('Order %d', orders{i})); 31 fprintf(' %-*s |', orderHeaderWidth, sprintf('Order %d', orders{i}));
67 67
68 fprintf('\n'); 68 fprintf('\n');
69 69
70 end 70 end
71 71
72 function latexTable(methodName, T, orders, m, e, q) 72 function latexTable(caption, orders, m, e, q)
73 73
74 nOrders = length(orders); 74 nOrders = length(orders);
75 75
76 header = { 76 header = {
77 '\begin{table}[H]' 77 '\begin{table}[H]'
83 '\hline' 83 '\hline'
84 }; 84 };
85 85
86 footer = { 86 footer = {
87 '\end{tabular}' 87 '\end{tabular}'
88 '\caption{Error $l_2$, and convergence rate, $q$, for SBP operators of orders 4 and 6 at different grid densities $N$. PROBLEM DESCRIPTION.}' 88 ['\caption{' caption '}']
89 '\label{table:LABEL}' 89 '\label{table:LABEL}'
90 '\end{table}' 90 '\end{table}'
91 }; 91 };
92 92
93 data = cell(1,length(m)); 93 data = cell(1,length(m));