forked from wozy13/DIAMOND
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathautomacplot.m
73 lines (58 loc) · 1.7 KB
/
automacplot.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
function automacplot(haxes,realmodes)
%
% Name: automacplot
%
% Usage: automacplot(haxes,realmodes)
%
%
% Description:
% Plots the AUTOMAC of the current Modal Set
%
%
% Version SWD970805
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% This matlab source code was originally %
% developed as part of "DIAMOND" at %
% Los Alamos National Laboratory. It may %
% be copied, modified, and distributed in %
% any form, provided: %
% a) This notice accompanies the files and %
% appears near the top of all source %
% code files. %
% b) No payment or commercial services are %
% received in exchange for the code. %
% %
% Original copyright is reserved by the %
% Regents of the University of California, %
% in addition to Scott W. Doebling, Phillip %
% J. Cornwell, Erik G. Straser, and Charles %
% R. Farrar. %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ndof = length(realmodes{1});
nmodes = length(realmodes);
Phi = zeros(ndof,nmodes);
for i = 1:nmodes,
Phi(:,i) = realmodes{i}';
end
%
% Compute the MAC
%
MACPHI = mac(Phi,Phi);
%
% Generate xfp and yfp
%
nmodplot=size(Phi,2);
xvalues = [1:nmodplot];
yvalues = [1:nmodplot];
xfp=ones(length(yvalues),1)*xvalues;
yfp=yvalues'*ones(1,length(xvalues));
%
% Draw the plot
%
bar3D(xfp,yfp,MACPHI,'Mode Number','Mode Number','AUTOMAC',-1,haxes);
set(haxes,'XLim',[0 nmodplot+1],'Xtick',[1:nmodplot],'YLim',[0 nmodplot+1],...
'Ytick',[1:nmodplot],'Zlim',[0 1])
set(haxes,'box','on')
rotate3d on
return