We are going to solve the differential equation with the boundary conditions $latex \psi_{xx} +[100 - \beta ]\psi = 0$ $latex \implies \psi_{xx} = [\beta - 100] \psi$ Let's take the simpler boundary condition $latex \psi(x=\pm 1) =0$. Now, the first thing which we wanna do is to convert this equation in the first order form.... Continue Reading →

# Introduction to Genetics Algorithm (GA) (Part 2)

To find a basic introduction of GA, the first part can be found here. III. Examples using Genetics Algorithm In these examples, we will use Matlab and its function ga to apply GA for the optimization problem. For the manual of using this function, you can find it at https://www.mathworks.com/help/gads/ga.html or type in Matlab: help ga... Continue Reading →

# Simple 1D velocity model inversion from P arrival time

Refer to Chapter 5, Introduction to Seismology, Shearer 2009. Problem: From the P-wave travel time data below (note that the reduction velocity of 8km/s), inverse for the 1D velocity model using T(X) curve fitting (fit the T(X) curve with lines, then invert for the ray parameter p and delay time τ(p), then solve for the velocity... Continue Reading →

# Ray tracing through a 1-D velocity model

Refer to Chapter 4 of Shearer, Introduction to Seismology. For a ray piercing through Earth, the ray parameter (or horizontal slowness) p is defined by several expressions: where u = 1/v is the slowness, θ is the ray incidence angle, T is the travel time, X is the horizontal range and utp is the slowness at the... Continue Reading →

# Modeling a wave on a string using finite differences

Based on problem 3.7 chapter 3 of Introduction to Seismology (Shearer) (COMPUTER) In the case of plane-wave propagation in the x direction within a uniform medium, the homogeneous momentum equation (3.9) for shear waves can be expressed as ,where u is the displacement. Write a computer program that uses finite differences to solve this equation... Continue Reading →

# Calling SAC(Seismic Analysis Code) (in Perl)

For seismologists, using a SAC for sac data manipulation is essential (though there are few alternatives). Here, we see how can we call SAC from a perl script: #!/usr/bin/perl open(SAC, "| sac ") or die "Error opening sac\n"; print SAC qq[ echo on *fg seismogram #sample seismic signal in SAC's memory fg sine 2 npts... Continue Reading →

# Understanding Seismograms

Seismograms are basic information about earthquakes, chemical and nuclear explosions, mining induced earthquakes, rock bursts and other events generating seismic waves. Seismograms reflect the combined influence of the seismic source, the propagation paths, the frequency response of the recording instrument and the ambient noise at the recording site. u(t) = s(t)*g(t)*i(t)*n(t). ... Continue Reading →