Вы находитесь на странице: 1из 1

24/1/12 6:41 PM

F:\Prabhu M\Research\Matlab\Code\Dependent_rot...\Polardecomp.m

1 of 1

%**************************************
% Pure rotation by polar decomposition
% Author: Prabhu M
% Ref: Continuum mechanics
% Notes: This code obtains the pure rotation component of a deformation
% gradient tensor through Polar decomposition theorem of Cauchy which says
% that F=R.U
%**************************************
clear all;
clc;
% %% Trial values
% % Undeformed nodal position
% X1=rand(1,3);
% X2=rand(1,3);
% % Deformed nodal position
% x1=X1+rand(1,3);
% x2=X2+rand(1,3);
% % Displacement field
% u1=x1-X1;
% u2=x2-X2;
% % Displacement gradient tensor
% delu=[(u1(1)-u2(1))/(X1(1)-X2(1)) (u1(1)-u2(1))/(X1(2)-X2(2)) (u1(1)-u2(1))/(X1(3)-X2
(3));
%
(u1(2)-u2(2))/(X1(1)-X2(1)) (u1(2)-u2(2))/(X1(2)-X2(2)) (u1(2)-u2(2))/(X1(3)-X2
(3));
%
(u1(3)-u2(3))/(X1(1)-X2(1)) (u1(3)-u2(3))/(X1(2)-X2(2)) (u1(3)-u2(3))/(X1(3)-X2
(3))];
% F=ones(3,3)+delu;
%%
% Deformation gradient tensor
% F=rand(3,3);
% F=1/4*[1 -5;8 4];
F=[3 2 0;2 -1 0; 0 0 1];
% Right Cauchy Green strain tensor
C=transpose(F)*F;
% Eigenvalue and Eigenvectors of C
[N, lambda]=eig(C);
% Stretch tensor
U=zeros(size(N));
for i=1:size(lambda,1)
U=U+sqrt(lambda(i,i)).*(N(i,:)'*N(i,:));
end
% Compute rotation tensor
R=F/U;

Похожие интересы