function [STRESS, BU, ALPHA, EP, D]=MULPLAST(MP,D,L,B,ALPHA,EP,LTAN) %****************************************************************************** % Multiplicative plasticity with linear combined hardening % %****************************************************************************** %% % IDEN=[1 1 1]'; TWO3=2/3; STWO3=sqrt(TWO3); EPS=1E-12*[0 1 2]'; % Constants MU=MP(2); BETA=MP(3); H=MP(4); Y0=MP(5); % Material properties R=inv(eye(3)-L); % Inc. deformation gradient BM=[B(1) B(4) B(6);B(4) B(2) B(5);B(6) B(5) B(3)]; % Previous left C-G tensor BM=R*BM*R'; % Trial elastic left C-G tensor B=[BM(1,1) BM(2,2) BM(3,3) BM(1,2) BM(2,3) BM(1,3)]'; % Voigt notation [V,P]=eig(BM); % Eigenvalues & eigenvectors % EIGEN=sort(real([P(1,1) P(2,2) P(3,3)]))'; % Principal stretches % EIGEN=sort(EIGEN+EPS*(rand(1,3)-0.5)); % Perturb duplicated eigenvalues % M=zeros(6,3); % Eigenvector matrices M = N*N' % for K=1:3 % Store 3 eigenvect matrices in Voigt notation % KB=1+mod(K,3); % KC=1+mod(KB,3); % DA=1/((EIGEN(KB)-EIGEN(K))*(EIGEN(KC)-EIGEN(K))); % M(1,K)=((B(1)-EIGEN(KB))*(B(1)-EIGEN(KC))+B(4)*B(4)+B(6)*B(6))*DA; % M(2,K)=((B(2)-EIGEN(KB))*(B(2)-EIGEN(KC))+B(4)*B(4)+B(5)*B(5))*DA; % M(3,K)=((B(3)-EIGEN(KB))*(B(3)-EIGEN(KC))+B(5)*B(5)+B(6)*B(6))*DA; % M(4,K)=(B(4)*(B(1)-EIGEN(KB)+B(2)-EIGEN(KC))+B(5)*B(6))*DA; % M(5,K)=(B(5)*(B(2)-EIGEN(KB)+B(3)-EIGEN(KC))+B(4)*B(6))*DA; % M(6,K)=(B(6)*(B(3)-EIGEN(KB)+B(1)-EIGEN(KC))+B(4)*B(5))*DA; % end EIGEN=[P(1,1); P(2,2); P(3,3)]+EPS; % Square of principal stretches M=[V(1,:).^2; V(2,:).^2; V(3,:).^2; % Eigenvector matrices M = N*N' V(1,:).*V(2,:); V(2,:).*V(3,:); V(1,:).*V(3,:)]; % DEPS=0.5*log(EIGEN); % Logarithmic principal strains SIGTR=D*DEPS; % Trial principal stress ETA=SIGTR - ALPHA - sum(SIGTR)*IDEN/3; % Shifted stress ETAT=norm(ETA); % Norm of shifted stress FYLD=ETAT - STWO3*(Y0+(1-BETA)*H*EP); %trial yield function if FYLD