{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Jupyter Notebook for turning in solutions to the problems in the Essentials of Paleomagnetism Textbook by L. Tauxe" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Problems in Chapter 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Problem 1a: WRITE YOUR DESCRIPTION HERE" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# You will need these things!\n", "import numpy as np\n", "import pandas as pd\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's write a little function to do the conversion. " ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# the structure of a function is like this:\n", "def dir2cart(dec,inc,R): # first line starts with 'def', has the name and the input parameters (data)\n", " # all subsequent lines are indented\n", " # continue this function here.......\n", " pass # this line does nothing - replace it with something that does!\n", " cart=[1.,1.,1.] # obviously this is not what you want.... \n", " return cart # returns the stuff you calculated (x,y,z) or (n,e,d)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's read in a data file with some geomagnetic field vectors in it." ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# read in the data and transpose it to rows of dec, inc, int\n", "# you have to change the file name to reflect where you put the data.... \n", "data=np.loadtxt('ps2_prob1_data.txt').transpose() # this line will read in data\n", " # now send these data to your function.... and print out the x,y,z\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Problem 1b: Read in locations from 10 random spots on Earth and calculate the IGRF vectors at each place. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First we have to understand how the function pmag.get_unf() works. To do this, we need to tell the notebook where the pmag module lives, import it and print out the doc string for get_unf(): " ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " Called with get_unf(N).\n", " subroutine to retrieve N uniformly distributed directions\n", " using the way described in Fisher et al. (1987).\n", " \n" ] }, { "data": { "text/plain": [ "array([[ 48.79862281, -42.7912137 ],\n", " [ 254.20814435, 29.76836608],\n", " [ 5.13710564, -30.52215226],\n", " [ 340.77085585, -17.93811227],\n", " [ 263.57383863, 8.21116531],\n", " [ 100.80277122, 1.73260053],\n", " [ 141.48219414, -1.3747035 ],\n", " [ 13.56169561, -38.28824633],\n", " [ 339.67863846, 41.48404555],\n", " [ 338.27864251, -9.47637191]])" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pmagpy.pmag as pmag # this makes the PmagPy module pmag.py available to you\n", "print pmag.get_unf.__doc__\n", "pmag.get_unf(10) # now you need to assign this to an array variable name and use it in the following." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "use that function to generate a list of random points on the Earth's surface. " ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# write your code here." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's find out about ipmag.igrf() " ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " Prints out Declination, Inclination, Intensity from the IGRF model.\n", "\n", " Arguments\n", " ----------\n", " input_list : list with format [Date, Altitude, Latitude, Longitude]\n", " Date must be in format XXXX.XXXX with years and decimals of a year (A.D.)\n", " \n" ] } ], "source": [ "import pmagpy.ipmag as ipmag # this makes the PmagPy module ipmag.py available to you\n", "print ipmag.igrf.__doc__" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# figure out how to send your places to ipmag.igrf. do the calculation for 2015. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Problem 1c: Take the output from 1b and call ``dir2cart''. " ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Problem 2: \n", "Take the output from Problem 1band plot as an equal area projection (first by hand and then with ipmag functions). The ipmag functions call pmagplotlib and use matplotlib, so these will have to be imported as well. " ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# this line lets you make plots inside the notebook:\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ipmag.plot_net(1) # make an equal angle net\n", "# figure out how to use ipmag.plot_di() and plot the points. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Problem 3" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# code it up here!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's use the pmag function dia_vgp. First let's figure out what it does:" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", " converts declination, inclination, alpha95 to VGP, dp, dm\n", " takes input as (Decs, Incs, a95, Site latitudes, Site Longitudes). \n", " These can be lists or individual values.\n", " \n" ] } ], "source": [ "print pmag.dia_vgp.__doc__" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can use it to convert our directions to VGPs. Note that alpha95 is required but is not given so supply a zero in its place. Note also that westward longitudes are indicated by minus signs..." ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# you figure it out." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }