In these exercises, you will get your fingers a little dirty, playing with PySIT scripts to perform 2D inversion.

For these exercises, you will be using PySIT. A sequence of demos in PySIT are provided, each with a number of areas that can be 'tweaked' (e.g., wavelet frequency, number of shots, number of optimization steps, etc.). You should play around when these parameters and get a better feel for the FWI process.

Inside the demo scripts, areas that you should try modifying are marked with `################## !!!!!! ###################`

.

For Windows users it is **critical** that you start ipython with the pylab option: `ipython --pylab`

Then, from the IPython console, you can run your script with the command:

`%run demo.py`

**Demo 1:** Horizontal Reflectors in 2D (Time Domain) HorizontalReflector2DTemporal.py

This example was demonstrated in the introduction talk and is described in more detail here.

Tweakable parameters:

- Number, location, and intensity of reflectors
- Background velocity model \(c\)
- Initial velocity model \(c_0\). Try making this slower or faster than the true background
- Number, depth, and position of the source
- Time range
- Solver accuracy
- Optimization algorithm (LBFGS vs Gradient Descent)
- Number of optimization iterations

**Demo 2:** Horizontal Reflectors in 2D (Frequency Domain) HorizontalReflector2DFrequency.py

Tweakable parameters:

- Same as time domain
- Frequencies, number of steps per frequency

**Demo 3:** Minature Marmousi Patch (Time Domain) Marmousi2D.py

Tweakable parameters:

- Same as time domain 2D reflector
- Emphasis on the number of shots (execution cost increases linearly with number of shots! This could take a while!)

**Demo 4:** Horizontal Reflectors in 1D (Time Domain) HorizontalReflector1DTemporal.py

This is essentially what you developed in computer problems 1-3. Consider moving the location of the receiever.

Tweakable parameters:

- Number, location, and intensity of reflectors
- Background velocity model \(c\)
- Initial velocity model \(c_0\). Try making this slower or faster than the true background
- Number, depth, and position of the source
- Position of the receiver
- Time range
- Solver accuracy
- Optimization algorithm (LBFGS vs Gradient Descent)
- Number of optimization iterations