Updated 08/12/04
% Program to plot a simple seismogram % M and dist to be input commands clear M=input('What magnitude for the quake? '); dist=input('Distance from epicenter? '); tdiff=dist/8; ttot=tdiff+1+20; % Gives amp in mm amp=10^(M+2.92-3*(log10(dist))) tp=1.01:0.01:tdiff+1.01; xp=0.7*exp(-.05*tp) .*sin(2*pi*0.8*tp); rp=0.3*exp(-.01*tp) .*sin((2*pi*3*tp)+ rand); yp=(amp/5)*(xp+rp); ts=tdiff+1.02:0.01:ttot; txp=0:0.01:(ttot-tdiff-1.02); xs=0.7*exp(-.02*txp) .*sin(2*pi*0.6*ts); rs=0.3*exp(-.01*txp) .*sin((2*pi*2*ts)+ rand); ys=(amp)*(xs+rs); tn=0.0:0.01:1.0; yn=(amp/500)*randn(size(tn)); t=0:0.01:ttot; y=zeros(size(t)); y(1:101)=yn; y(102:(length(tp)+101))=yp; y((length(tp)+102):length(t))=ys; plot(t,y); fid=fopen('test1.dat','w'); fprintf(fid,'%3.4f\n',y); fclose(fid);