## A 'realistic', 'non-elastic' string, which responses to any
## bending and has stifness. This script takes in the previous
## and the present profiles and iterates to find
## the profile in the next time step. The ratio 'r' is not 1
## like in the 'non-realistic' string since the speed of the wave
## always less than the speed of the string it should be less than 1
## for best and most stable solution
##constants
dx=1e-2 ## Spatial increment (m)
L=2 ## Length of the string (m)
M=L/dx ## Dimensionless partition
r=0.25 ## Famous dimensionless ratio
E=1e-4 ## Dimensionless stiffnes
x=-1:dx:1;
l=length(x);
x0=0.5;
k=1e2;
## Set up the initial profile
y=initial_profile(x,x0,k);
plot(x,y)
pause
## Impose the time boundary condition
ynow=y;
yprev=y;
ynow(1)=ynow(2)=0
Nsteps=2000;
for n=3:Nsteps
ynow(Nsteps-1)=ynow(Nsteps-2)=0;
ynext=propagate_stiff(ynow,yprev,r);
plot(x,ynext,';;')
axis([-1.05,1.05,-1.1,1.1])
pause(0);
endfor
Comments
Post a Comment