function values = uniaxial_t2_zero() % performs a uniaxial extension of a material element based on % the Boal and Discher constitutive equation. A range of lamda1's are % defined and lamda2 is calculated based on zero tau2. Then tau 1 is % calculated for the paired lam1, lam2. The % returned values are a 3x51 array of lam2 and tau1 as functions of lamda1 % values = (lamda1, lam2, tau1) %Lmax = [200 190 180 170 160 150 145 140 135 130]; %These are actually values for b, notb/s0. Bovers0620 = [8.03 9.05 10.61 12.58 15.54 20.67 24.19 29.54 37.12 48.52]; Bovers0619 = [8.71 9.82 11.39 13.63 16.71 22.30 26.26 31.19 39.86 52.36]; Bovers0618 = [8.45 9.48 11.16 13.34 16.26 21.80 25.58 30.82 39.99 55.07]; tanktreadingdata=[28.6 1.22 2.81 7.07 1.12 3.70 6.22 114.3 1.49 4.81 29.6 1.32 5.40 27.7 171.4 1.56 6.06 45.9 1.39 6.38 43.9 228.6 1.60 7.23 65.1 1.44 7.51 61.2 285.7 1.64 8.26 81.6 1.45 8.95 78.1]; npts = 51; % % Define constitutive coefficients, LAMMAX, CBETA, NMOLEC, % index is a vestigial parameter specifying the constitutive model % the second parameter is 1 for manual entry and zero for default values % index is a vestigial parameter specifying the constitutive model % the second parameter is 1 for manual entry and zero for default values PROPS = set_material_const_fitd(); % lammaxDist = [9.00 6.00 4.50 3.60 3.00 2.57 2.25 2.00; % 0.008 0.132 0.233 0.287 0.147 0.132 0.047 0.016]; Lmax = 200; lmax_distr = PROPS{8}; lmax_distr(1,:)=Lmax./lmax_distr(1,:); %% Zhangli, here I input Lmax as the fitting parameter PROPS{8}=lmax_distr; %% then, I change PROPS and INPUT for downstream inputs PROPS{5}=8.45; % PROPS(2) = min(lammaxDist(1,:)); % PROPS(1) = CBETA; % PROPS(2) = LAMMAX; % PROPS(3) = NMOLEC; lammin = 1.0; lammax = 0.8*min(lmax_distr(1,:)); %initialize lam1 vexctor % lammin = 0.8*PROPS(2); % lammax = 0.96*PROPS(2); lam1 = linspace(lammin,lammax,npts); lam2 = zeros(1,npts); tau1 = zeros(1,npts); tau2 = zeros(1,npts); mu = zeros(1,npts); for i = 1:npts lam2(i) = 1/lam1(i);%get_lamf_for_zero_Taufd(lam1(i), PROPS); tau1(i) = taumd(lam1(i), lam2(i),PROPS); tau2(i) = taufd(lam1(i), lam2(i),PROPS); mu(i)=2*(tau1(i)-tau2(i))/2/(lam1(i)*lam1(i)-lam2(i)*lam2(i)); % format shortG; % disp([num2str(lam1(i)),' ',num2str(lam2(i)),' ',num2str(tau1(i))]); end % values = [lam1' lam2' tau1']; plot(lam1,mu,'m-','LineWidth',4.0,'MarkerSize',20.0,'DisplayName',['s_0=[20 ... 97] nm, s_{max}=200 nm, p=8.45 pN/\mum']); hold on PROPS = set_material_const_fitd(); Lmax = 160; lmax_distr = PROPS{8}; lmax_distr(1,:)=Lmax./lmax_distr(1,:); %% Zhangli, here I input Lmax as the fitting parameter PROPS{8}=lmax_distr; PROPS{5}=16.26; for i = 1:npts lam2(i) = 1/lam1(i);%get_lamf_for_zero_Taufd(lam1(i), PROPS); tau1(i) = taumd(lam1(i), lam2(i),PROPS); tau2(i) = taufd(lam1(i), lam2(i),PROPS); mu(i)=2*(tau1(i)-tau2(i))/2/(lam1(i)*lam1(i)-lam2(i)*lam2(i)); % format shortG; % disp([num2str(lam1(i)),' ',num2str(lam2(i)),' ',num2str(tau1(i))]); end % values = [lam1' lam2' tau1']; plot(lam1,mu,'c-','LineWidth',4.0,'MarkerSize',20.0,'DisplayName',['s_0=[20 ... 97] nm, s_{max}=160 nm, p=16.26 pN/\mum']); PROPS = set_material_const_fitd(); Lmax = 140; lmax_distr = PROPS{8}; lmax_distr(1,:)=Lmax./lmax_distr(1,:); %% Zhangli, here I input Lmax as the fitting parameter PROPS{8}=lmax_distr; PROPS{5}=30.82; for i = 1:npts lam2(i) = 1/lam1(i);%get_lamf_for_zero_Taufd(lam1(i), PROPS); tau1(i) = taumd(lam1(i), lam2(i),PROPS); tau2(i) = taufd(lam1(i), lam2(i),PROPS); mu(i)=2*(tau1(i)-tau2(i))/2/(lam1(i)*lam1(i)-lam2(i)*lam2(i)); % format shortG; % disp([num2str(lam1(i)),' ',num2str(lam2(i)),' ',num2str(tau1(i))]); end % values = [lam1' lam2' tau1']; plot(lam1,mu,'k-','LineWidth',4.0,'MarkerSize',20.0,'DisplayName',['s_0=[20 ... 97] nm, s_{max}=140 nm, p=30.82 pN/\mum']); plot(tanktreadingdata(:,2), tanktreadingdata(:,3), 'bo-', 'LineWidth',4.0,'MarkerSize',20.0,'DisplayName',['Top 10% fraction of RBCs (Sutera et al. 1989)']); plot(tanktreadingdata(:,5), tanktreadingdata(:,6), 'ro-', 'LineWidth',4.0,'MarkerSize',20.0,'DisplayName',['Bottom 10% fraction of RBCs (Sutera et al. 1989)']); ylim([0 25]); xlim([0.8 1.7]); % plot set set(gca,'FontSize',30) %set labels %xlabel('{\boldmath $\lambda_1/\lambda_{max}$}','FontSize',40,'Interpreter','latex') % x-axis label xlabel('{\boldmath $\lambda_1$}','FontSize',40,'Interpreter','latex') % x-axis label ylabel('{\boldmath $\mu (pN/\mu m)$}','FontSize',40,'Interpreter','latex') % y-axis label %ylabel('{\boldmath $A/A_0$}','FontSize',40,'Interpreter','latex') % y-axis label lgnd=legend; %lgnd=legend({['time=0.25 s, Newtonian fluid'],['time=0.5 s, Newtonian fluid'],['time=0.25 s, OB fluid'],['time=0.5 s, OB fluid']}); set(lgnd,'FontSize',28); set(lgnd,'FontName','Arial','Location','northwest'); set(lgnd,'Orientation','vertical') set(gcf, 'Position', get(0, 'Screensize'));