32 lines
964 B
Matlab
Executable File
32 lines
964 B
Matlab
Executable File
function [Y_TLH,Z_TLH,asseY_TLH,asseZ_TLH,AlfaX_TLH,AlfaY_TLH] = CalcoloBiax_TLH(...
|
|
SpeTLH,PsTLH,ii,jj,ax,ay,asseY_TLH,asseZ_TLH,Y_TLH,Z_TLH,...
|
|
elab_option,AlfaX_TLH,AlfaY_TLH)
|
|
|
|
% calcolo il coseno dell'angolo di inclinazione
|
|
cosBeta = (1 - ax(ii,jj).^2).^0.5;
|
|
Yi = -1*(SpeTLH(ii)-abs(SpeTLH(ii)*cosBeta));
|
|
% Spostamento lungo l'asse Z registrato dal nodo i
|
|
if elab_option == -1 % Arco Rovescio
|
|
Zi = SpeTLH(ii)*ax(ii,jj);
|
|
elseif elab_option == 1 % Calotta
|
|
Zi = -1*SpeTLH(ii)*ax(ii,jj);
|
|
end
|
|
|
|
% Rollio
|
|
AlfaX_TLH(ii,jj) = asind(ay(ii,jj));
|
|
AlfaY_TLH(ii,jj) = asind(ax(ii,jj));
|
|
|
|
% Matrici singoli spostamenti
|
|
asseY_TLH(ii,jj) = Yi;
|
|
asseZ_TLH(ii,jj) = Zi;
|
|
|
|
if ii==1
|
|
Y_TLH (ii,jj) = PsTLH(ii,1) + asseY_TLH(ii,jj);
|
|
Z_TLH (ii,jj) = asseZ_TLH(ii,jj);
|
|
else
|
|
Y_TLH(ii,jj) = PsTLH(ii,1) + asseY_TLH(ii,jj) + Y_TLH(ii-1,jj) - PsTLH(ii-1,1);
|
|
Z_TLH(ii,jj) = Z_TLH(ii-1,jj) + asseZ_TLH(ii,jj);
|
|
end
|
|
|
|
end
|