diff --git a/CMakeLists.txt b/CMakeLists.txt index 9743c45..c4a30a3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,8 +14,7 @@ SET(CMAKE_SWIG_FLAGS "-Wall") add_definitions(-DNDEBUG) #This is for BOOST functions, and to disable assertions! # add_definitions(-DTRACER=0) add_definitions(-DEIGEN_NO_DEBUG -DARMA_NO_DEBUG) - -add_definitions(-DTRACERNAME=timedomaineulertracer -DARMA_USE_BLAS -DARMA_USE_LAPACK) +add_definitions(-DTRACERNAME=timedomaineulertracer) ############################## Not so often changed @@ -53,8 +52,6 @@ link_directories(/home/anne/bin/lib) add_library(sources ${src}) set_source_files_properties(timedomain.i PROPERTIES CPLUSPLUS ON) set_source_files_properties(timedomain.i PROPERTIES SWIG_FLAGS "-py3") -set_source_files_properties(timedomain.i PROPERTIES SWIG_FLAGS "-Wextra") -set_source_files_properties(timedomain.i PROPERTIES SWIG_FLAGS "-includeall") swig_add_module(timedomaineuler python timedomain.i) swig_link_libraries(timedomaineuler sources nonlin armadillo ${PYTHON_LIBRARIES}) diff --git a/Plot data.ipynb b/Plot data.ipynb deleted file mode 100644 index 697d32f..0000000 --- a/Plot data.ipynb +++ /dev/null @@ -1,75 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:cf9769ed030dba90588e4e94007d226dd2897d23c8792fd8974c73bb04381b2c" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from tmtubes import gas\n", - "air=gas('air')\n", - "L=1.\n", - "c0=air.cm(293.15)\n", - "fres=c0/(4*L)\n", - "print(\"fres:\",fres)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "fres: 85.7847876535731\n" - ] - } - ], - "prompt_number": 6 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "plot(x,u)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "metadata": {}, - "output_type": "pyout", - "prompt_number": 3, - "text": [ - "[]" - ] - }, - { - "metadata": {}, - "output_type": "display_data", - "png": "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\n", - "text": [ - "" - ] - } - ], - "prompt_number": 3 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [], - "language": "python", - "metadata": {}, - "outputs": [] - } - ], - "metadata": {} - } - ] -} \ No newline at end of file diff --git a/src/tube.cpp b/src/tube.cpp index 079fa52..7841160 100644 --- a/src/tube.cpp +++ b/src/tube.cpp @@ -65,13 +65,13 @@ void TubeLF::Integrate(d dt) { { // Inner nodes d lambda = dt/(2*dx); rho.subvec(1,gp-2)=0.5*(oldrho.head(gp-2) + oldrho.tail(gp-2)); - rho.subvec(1,gp-2)+=-lambda*(Cflux.head(gp-2) -Cflux.tail(gp-2)); + rho.subvec(1,gp-2)+=-lambda*(Cflux.tail(gp-2) -Cflux.head(gp-2)); m.subvec(1,gp-2)=0.5*(oldm.head(gp-2) + oldm.tail(gp-2)); - m.subvec(1,gp-2)+=-lambda*(Mflux.head(gp-2) -Mflux.tail(gp-2)); + m.subvec(1,gp-2)+=-lambda*(Mflux.tail(gp-2) -Mflux.head(gp-2)); rhoE.subvec(1,gp-2)=0.5*(oldrhoE.head(gp-2) + oldrhoE.tail(gp-2)); - rhoE.subvec(1,gp-2)+=-lambda*(Eflux.head(gp-2) -Eflux.tail(gp-2)); + rhoE.subvec(1,gp-2)+=-lambda*(Eflux.tail(gp-2) -Eflux.head(gp-2)); } // End inner nodes { // Right boundary diff --git a/timedomain.ipynb b/timedomain.ipynb index 095904d..869d4e9 100644 --- a/timedomain.ipynb +++ b/timedomain.ipynb @@ -1,7 +1,7 @@ { "metadata": { "name": "", - "signature": "sha256:2aa6562ce56a22699d07327912ff516ed48493f67bbddc1babb0722b0ee1a0ff" + "signature": "sha256:4b695d53d8ce9715401825830b83ae0060692d114cf9b5b8e49402b7bbd96c0a" }, "nbformat": 3, "nbformat_minor": 0, @@ -17,8 +17,7 @@ ], "language": "python", "metadata": {}, - "outputs": [], - "prompt_number": 1 + "outputs": [] }, { "cell_type": "code", @@ -28,176 +27,45 @@ "f=85.785\n", "T=1/f\n", "loglevel=20\n", - "L=1e-2\n", - "gp=10\n", + "L=1.\n", + "gp=300\n", "gc=cvar.gc #Reference!\n", "dx=L/(gp-1); # One left and right gp, so\n", - "CFL=0.1;\n", + "CFL=0.5;\n", "gc.setfreq(f)\n", "tube=TubeLF(L,gp)\n", "dt=min(CFL*dx/gc.c0(),T/50)" ], "language": "python", "metadata": {}, - "outputs": [], - "prompt_number": 2 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "nr_p_period=1\n", - "intsteps=int(floor(1./(gc.getfreq()*dt)/nr_p_period))" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 3 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "intsteps=1000" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 4 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "print(\"DoIntegration relative time step of one period: %0.2e\" %(dt*gc.getfreq()))" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "DoIntegration relative time step of one period: 2.78e-05\n" - ] - } - ], - "prompt_number": 5 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "tube.gp" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "metadata": {}, - "output_type": "pyout", - "prompt_number": 6, - "text": [ - "10" - ] - } - ], - "prompt_number": 6 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "tube.DoIntegration(dt,1)\n", - "sol=tube.getSol()\n", - "u=sol.u()\n", - "p=sol.p()\n", - "#rho=sol.rho()\n", - "figure(figsize=(9,6))\n", - "subplot(221)\n", - "plot(p)\n", - "subplot(222)\n", - "plot(u)\n", - "subplot(223)\n", - "#plot(rho)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "metadata": {}, - "output_type": "pyout", - "prompt_number": 9, - "text": [ - "" - ] - }, - { - "metadata": {}, - "output_type": "display_data", - "png": "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\n8/8BoPUqgBBhb9gAAAAASUVORK5CYII=\n", - "text": [ - "" - ] - } - ], - "prompt_number": 9 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "rho" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "metadata": {}, - "output_type": "pyout", - "prompt_number": 10, - "text": [ - " >" - ] - } - ], - "prompt_number": 10 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "p" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "metadata": {}, - "output_type": "pyout", - "prompt_number": 9, - "text": [ - "array([ -4.29085417e-16, 0.00000000e+00, 0.00000000e+00,\n", - " 0.00000000e+00, 0.00000000e+00, 0.00000000e+00,\n", - " 0.00000000e+00, 0.00000000e+00, 0.00000000e+00,\n", - " 0.00000000e+00])" - ] - } - ], - "prompt_number": 9 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [], - "language": "python", - "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, - "input": [], + "input": [ + "nr_p_period=20\n", + "intsteps=int(floor(1./(gc.getfreq()*dt)/nr_p_period))" + ], + "language": "python", + "metadata": {}, + "outputs": [] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "tube.DoIntegration(dt,intsteps)\n", + "sol=tube.getSol()\n", + "u=sol.u()\n", + "p=sol.p()\n", + "#rho=sol.rho()\n", + "figure(figsize=(9,3))\n", + "subplot(121)\n", + "plot(p)\n", + "subplot(122)\n", + "plot(u)" + ], "language": "python", "metadata": {}, "outputs": []