32 lines
1.1 KiB
Matlab
Executable File
32 lines
1.1 KiB
Matlab
Executable File
function [Y_TLHRH,Z_TLHRH,asseY_TLHRH,asseZ_TLHRH,AlfaX_TLHRH,AlfaY_TLHRH] = CalcoloBiax_TLHRH(...
|
|
SpeTLHRH,PsTLHRH,ii,jj,ax,ay,asseY_TLHRH,asseZ_TLHRH,Y_TLHRH,Z_TLHRH,...
|
|
calotta_base,AlfaX_TLHRH,AlfaY_TLHRH)
|
|
|
|
% calcolo il coseno dell'angolo di inclinazione
|
|
Yi = -1*(SpeTLHRH(ii,1) - SpeTLHRH(ii,1) * cos(ax(ii,jj))); % SP*cos(alfa)
|
|
% Spostamento lungo l'asse Z registrato dal nodo i
|
|
if calotta_base == -1 % Arco Rovescio
|
|
Zi = SpeTLHRH(ii,1) * sin(ax(ii,jj)); % SP*sin(alfa)
|
|
elseif calotta_base == 1 % Calotta
|
|
Zi = -1*SpeTLHRH(ii)*sin(ax(ii,jj));
|
|
end
|
|
|
|
% Rollio
|
|
AlfaX_TLHRH(ii,jj) = ay(ii,jj)/0.01745329251994329576923690768489; % Torno in gradi
|
|
% Inclinazione
|
|
AlfaY_TLHRH(ii,jj) = ax(ii,jj)/0.01745329251994329576923690768489;
|
|
|
|
% Matrici singoli spostamenti
|
|
asseY_TLHRH(ii,jj) = Yi;
|
|
asseZ_TLHRH(ii,jj) = Zi;
|
|
|
|
if ii==1
|
|
Y_TLHRH (ii,jj) = PsTLHRH(ii) + asseY_TLHRH(ii,jj);
|
|
Z_TLHRH (ii,jj) = asseZ_TLHRH(ii,jj);
|
|
else
|
|
Y_TLHRH(ii,jj) = PsTLHRH(ii,1) + asseY_TLHRH(ii,jj) + Y_TLHRH(ii-1,jj) - PsTLHRH(ii-1,1);
|
|
Z_TLHRH(ii,jj) = Z_TLHRH(ii-1,jj) + asseZ_TLHRH(ii,jj);
|
|
end
|
|
|
|
end
|