{ "metadata": { "name": "", "signature": "sha256:1175e19e386f78c7cfc14587f671c199280b6dc9508588a123dc2cc24e79b3f7" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "vel=np.fromfile('marm16km.drt',dtype=float32)\n", "nx=576\n", "nz=188\n", "vel.shape=(nx,nz)\n", "nw=10" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "def plot_vel(vel,img='Marmousi.eps',h=0.016):\n", " xmax=(vel.shape[0]-1)*h\n", " zmax=(vel.shape[1]-1)*h\n", " fs=14\n", " figure(figsize=(10,4))\n", " ax=imshow(vel.transpose(),extent=(0,xmax,zmax,0),cmap=cm.gray_r)\n", " tick_params(labelsize=fs)\n", " xlabel('Distance (km)',fontsize=fs)\n", " ylabel('Depth (km)',fontsize=fs)\n", "\n", " ax.axes.set_yticks(arange(0,zmax+1,1)) \n", " cb=colorbar(shrink=0.68,pad=0.02,aspect=10,ticks=arange(1.5,6,1))\n", " clim([1.5,5.5])\n", " cb.set_label('km/s',fontsize=fs)\n", " ct=getp(cb.ax,'ymajorticklabels')\n", " setp(ct,fontsize=fs)\n", " \n", " savefig(img)\n", "\n", "plot_vel(vel)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\ntZfT/w2bAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 2 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Python, Numpy" ] }, { "cell_type": "code", "collapsed": false, "input": [ "def moving_average(n1,n2,vel,nw):\n", " svel=np.empty_like(vel)\n", " for i in xrange(n1):\n", " for j in xrange(n2):\n", " s=0.\n", " isum=0\n", " for k in xrange(max(0,i-nw),min(i+nw,n1)):\n", " for l in xrange(max(0,j-nw),min(j+nw,n2)):\n", " s+=vel[k,l]\n", " isum+=1\n", " svel[i,j]=s/isum\n", " return svel\n", "\n", "def moving_average_vec(n1,n2,vel,nw):\n", " svel=np.empty_like(vel)\n", " for i in xrange(n1):\n", " for j in xrange(n2):\n", " svel[i,j]=np.average(vel[max(0,i-nw):min(i+nw,n1),max(0,j-nw):min(j+nw,n2)])\n", " return svel" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 moving_average(nx,nz,vel,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 22.6 s per loop\n" ] } ], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "svel=moving_average_vec(nx,nz,vel,nw)\n", "imshow(svel.transpose(),cmap=cm.gray_r)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 6, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nb+pkGQAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 moving_average_vec(nx,nz,vel,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 2.02 s per loop\n" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 7 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Numba" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import numba\n", "\n", "moving_average_nb=numba.autojit(moving_average)\n", "moving_average_nv=numba.autojit(moving_average_vec)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "svel=moving_average_nb(nx,nz,vel,nw)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "plot_vel(svel,img='Marmousi_MA.eps')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 moving_average_nb(nx,nz,vel,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 77.2 ms per loop\n" ] } ], "prompt_number": 11 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 moving_average_nv(nx,nz,vel,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 2.17 s per loop\n" ] } ], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Cython" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%load_ext cythonmagic" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "%%cython\n", "import cython\n", "import numpy as np\n", "cimport numpy as np\n", "@cython.boundscheck(False)\n", "@cython.wraparound(False)\n", "@cython.nonecheck(False)\n", "def moving_average_cy(int n1,int n2,np.ndarray[float,ndim=2] vel,int nw):\n", " cdef np.ndarray[float,ndim=2] svel=np.empty_like(vel)\n", " cdef int i,j,k,l,isum\n", " cdef double s\n", " for i in xrange(n1):\n", " for j in xrange(n2):\n", " s=0.\n", " isum=0\n", " for k in xrange(max(0,i-nw),min(i+nw,n1)):\n", " for l in xrange(max(0,j-nw),min(j+nw,n2)):\n", " s+=vel[k,l]\n", " isum+=1\n", " svel[i,j]=s/isum\n", " return svel" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "svel=moving_average_cy(nx,nz,vel,nw)\n", "imshow(svel.transpose())" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 15, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nA3x8q4EAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 15 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 moving_average_cy(nx,nz,vel,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 34.9 ms per loop\n" ] } ], "prompt_number": 17 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Fortran" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%%file moving_average.f90\n", "subroutine moving_average(n1,n2,vel,nw,svel)\n", "implicit none\n", "integer,intent(in):: n1,n2,nw\n", "real,intent(in):: vel(n1,n2)\n", "real,intent(out):: svel(n1,n2)\n", "integer i,j,k,l,isum\n", "real s\n", "do i=1,n1\n", "do j=1,n2\n", " s=0.\n", " isum=0\n", " do k=max(1,i-nw),min(n1,i+nw)\n", " do l=max(1,j-nw),min(n2,j+nw)\n", " s=s+vel(i,j)\n", " isum=isum+1\n", " enddo\n", " enddo\n", " svel(i,j)=s/isum\n", "enddo\n", "enddo\n", "end subroutine\n", "\n", "subroutine moving_average_vec(n1,n2,vel,nw,svel)\n", "implicit none\n", "integer,intent(in):: n1,n2,nw\n", "real,intent(in):: vel(n1,n2)\n", "real,intent(out):: svel(n1,n2)\n", "integer i,j,i1,i2,j1,j2,isum\n", "do i=1,n1\n", " i1=max(1,i-nw)\n", " i2=min(n1,i+nw)\n", " do j=1,n2\n", " j1=max(1,j-nw)\n", " j2=min(n2,j+nw)\n", " isum=(i2-i1+1)*(j2-j1+1)\n", " svel(i,j)=sum(vel(i1:i2,j1:j2))/isum\n", " enddo\n", "enddo\n", "end subroutine" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Overwriting moving_average.f90\n" ] } ], "prompt_number": 19 }, { "cell_type": "code", "collapsed": false, "input": [ "!f2py -c -m mov_avg_f moving_average.f90 --f90exec=/opt/local/bin/gfortran-mp-4.9 > log.txt" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 20 }, { "cell_type": "code", "collapsed": false, "input": [ "import mov_avg_f\n", "print mov_avg_f.__doc__" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "This module 'mov_avg_f' is auto-generated with f2py (version:2).\n", "Functions:\n", " svel = moving_average(vel,nw,n1=shape(vel,0),n2=shape(vel,1))\n", " svel = moving_average_vec(vel,nw,n1=shape(vel,0),n2=shape(vel,1))\n", ".\n" ] } ], "prompt_number": 21 }, { "cell_type": "code", "collapsed": false, "input": [ "velt=vel.transpose()" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 22 }, { "cell_type": "code", "collapsed": false, "input": [ "svel=mov_avg_f.moving_average(velt,nw)\n", "imshow(svel,cmap=cm.gray_r)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 23, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nKaWUUspQ/ACpJyX2jY3hOQAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 23 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 mov_avg_f.moving_average(velt,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 36 ms per loop\n" ] } ], "prompt_number": 24 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 mov_avg_f.moving_average_vec(velt,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 35.8 ms per loop\n" ] } ], "prompt_number": 25 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 25 }, { "cell_type": "code", "collapsed": false, "input": [ "def moving_average_i(n1,n2,vel,nw):\n", " svel=np.empty_like(vel)\n", " for i in xrange(n1):\n", " i1=max(0,i-nw)\n", " i2=min(i+nw,n1)\n", " for j in xrange(n2):\n", " j1=max(0,j-nw)\n", " j2=min(j+nw,n2)\n", " s=0.\n", " isum=0\n", " for k in xrange(i1,i2):\n", " for l in xrange(j1,j2):\n", " s+=vel[k,l]\n", " isum+=1\n", " svel[i,j]=s/isum\n", " return svel\n", "\n", "def moving_average_vec_i(n1,n2,vel,nw):\n", " svel=np.empty_like(vel)\n", " for i in xrange(n1):\n", " i1=max(0,i-nw)\n", " i2=min(i+nw,n1)\n", " for j in xrange(n2):\n", " j1=max(0,j-nw)\n", " j2=min(j+nw,n2)\n", " svel[i,j]=np.average(vel[i1:i2,j1:j2])\n", " return svel" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 26 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 moving_average_i(nx,nz,vel,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 22.2 s per loop\n" ] } ], "prompt_number": 27 }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit -r 5 -n 1 moving_average_vec_i(nx,nz,vel,nw)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1 loops, best of 5: 2.04 s per loop\n" ] } ], "prompt_number": 28 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 28 } ], "metadata": {} } ] }