{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "

FM EC-module tests

" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

PolyTim interpolation (boundaries)

" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import sys, os" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Some stuff needed in the calculation\n", "\n", "# Intersection between two line segments, \n", "# expressed as a fraction of the first segment (p1->p2)\n", "def crs(p1,p2,p3,p4):\n", " # intersection lambda of lines p1->p2 and p3->p4\n", " # in terms of vector p1->p2\n", " l = ((p3[0]-p1[0])*(p3[1]-p4[1])-(p3[1]-p1[1])*(p3[0]-p4[0])) \\\n", " / ((p2[0]-p1[0])*(p3[1]-p4[1])-(p2[1]-p1[1])*(p3[0]-p4[0]))\n", " return(np.array([l,1.-l]))\n", "\n", "def time_interpolation(time_asked, tslist):\n", " results = []\n", " for ts in tslist:\n", " if ((time_askedts[-1,0])):\n", " results.append(np.NaN)\n", " else:\n", " for itime in range(ts.shape[0]-1):\n", " if ((time_asked - ts[itime,0])*(time_asked - ts[itime+1,0])<0):\n", " break\n", " t1 = ts[itime,0]\n", " t2 = ts[itime+1,0]\n", " wt = (ts[itime+1,0] - time_asked)/(ts[itime+1,0] - ts[itime,0])\n", " val = wt*ts[itime,1] + (1.-wt)* ts[itime+1,1]\n", " results.append(val)\n", " return(results)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Test f01-c001

" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Calculation

" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Input: Two time series (old style) for two support points" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ "tim01 = np.loadtxt('tfl_01_0001.tim')\n", "tim02 = np.loadtxt('tfl_01_0002.tim')\n", "bndpair=[[0.0,0.0],[0.0,1.5]] # boundary cell face, pli-segment" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Time is given in minutes in these .tim files, so convert to seconds\n", "to_seconds = 60.0\n", "tim01[:,0] = tim01[:,0]*to_seconds\n", "tim02[:,0] = tim02[:,0]*to_seconds" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Copied from the test configuration file:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "Times = 10.0, 20.0, 30.0, 40.0 # times for requesting data from EC-module\n", "LocationsX = 0.75, 0.75, 0.75 # location X-coordinate \n", "LocationsY = 0.667, 1.000, 1.333 # location Y-coordinate\n", "LocationsX2 = -1.000, -1.000, -1.000 # location X-coordinate \n", "LocationsY2 = 0.667, 1.000, 1.333 # location Y-coordinate\n", "npt = len(LocationsX)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\ngwx3Seqg/w9tBJvUT+f4KQAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# definition of a pair of support points\n", "xbnd = np.array([bndpair[0][0],bndpair[1][0]])\n", "ybnd = np.array([bndpair[0][1],bndpair[1][1]])\n", "fig = plt.figure();\n", "plt.plot(xbnd, ybnd, \"ro\",xbnd, ybnd, \"r-\"); \n", "\n", "# definition of flow links\n", "ws = []\n", "for ipt in range(npt):\n", " flowlink=[[LocationsX[ipt],LocationsY[ipt]], [LocationsX2[ipt],LocationsY2[ipt]]] \n", "\n", " # determine spatial interpolation weight\n", " ws.append(crs(np.array(bndpair[0]),np.array(bndpair[1]),np.array(flowlink[0]),np.array(flowlink[1]))) \n", " \n", " # plot \n", " xflow = np.array([flowlink[0][0],flowlink[1][0]])\n", " yflow = np.array([flowlink[0][1],flowlink[1][1]])\n", " plt.plot(xflow, yflow, \"bo\",xflow, yflow, \"b-\"); \n", "\n", "# fig.suptitle(\"Weigth factor at intersection : %f\"%(ws[0]))\n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "[array([ 0.44466667, 0.55533333]),\n", " array([ 0.66666667, 0.33333333]),\n", " array([ 0.88866667, 0.11133333])]" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ws # Show the derived weight functions" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "10.0 [0.00016666666666666718, 0.00016666666666666718, 0.00016666666666666718]\n", "20.0 [0.00033333333333333327, 0.00033333333333333327, 0.00033333333333333327]\n", "30.0 [0.00050000000000000044, 0.00050000000000000044, 0.00050000000000000044]\n", "40.0 [0.00066666666666666654, 0.00066666666666666654, 0.00066666666666666654]\n" ] } ], "source": [ "for time_asked in Times:\n", " interp = []\n", " values_at_support_points = time_interpolation(time_asked,[tim01,tim02])\n", " for iw in range(len(ws)):\n", " interpval = np.dot(ws[iw],values_at_support_points)\n", " interp.append(interpval)\n", " print time_asked, interp" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Test results

" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ "testdir = './'\n", "outfile = 'test01.out'\n", "tstfile = 'test01.ref'" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [], "source": [ "rawrefdata = np.loadtxt(os.path.join(testdir,reffile))\n", "rawtstdata = np.loadtxt(os.path.join(testdir,tstfile))" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "array([[ 1.00000000e+00, 1.66666667e-05, 1.66666667e-05],\n", " [ 2.00000000e+00, 3.33333333e-05, 3.33333333e-05],\n", " [ 3.00000000e+00, 6.00000000e-05, 5.00000000e-05],\n", " [ 4.00000000e+00, 6.66666667e-05, 6.66666667e-05]])" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rawrefdata" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Retrieve reference and test data:" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": false }, "outputs": [], "source": [ "reftimes = rawrefdata[:,0]\n", "tsttimes = rawtstdata[:,0]\n", "refvalues = rawrefdata[:,1:]\n", "tstvalues = rawtstdata[:,1:]" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "array([[ 1.66666667e-05, 1.66666667e-05],\n", " [ 3.33333333e-05, 3.33333333e-05],\n", " [ 6.00000000e-05, 5.00000000e-05],\n", " [ 6.66666667e-05, 6.66666667e-05]])" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "tstvalues" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [], "source": [ "tim01[:,0] = tim01[:,0]*f_time_seconds\n", "tim02[:,0] = tim02[:,0]*f_time_seconds" ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "array([[ 0.00000000e+00, 0.00000000e+00],\n", " [ 3.60000000e+04, 1.00000000e-02],\n", " [ 7.20000000e+04, 0.00000000e+00],\n", " [ 1.08000000e+05, -1.00000000e-02],\n", " [ 1.44000000e+05, 0.00000000e+00],\n", " [ 1.80000000e+05, 1.00000000e-02],\n", " [ 2.16000000e+05, 0.00000000e+00],\n", " [ 2.52000000e+05, -1.00000000e-02],\n", " [ 2.88000000e+05, 0.00000000e+00],\n", " [ 3.24000000e+05, 1.00000000e-02],\n", " [ 3.60000000e+05, 0.00000000e+00],\n", " [ 3.96000000e+05, -1.00000000e-02],\n", " [ 4.32000000e+05, 0.00000000e+00]])" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "tim01" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Interpolate each timeseries at the requested time ..." ] }, { "cell_type": "code", "execution_count": 77, "metadata": { "collapsed": false }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 78, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.0044444444444444444, 0.0094949494949495023]\n" ] } ], "source": [ "print values_at_support_points" ] }, { "cell_type": "code", "execution_count": 93, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "0.0" ] }, "execution_count": 93, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bndpair[0][0]" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "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.13" } }, "nbformat": 4, "nbformat_minor": 2 }