📄 constrai.htm
字号:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"><HTML VERSION="2.0"><HEAD><!-- WEBMAGIC VERSION NUMBER="2.0.1" --><!-- WEBMAGIC TRANSLATION NAME="ServerRoot" SRC="/var/www/htdocs/" DST="/" --><!-- WEBMAGIC TRANSLATION NAME="ProjectRoot" SRC="./" DST="" --><TITLE>Matlab program for Constraint Calculations</TITLE></HEAD><BODY><PRE>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Script : constraint.m % %% Copyright (c) 1993-1994 Annette D. Karstensen %% / University of Glasgow, SCOTLAND %% % % This is a script file used at the end of the superpost %% it calculates various variables, for further explanation %% off the variables see variables.m which can be accessed %% in matlab by > help variables %% % OUTPUT:% x_bot : x-coordinates ahead of the crack% s22_bot : stress in 2 dircetion ahead of crack% r : distance from crack tip % pnd : P/P_limit% Tnd : T stress nondimensionlised by yield stress% lirv2 : Stresses at a distance 2J/So% reac2_bot : Reaction forces ahead of the crack% K_I : K_I calculated from reaction forces% J_el : J-elastic calculated from K_I% J_pl : J-plastic calculated from J-J_el% Jpnd : J-plastic nondimensionalised by (c So)% Q_total : Q_total lirv2-ssy at a distance 2J/So% Q_pl : Q-plastic Q_total-S_mblf (2J/So)% st2nd : Stresses in 2 direction at a distance% 2J/so divided by S_mblf ahead of the crack%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Filtering the 2 direction stresses in the ligament % from the main stress matric % It has been necessary to add this if exist statement to% this program as well as to ABAQUStoMatlab, because sometimes% this program has been used independent of the other one.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Some material properties is defined in the global space% The yield stress s0 % Youngs Modulus Eglobal s0=2e8 E=2e11; if exist('BOTR')==1 BOT=BOTR; end if exist('BOTL')==1 BOT=BOTL; end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% here the the results for the BOT node set is separated from% the results of the MODEL [x_bot,s22_bot]=filtering(stress_node,stress22,BOT,coord,MODEL); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Sorting the stresses after the coordinates, so stesses % closes to the crack tip is first and so fort [s22_bot,r]=sorting(s22_bot,x_bot,a); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Fit the 2 direction stresses to a distance r=dist.J/yield dist=2; lirv2=Snd_dis(s22_bot,a,r,J,dist); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Filtering the 2 direction reaction forces in the ligament % from the main reaction force matric [x_bot,reac2_bot]=filtering(reac_node,reac_set2,BOT,coord,MODEL); [x_flanke,T_flanke]=filtering(stress_node,stress11,TSTRESS,coord,MODEL); T_flanke=min(T_flanke)/s0; Sum_reac=sum(reac2_bot);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Calculated P/P_limit pnd=limit_load(reac2_bot,cp_num,x_bot,a);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Calculated the non dimensionalised T stress Tnd=T_stress(a,reac2_bot,cp_num,r); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Calculates K, J-elastic and J-Plasitc, Jpnd is J-plastic % non dimensioanlised by the ligament and yield stress [K_I,J_el,J_pl,Jpnd]=JK_calc(reac2_bot,J,cp_num,x_bot,a); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Q-total and Q-plastic is calculated from the MBLF, % st2nd is s22/smblf at a distance "dist" [Q_total,Q_pl,st2nd]=Q_stress(Tnd,lirv2,hard,dist);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % for CCP's and DEC's the moment-to-force ratio and the % line of action is calculated, further T_mom is T from % a pure moment, taken at a distance m_dis, general this % distance is half the width as that will cancel out the % vertial tensile forces and T_ten is T from the tensile % net force. T_dif is Tnd-T_ten % 25/7-94 (ADK) changed to be calculated for SEC and SEB % aswell if cp_num==1 | 4 m_dis=500; [mf_ratio_500,line_act_500]= ... momfor(reac2_bot,x_bot,a,m_dis); [T_mom,T_ten,T_dif]=T_sym(a,reac2_bot,x_bot,Tnd);end %%%%%%%%%%%% End of Constraint %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% </PRE><P></P></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -