clear all;
close all;
M = importdata('6x300_input_data.txt');
u = M.data(:,3);
v = M.data(:,4);
w = M.data(:,5);
t_in = M.data(:,6);
lambda = -60;
omega = 0.004;
phi = 30;
UVW = [u,v,w];
A = arrayfun(@(t_in)[ -sind(lambda - omega*t_in) cosd(lambda - omega*t_in) 0;
-sind(phi)*cosd(lambda-omega*t_in) -sind(phi)*sind(lambda - omega*t_in) cosd(phi);
cosd(phi)*cosd(lambda - omega*t_in) cosd(phi)*sind(lambda - omega*t_in) sind(phi)],t_in,'UniformOutput',false);
C = A{1,1}*UVW(1,:)'
D = A{2,1}*UVW(2,:)'
E = A{3,1}*UVW(3,:)'
F = A{4,1}*UVW(4,:)'
G = A{5,1}*UVW(5,:)'
H = A{6,1}*UVW(6,:)'
disp(C:H);
a = A{2,1}(:);
b = repmat(UVW(2,:),3,1);
b = b(:);
p = a.*b;
A_hat = [ -sind(lambda - omega*t_in), ...
cosd(lambda - omega*t_in), ...
zeros(size(t_in)), ...
-sind(phi)*cosd(lambda-omega*t_in), ...
-sind(phi)*sind(lambda - omega*t_in), ...
ones(size(t_in))*cosd(phi), ...
cosd(phi)*cosd(lambda - omega*t_in), ...
cosd(phi)*sind(lambda - omega*t_in), ...
ones(size(t_in))*sind(phi)];
B_hat = repmat(UVW,1,3);
P = A_hat .* B_hat;
output = [sum(P(:,1:3),2), sum(P(:,4:6),2), sum(P(:,7:9),2)].';
disp('output(:,1) - C:');
disp(output(:,1) - C);
disp('output(:,2) - D:');
disp(output(:,2) - D);
disp('output(:,3) - E:');
disp(output(:,3) - E);
disp('output(:,4) - F:');
disp(output(:,4) - F);
disp('output(:,5) - G:');
disp(output(:,5) - G);
disp('output(:,6) - H:');
disp(output(:,6) - H);
Best Answer