function [Y_PCL,Z_PCL,asseY_PCL,asseZ_PCL,AlfaX_PCL,AlfaY_PCL] = CalcoloBiax_PCL(SpePCL,... ii,jj,ax,ay,asseY_PCL,asseZ_PCL,Y_PCL,Z_PCL,... AlfaX_PCL,AlfaY_PCL,elab_option,rPCL,IDcentralina,DTcatena) if elab_option == 1 % Punto fisso a fondo foro % calcolo il coseno dell'angolo di inclinazione cosBeta = (1 - ax(ii,jj).^2).^0.5; Yi = -1*SpePCL(ii)*cosBeta; % -1 per adattare il segno di CosBeta. le progressive sono da fare a ritroso % Spostamento lungo l'asse Z registrato dal nodo i Zi = SpePCL(ii)*ax(ii,jj); % -1 per adattare il segno % Rollio AlfaX_PCL(ii,jj) = asind(ay(ii,jj)); % Inclinazione AlfaY_PCL(ii,jj) = -1*asind(ax(ii,jj)); % Matrici singoli spostamenti asseY_PCL(ii,jj) = Yi; asseZ_PCL(ii,jj) = Zi; if ii==1 Y_PCL (ii,jj) = Yi; Z_PCL (ii,jj) = asseZ_PCL(ii,jj); else Y_PCL(ii,jj) = Y_PCL(ii-1,jj) + Yi; Z_PCL(ii,jj) = Z_PCL(ii-1,jj) + asseZ_PCL(ii,jj); end elseif elab_option == -1 % Punto fisso nella sezione % calcolo il coseno dell'angolo di inclinazione cosBeta = (1 - ax(rPCL-ii+1,jj).^2).^0.5; Yi = SpePCL(rPCL-ii+1)*cosBeta; %Le progressive sono da fare ad avanzamento % Spostamento lungo l'asse Z registrato dal nodo i if strcmp(IDcentralina,'ID0068') && strcmp(DTcatena,'DT0106') Zi = SpePCL(rPCL-ii+1)*ax(rPCL-ii+1,jj); else Zi = -1*SpePCL(rPCL-ii+1)*ax(rPCL-ii+1,jj); end % Rollio AlfaX_PCL(rPCL-ii+1,jj) = asind(ay(rPCL-ii+1,jj)); % Inclinazione AlfaY_PCL(rPCL-ii+1,jj) = -1*asind(ax(rPCL-ii+1,jj)); % Matrici singoli spostamenti asseY_PCL(rPCL-ii+1,jj) = Yi; asseZ_PCL(rPCL-ii+1,jj) = Zi; if ii==1 Y_PCL (rPCL-ii+1,jj) = Yi; Z_PCL (rPCL-ii+1,jj) = asseZ_PCL(rPCL-ii+1,jj); else Y_PCL(rPCL-ii+1,jj) = Y_PCL(rPCL-ii+2,jj) + Yi; Z_PCL(rPCL-ii+1,jj) = Z_PCL(rPCL-ii+2,jj) + asseZ_PCL(rPCL-ii+1,jj); end end end