diff --git a/russell2019_ANN.ipynb b/russell2019_ANN.ipynb
new file mode 100644
index 0000000..55bb844
--- /dev/null
+++ b/russell2019_ANN.ipynb
@@ -0,0 +1,5464 @@
+{
+ "nbformat": 4,
+ "nbformat_minor": 0,
+ "metadata": {
+ "colab": {
+ "name": "russell2019_ANN.ipynb",
+ "provenance": [],
+ "collapsed_sections": [],
+ "toc_visible": true,
+ "authorship_tag": "ABX9TyPdhewwMme0oIEXAs+IuLjt",
+ "include_colab_link": true
+ },
+ "kernelspec": {
+ "name": "python3",
+ "display_name": "Python 3"
+ },
+ "language_info": {
+ "name": "python"
+ }
+ },
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "view-in-github",
+ "colab_type": "text"
+ },
+ "source": [
+ ""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "yBJRtq6TLwDJ"
+ },
+ "source": [
+ "## Reproducing \"Machine Learning and Geophysical Inversion: A Numerical Study\" paper by Russell (2019) in Python\n",
+ "\n",
+ "Yohanes Nuwara"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "metadata": {
+ "id": "hrQ0syLO4R3z"
+ },
+ "source": [
+ "import numpy as np\n",
+ "import matplotlib.pyplot as plt\n",
+ "from keras.layers import Dense\n",
+ "from keras.models import Sequential\n",
+ "from keras.callbacks import ModelCheckpoint, LambdaCallback"
+ ],
+ "execution_count": 1,
+ "outputs": []
+ },
+ {
+ "cell_type": "code",
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 255
+ },
+ "id": "OW8rtcm1UvaK",
+ "outputId": "6fb90980-940c-403e-8410-2b715be77562"
+ },
+ "source": [
+ "# Make wavelet\n",
+ "def Ricker(f, t):\n",
+ " pift = np.pi * f * t\n",
+ " wav = (1 - 2 * pift ** 2) * np.exp(-pift ** 2)\n",
+ " return wav\n",
+ "\n",
+ "t = np.linspace(-0.2,0.2,100)\n",
+ "w = Ricker(20, t)\n",
+ "\n",
+ "# Make wedge model\n",
+ "length, depth = 40, 100\n",
+ "model = 1 + np.tri(depth, length, -depth//3)\n",
+ "model[:depth//3,:] = 0\n",
+ "rocks = np.array([[2700, 2750], [2400, 2450], [2800, 3000]])\n",
+ "earth = np.take(rocks, model.astype(int), axis=0)\n",
+ "imp = np.apply_along_axis(np.product, -1, earth)\n",
+ "rc = (imp[1:,:] - imp[:-1,:]) / (imp[1:,:] + imp[:-1,:])\n",
+ "synth = np.apply_along_axis(lambda t: np.convolve(t, w, mode='same'), axis=0, arr=rc)\n",
+ "\n",
+ "plt.imshow(synth, cmap=\"cubehelix\", aspect=0.2, interpolation='bicubic')\n",
+ "plt.title(\"Wedge Model\", size=20)\n",
+ "plt.xlabel(\"x\", size=15); plt.ylabel(\"z\", size=15)\n",
+ "plt.show()"
+ ],
+ "execution_count": 43,
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ "