HYSTERISIS LOOPS USING DATA

조회 수: 7 (최근 30일)
Parth Kulkarni
Parth Kulkarni 2021년 7월 20일
댓글: Parth Kulkarni 2021년 7월 20일
I prepared this code to randomise values of stress(Sigma in a range), Kp and Np to get new strains added to the previous iteration( Operation ) using for loop system. I want to create hysterisis loop of stress vs strain ( Sigma vs epsilon ) for all the iterations but i am not able to figure out the way.
clc;
clear all;
close all;
sgna=150;
sgnb=650;
sgnN=200; %%%%%%
sgnrand=sgna+(sgnb-sgna).*rand(sgnN,1);
sgn=sgnrand;
kpa=950;
kpb=1370;
kpN=1; %%%%
kprand=kpa+(kpb-kpa).*rand(kpN,1);
kp=kprand;
npa=0;
npb=1;
npN=1; %%%%
nprand=npa+(npb-npa).*rand(npN,1);
np=nprand;
E=21000;
ee1=(sgn(1)/(2*E))+((sgn(1)/(2*kp(1)))^(1/np(1)))
ll=0;
mm=0;
nn=0;
rr=0;
for ll=1:sgnN
for mm=1:kpN
for nn=1:npN
rr=rr+1;
if rr==1
ee(rr)=ee1;
else
ee(rr)=(sgn(ll)/(2*E))+((sgn(ll)/(2*kp(mm)))^(1/np(nn)))+ee(rr-1);
end
end
end
end
plot(ee',sgn)
hold on;
scatter(ee',sgn,'.')
hold off
  댓글 수: 3
Parth Kulkarni
Parth Kulkarni 2021년 7월 20일
It is not forming a curve. I also wanted to know if my code is correct for my application. Basically the equation is ee1=(sgn(1)/(2*E))+((sgn(1)/(2*kp(1)))^(1/np(1))) . where ee1 is the intial strain, sgn1 is intial stress, E is the elastic modulus, kp and np are components of hardening. I wanted to randomise Kp, np and stress ( Sgn) for every iteration which would gove a value of ee(Strain) this genrated value will be added to the next generation. I just hope that I am on the right path.
Parth Kulkarni
Parth Kulkarni 2021년 7월 20일
I also wanted to know if my code is correct for my application. Basically the equation is ee1=(sgn(1)/(2*E))+((sgn(1)/(2*kp(1)))^(1/np(1))) . where ee1 is the intial strain, sgn1 is intial stress, E is the elastic modulus, kp and np are components of hardening. I wanted to randomise Kp, np and stress ( Sgn) for every iteration which would gove a value of ee(Strain) this genrated value will be added to the next generation. I just hope that I am on the right path.

댓글을 달려면 로그인하십시오.

답변 (1개)

Tesfaye Girma
Tesfaye Girma 2021년 7월 20일
you can try this code
x = rand(10,1);
y = rand(10,1);
quiver(x(1:end-1),y(1:end-1),diff(x),diff(y),0);

카테고리

Help CenterFile Exchange에서 Stress and Strain에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by