Strange Results

There have been a number of strange results that need to be understood. One way to deal with these issues may be to decrease the timesteps when the recalculate depostion rate overshoots the CFL number. The plane is to reexamine a number of factors. These include the following.

  • Changing the code so that time steps are reevaluated when the recalculated deposition rate exceeds the CFL number.

  • Reducing the CFL number, we'll try 0.1, 0.05, 0.02 and 0.01

  • Trying finer grids to see if there is grid convergence for the simulations that actually look sensible.

  • Running with more sweeps to see if that helps any, try 4, 8, 16.

  • Look over the stdout of the simulations to check if there is anything important

Many Voids

For low values of both $k^+$ and $k^-$ weird mishapen voids occur and the surface appears to have bubbles.


In [2]:
%load_ext autoreload
%autoreload 2
from tools import getSMTRecords
import numpy as np
from multiViewer import MultiViewer
import pandas as pd

def plotkpvkm(records, kPluses=np.logspace(3, 4, 20), kMinuses=np.logspace(7.6, 8.6, 20), times=np.arange(10) * 4000. / 9.):
    getrecord = lambda kPlus, kMinus: getSMTRecords(records=records, parameters={'kPlus' : kPlus, 'kMinus' : kMinus}, rtol=1e-5, atol=1e-3)[0]
    records = [[getrecord(kPlus, kMinus) for kMinus in kMinuses] for kPlus in kPluses]
    viewer = MultiViewer(records,
                         rowtitle=lambda r: r'$k^+$={0:1.2e}'.format(r.parameters['kPlus']),
                         columntitle=lambda r: r'$k^-$={0:1.2e}'.format(r.parameters['kMinus']),
                         figsize=(1.5, 6))
    viewer.plot(times=times)
    return smt_ipy_table([j for i in records for j in i], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['kPlus', 'kMinus'])

In [1]:
%load_ext autoreload
%autoreload 2
from tools import getSMTRecords, smt_ipy_table
records = getSMTRecords()
annular25Records = getSMTRecords(records=records, tags=['annular25'])


Created Django record store using PostgreSQL
/users/wd15/hg/sumatra/sumatra/programs.py:57: Warning: Python could not be found. Please supply the path to the /users/wd15/.virtualenvs/fipy/bin/python executable.
  warnings.warn(errmsg)

In [4]:
from tools import getDepositionRates

kPlus = 20.6913808111
kMinus = 10000000.0
plotkpvkm(annular25Records, kPluses=(kPlus,), kMinuses=(kMinus,))
record = getSMTRecords(records=annular25Records, parameters={'kPlus' : kPlus, 'kMinus' : kMinus})[0]
t, d = getDepositionRates(record)
pylab.semilogy(t, d)
smt_ipy_table([record], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['CFL', 'sweeps', 'Nx'])


Out[4]:
LabelTimestampParametersDurationVersionTags
50bdac1f22182013-08-29 16:53CFL: 0.1, sweeps: 4, Nx: 2004h 37m 30.04s16924142a160annular25

Test simulations


In [2]:
from tools import batch_launch

!date
rboundary = 50e-6 / np.sqrt(np.pi)
kPlus = 20.6913808111
kMinus = 10000000.0
    
reason = "Running simulation with odd voids under different system parameter to check convergence."
    
for CFL in (0.1, 0.05, 0.02, 0.01):
    for sweeps in (4, 8, 16):
        for Nx in (100, 200, 400, 800):
            batch_launch(reason=reason, tags=['annular34'], kPlus=kPlus, kMinus=kMinus, rboundary=rboundary, Nx=Nx, spacing_ratio=1.2, CFL=CFL, sweeps=sweeps)
    
!qstat > qstat_annular34.txt


Thu Sep  5 14:02:14 EDT 2013

In [1]:
%load_ext autoreload
%autoreload 2
from tools import getSMTRecords, smt_ipy_table
records = getSMTRecords()
annular34Records = getSMTRecords(records=records, tags=['annular34'])

smt_ipy_table(annular34Records, fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['CFL', 'sweeps', 'Nx'])


Created Django record store using PostgreSQL
Out[1]:
LabelTimestampParametersDurationVersionTags
0e454738febd2013-09-06 13:16CFL: 0.001, sweeps: 4, Nx: 10018h 8m 15.38se5b0052c9752annular34
b8304d541bc02013-09-05 14:05CFL: 0.01, sweeps: 4, Nx: 1003h 56.20s61094cc93603annular34
bdd22bb9f6cd2013-09-05 14:05CFL: 0.01, sweeps: 16, Nx: 2001d 14h 21m 35.58s61094cc93603annular34
6ea94a3a91252013-09-05 14:05CFL: 0.1, sweeps: 4, Nx: 1001h 49m 41.83s61094cc93603annular34
7ca01c7fdeb52013-09-05 14:05CFL: 0.1, sweeps: 8, Nx: 4001d 21h 2m 26.98s61094cc93603annular34
577290a4ee032013-09-05 14:05CFL: 0.05, sweeps: 8, Nx: 1003h 5m 16.02s61094cc93603annular34
e30c7c9d2cca2013-09-05 14:05CFL: 0.05, sweeps: 16, Nx: 20011h 2m 25.50s61094cc93603annular34
d33cd8ea96bd2013-09-05 14:05CFL: 0.1, sweeps: 4, Nx: 2004h 15m 23.12s61094cc93603annular34
8c1fb88993322013-09-05 14:05CFL: 0.02, sweeps: 4, Nx: 20011h 38m 50.36s61094cc93603annular34
1c43034e3f322013-09-05 14:05CFL: 0.01, sweeps: 16, Nx: 1007h 35m 18.42s61094cc93603annular34
2bd676febbeb2013-09-05 14:05CFL: 0.01, sweeps: 8, Nx: 2001d 2h 32m 16.10s61094cc93603annular34
ed9db15aba502013-09-05 14:05CFL: 0.02, sweeps: 16, Nx: 2001d 3h 33m 24.65s61094cc93603annular34
e5b3831bf18e2013-09-05 14:04CFL: 0.02, sweeps: 4, Nx: 1001h 59m 1.66s61094cc93603annular34
f13b2003af252013-09-05 14:04CFL: 0.05, sweeps: 8, Nx: 4003d 3h 45m 29.95s61094cc93603annular34
49ad65745ff62013-09-05 14:04CFL: 0.1, sweeps: 16, Nx: 1005h 22.29s61094cc93603annular34
9d4cea6ab1d82013-09-05 14:04CFL: 0.05, sweeps: 4, Nx: 2006h 3m 42.65s61094cc93603annular34
992b1b92aee72013-09-05 14:04CFL: 0.05, sweeps: 16, Nx: 1004h 13m 4.00s61094cc93603annular34
be60cfd122b02013-09-05 14:04CFL: 0.02, sweeps: 8, Nx: 1002h 52m 35.16s61094cc93603annular34
0cd7f468cf232013-09-05 14:04CFL: 0.01, sweeps: 8, Nx: 1003h 40m 2.00s61094cc93603annular34
82a8d723949d2013-09-05 14:04CFL: 0.1, sweeps: 16, Nx: 4002d 3h 27m 4.35s61094cc93603annular34
197f77ed6ac42013-09-05 14:04CFL: 0.1, sweeps: 8, Nx: 1002h 49m 28.36s61094cc93603annular34
7c989c2a23262013-09-05 14:04CFL: 0.05, sweeps: 4, Nx: 4001d 12h 11m 27.46s61094cc93603annular34
c7474ce2ffcc2013-09-05 14:04CFL: 0.05, sweeps: 4, Nx: 1001h 11m 15.19s61094cc93603annular34
dad96820d71f2013-09-05 14:04CFL: 0.1, sweeps: 4, Nx: 4001d 2h 47m 15.67s61094cc93603annular34
c30a4a5379492013-09-05 14:04CFL: 0.05, sweeps: 8, Nx: 2008h 39m 54.98s61094cc93603annular34
459f8c97333c2013-09-05 14:04CFL: 0.02, sweeps: 16, Nx: 1003h 41m 32.26s61094cc93603annular34
0a2c3322f9242013-09-05 14:04CFL: 0.1, sweeps: 16, Nx: 20011h 48m 28.72s61094cc93603annular34
01af15e374c12013-09-05 14:04CFL: 0.02, sweeps: 8, Nx: 20015h 21m 38.87s61094cc93603annular34
72a6a88a0b6b2013-09-05 14:04CFL: 0.1, sweeps: 8, Nx: 2008h 57m 5.34s61094cc93603annular34

In [6]:
from multiViewer import MultiViewer
from tools import getRecord

Nxs = (100, 200, 400)
CFLs = (0.1, 0.05, 0.02, 0.01, 0.001)

records = [[getRecord(records=annular34Records, CFL=CFL, Nx=Nx, sweeps=4) for Nx in Nxs] for CFL in CFLs]
viewer = MultiViewer(records,
                     rowtitle=lambda r: r'CFL={0:1.2e}'.format(r.parameters['CFL']),
                     columntitle=lambda r: r'$N$={0}'.format(r.parameters['Nx']),
                     figsize=(1.5, 6))
viewer.plot(times=np.arange(10) * 4000. / 9.)
smt_ipy_table([j for i in records for j in i if j], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['Nx', 'CFL', 'sweeps', 'kPlus', 'kMinus'])


Out[6]:
LabelTimestampParametersDurationVersionTags
6ea94a3a91252013-09-05 14:05Nx: 100, CFL: 0.1, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.01h 49m 41.83s61094cc93603annular34
d33cd8ea96bd2013-09-05 14:05Nx: 200, CFL: 0.1, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.04h 15m 23.12s61094cc93603annular34
dad96820d71f2013-09-05 14:04Nx: 400, CFL: 0.1, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.01d 2h 47m 15.67s61094cc93603annular34
c7474ce2ffcc2013-09-05 14:04Nx: 100, CFL: 0.05, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.01h 11m 15.19s61094cc93603annular34
9d4cea6ab1d82013-09-05 14:04Nx: 200, CFL: 0.05, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.06h 3m 42.65s61094cc93603annular34
7c989c2a23262013-09-05 14:04Nx: 400, CFL: 0.05, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.01d 12h 11m 27.46s61094cc93603annular34
e5b3831bf18e2013-09-05 14:04Nx: 100, CFL: 0.02, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.01h 59m 1.66s61094cc93603annular34
8c1fb88993322013-09-05 14:05Nx: 200, CFL: 0.02, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.011h 38m 50.36s61094cc93603annular34
b8304d541bc02013-09-05 14:05Nx: 100, CFL: 0.01, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.03h 56.20s61094cc93603annular34
0e454738febd2013-09-06 13:16Nx: 100, CFL: 0.001, sweeps: 4, kPlus: 20.6913808111, kMinus: 10000000.018h 8m 15.38se5b0052c9752annular34

In [7]:
from multiViewer import MultiViewer
from tools import getRecord

Nxs = (100, 200, 400)
CFLs = (0.1, 0.05, 0.02, 0.01)

records = [[getRecord(records=annular34Records, CFL=CFL, Nx=Nx, sweeps=8) for Nx in Nxs] for CFL in CFLs]
viewer = MultiViewer(records,
                     rowtitle=lambda r: r'CFL={0:1.2e}'.format(r.parameters['CFL']),
                     columntitle=lambda r: r'$N$={0}'.format(r.parameters['Nx']),
                     figsize=(1.5, 6))
viewer.plot(times=np.arange(10) * 4000. / 9.)
smt_ipy_table([j for i in records for j in i if j], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['Nx', 'CFL', 'sweeps', 'kPlus', 'kMinus'])


Out[7]:
LabelTimestampParametersDurationVersionTags
197f77ed6ac42013-09-05 14:04Nx: 100, CFL: 0.1, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.02h 49m 28.36s61094cc93603annular34
72a6a88a0b6b2013-09-05 14:04Nx: 200, CFL: 0.1, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.08h 57m 5.34s61094cc93603annular34
7ca01c7fdeb52013-09-05 14:05Nx: 400, CFL: 0.1, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.01d 21h 2m 26.98s61094cc93603annular34
577290a4ee032013-09-05 14:05Nx: 100, CFL: 0.05, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.03h 5m 16.02s61094cc93603annular34
c30a4a5379492013-09-05 14:04Nx: 200, CFL: 0.05, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.08h 39m 54.98s61094cc93603annular34
f13b2003af252013-09-05 14:04Nx: 400, CFL: 0.05, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.03d 3h 45m 29.95s61094cc93603annular34
be60cfd122b02013-09-05 14:04Nx: 100, CFL: 0.02, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.02h 52m 35.16s61094cc93603annular34
01af15e374c12013-09-05 14:04Nx: 200, CFL: 0.02, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.015h 21m 38.87s61094cc93603annular34
0cd7f468cf232013-09-05 14:04Nx: 100, CFL: 0.01, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.03h 40m 2.00s61094cc93603annular34
2bd676febbeb2013-09-05 14:05Nx: 200, CFL: 0.01, sweeps: 8, kPlus: 20.6913808111, kMinus: 10000000.01d 2h 32m 16.10s61094cc93603annular34

Simulation that worked quite well


In [5]:
kPlus = np.logspace(1, 3, 20)[18]
kMinus = np.logspace(7, 8, 10)[6]
record = getSMTRecords(records=annular25Records, parameters={'kPlus' : kPlus, 'kMinus' : kMinus})[0]
plotkpvkm(annular25Records, kPluses=(kPlus,), kMinuses=(kMinus,))
t, d = getDepositionRates(record)
pylab.semilogy(t, d)
smt_ipy_table([record], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['CFL', 'sweeps', 'Nx'])


Out[5]:
LabelTimestampParametersDurationVersionTags
c0a28a5b7a202013-08-29 23:58CFL: 0.1, sweeps: 4, Nx: 2002h 50m 35.50s833d981d693bannular25

Test Simulations


In [3]:
from tools import batch_launch

kPlus = np.logspace(1, 3, 20)[18]
kMinus = np.logspace(7, 8, 10)[6]

!date
rboundary = 50e-6 / np.sqrt(np.pi)
    
reason = "Running simulation that seems to be good under different system parameter to check convergence."
    
for CFL in (0.1, 0.05, 0.02, 0.01):
    for sweeps in (4, 8, 16):
        for Nx in (100, 200, 400, 800):
            batch_launch(reason=reason, tags=['annular35'], kPlus=kPlus, kMinus=kMinus, rboundary=rboundary, Nx=Nx, spacing_ratio=1.2, CFL=CFL, sweeps=sweeps)

!qstat > qstat_annular35.txt


Thu Sep  5 14:02:35 EDT 2013

In [1]:
%load_ext autoreload
%autoreload 2
from tools import getSMTRecords, smt_ipy_table
records = getSMTRecords()
annular35Records = getSMTRecords(records=records, tags=['annular35'])

smt_ipy_table(annular35Records, fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['CFL', 'sweeps', 'Nx'])


Created Django record store using PostgreSQL
Out[1]:
LabelTimestampParametersDurationVersionTags
a0dbb725df542013-09-06 13:17CFL: 0.001, sweeps: 4, Nx: 10019h 57m 8.86se5b0052c9752annular35
c47986b86f632013-09-05 14:06CFL: 0.05, sweeps: 16, Nx: 1005h 15m 11.08s61094cc93603annular35
4ee10d0c1ef52013-09-05 14:06CFL: 0.01, sweeps: 4, Nx: 4003d 23h 24m 35.00s61094cc93603annular35
cedb30969b4b2013-09-05 14:06CFL: 0.05, sweeps: 16, Nx: 20012h 41m 27.03s61094cc93603annular35
03436b8da42c2013-09-05 14:06CFL: 0.05, sweeps: 4, Nx: 1001h 44m 6.44s61094cc93603annular35
575dbf3952dd2013-09-05 14:06CFL: 0.02, sweeps: 16, Nx: 1005h 39m 49.66s61094cc93603annular35
5f63d394d0f22013-09-05 14:06CFL: 0.01, sweeps: 8, Nx: 20022h 17m 6.75s61094cc93603annular35
b08f2b0d35242013-09-05 14:06CFL: 0.01, sweeps: 4, Nx: 1003h 16m 29.80s61094cc93603annular35
488408f6731d2013-09-05 14:06CFL: 0.05, sweeps: 8, Nx: 4001d 19h 19m 34.93s61094cc93603annular35
51d3edd90ae32013-09-05 14:06CFL: 0.02, sweeps: 16, Nx: 20020h 50m 43.94s61094cc93603annular35
ba915eb1091c2013-09-05 14:06CFL: 0.05, sweeps: 4, Nx: 4001d 3h 28m 37.43s61094cc93603annular35
3225763ea64f2013-09-05 14:06CFL: 0.1, sweeps: 16, Nx: 4002d 1h 45m 33.85s61094cc93603annular35
e28c373f33842013-09-05 14:06CFL: 0.02, sweeps: 8, Nx: 20014h 30m 13.73s61094cc93603annular35
88c78c4737b92013-09-05 14:06CFL: 0.05, sweeps: 16, Nx: 4002d 22h 52m 2.69s61094cc93603annular35
2d02279cb46a2013-09-05 14:06CFL: 0.02, sweeps: 8, Nx: 4003d 10h 32m 27.50s61094cc93603annular35
badf924a95952013-09-05 14:06CFL: 0.05, sweeps: 4, Nx: 2005h 8m 7.95s61094cc93603annular35
c842c05ead0c2013-09-05 14:06CFL: 0.01, sweeps: 16, Nx: 2001d 9h 51m 10.38s61094cc93603annular35
90ca65dd8ea12013-09-05 14:06CFL: 0.01, sweeps: 16, Nx: 1008h 30m 31.08s61094cc93603annular35
c5e861f1739a2013-09-05 14:05CFL: 0.02, sweeps: 4, Nx: 4002d 6h 22m 30.94s61094cc93603annular35
134ff57fe3922013-09-05 14:05CFL: 0.1, sweeps: 16, Nx: 1005h 16m 11.58s61094cc93603annular35
7606755ef4c32013-09-05 14:05CFL: 0.02, sweeps: 4, Nx: 1001h 58m 40.12s61094cc93603annular35
3e2ddb2a65162013-09-05 14:05CFL: 0.02, sweeps: 8, Nx: 1003h 18m 30.29s61094cc93603annular35
9c1f5761552a2013-09-05 14:05CFL: 0.02, sweeps: 4, Nx: 2008h 46m 54.34s61094cc93603annular35
5e913f56e6042013-09-05 14:05CFL: 0.01, sweeps: 8, Nx: 1005h 16m 57.97s61094cc93603annular35
75e5537ba8e62013-09-05 14:05CFL: 0.01, sweeps: 4, Nx: 20015h 1m 47.04s61094cc93603annular35
f2a17177ad4b2013-09-05 14:05CFL: 0.05, sweeps: 8, Nx: 2008h 2m 45.97s61094cc93603annular35
178c149897ad2013-09-05 14:05CFL: 0.1, sweeps: 4, Nx: 2004h 56m 2.93s61094cc93603annular35
b764522dd1b02013-09-05 14:05CFL: 0.1, sweeps: 8, Nx: 4001d 7h 56m 49.27s61094cc93603annular35
f9b8801bdc922013-09-05 14:05CFL: 0.1, sweeps: 4, Nx: 40020h 42m 48.67s61094cc93603annular35
e04d908cca522013-09-05 14:05CFL: 0.1, sweeps: 16, Nx: 20011h 43m 8.10s61094cc93603annular35
51fcc57285392013-09-05 14:05CFL: 0.05, sweeps: 8, Nx: 1003h 9m 42.48s61094cc93603annular35
7db808e07f662013-09-05 14:04CFL: 0.1, sweeps: 8, Nx: 1002h 45m 16.19s61094cc93603annular35
53c3713a5c7c2013-09-05 14:04CFL: 0.1, sweeps: 4, Nx: 1001h 43m 11.08s61094cc93603annular35
1f53932dd2332013-09-05 14:02CFL: 0.1, sweeps: 8, Nx: 2007h 13m 47.85s61094cc93603annular35

In [4]:
%load_ext autoreload
%autoreload 2

from multiViewer import MultiViewer
from tools import getRecord

Nxs = (100, 200, 400)
CFLs = (0.1, 0.05, 0.02, 0.01, 0.001)
    
records = [[getRecord(records=annular35Records, CFL=CFL, Nx=Nx, sweeps=4) for Nx in Nxs] for CFL in CFLs]
viewer = MultiViewer(records,
                     rowtitle=lambda r: r'CFL={0:1.2e}'.format(r.parameters['CFL']),
                     columntitle=lambda r: r'$N$={0}'.format(r.parameters['Nx']),
                     figsize=(1.5, 6))
viewer.plot(times=np.arange(10) * 4000. / 9.)
smt_ipy_table([j for i in records for j in i if j], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['Nx', 'CFL', 'sweeps', 'kPlus', 'kMinus'])


Out[4]:
LabelTimestampParametersDurationVersionTags
53c3713a5c7c2013-09-05 14:04Nx: 100, CFL: 0.1, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33611h 43m 11.08s61094cc93603annular35
178c149897ad2013-09-05 14:05Nx: 200, CFL: 0.1, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33614h 56m 2.93s61094cc93603annular35
f9b8801bdc922013-09-05 14:05Nx: 400, CFL: 0.1, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.336120h 42m 48.67s61094cc93603annular35
03436b8da42c2013-09-05 14:06Nx: 100, CFL: 0.05, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33611h 44m 6.44s61094cc93603annular35
badf924a95952013-09-05 14:06Nx: 200, CFL: 0.05, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33615h 8m 7.95s61094cc93603annular35
ba915eb1091c2013-09-05 14:06Nx: 400, CFL: 0.05, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33611d 3h 28m 37.43s61094cc93603annular35
7606755ef4c32013-09-05 14:05Nx: 100, CFL: 0.02, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33611h 58m 40.12s61094cc93603annular35
9c1f5761552a2013-09-05 14:05Nx: 200, CFL: 0.02, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33618h 46m 54.34s61094cc93603annular35
c5e861f1739a2013-09-05 14:05Nx: 400, CFL: 0.02, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33612d 6h 22m 30.94s61094cc93603annular35
b08f2b0d35242013-09-05 14:06Nx: 100, CFL: 0.01, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33613h 16m 29.80s61094cc93603annular35
75e5537ba8e62013-09-05 14:05Nx: 200, CFL: 0.01, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.336115h 1m 47.04s61094cc93603annular35
4ee10d0c1ef52013-09-05 14:06Nx: 400, CFL: 0.01, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.33613d 23h 24m 35.00s61094cc93603annular35
a0dbb725df542013-09-06 13:17Nx: 100, CFL: 0.001, sweeps: 4, kPlus: 784.759970351, kMinus: 46415888.336119h 57m 8.86se5b0052c9752annular35

In [6]:
%load_ext autoreload
%autoreload 2

from multiViewer import MultiViewer
from tools import getRecord

Nxs = (100, 200, 400)
CFLs = (0.1, 0.05, 0.02, 0.01)
    
records = [[getRecord(records=annular35Records, CFL=CFL, Nx=Nx, sweeps=8) for Nx in Nxs] for CFL in CFLs]
viewer = MultiViewer(records,
                     rowtitle=lambda r: r'CFL={0:1.2e}'.format(r.parameters['CFL']),
                     columntitle=lambda r: r'$N$={0}'.format(r.parameters['Nx']),
                     figsize=(1.5, 6))
viewer.plot(times=np.arange(10) * 4000. / 9.)
smt_ipy_table([j for i in records for j in i if j], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['Nx', 'CFL', 'sweeps', 'kPlus', 'kMinus'])


Out[6]:
LabelTimestampParametersDurationVersionTags
7db808e07f662013-09-05 14:04Nx: 100, CFL: 0.1, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33612h 45m 16.19s61094cc93603annular35
1f53932dd2332013-09-05 14:02Nx: 200, CFL: 0.1, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33617h 13m 47.85s61094cc93603annular35
b764522dd1b02013-09-05 14:05Nx: 400, CFL: 0.1, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33611d 7h 56m 49.27s61094cc93603annular35
51fcc57285392013-09-05 14:05Nx: 100, CFL: 0.05, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33613h 9m 42.48s61094cc93603annular35
f2a17177ad4b2013-09-05 14:05Nx: 200, CFL: 0.05, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33618h 2m 45.97s61094cc93603annular35
488408f6731d2013-09-05 14:06Nx: 400, CFL: 0.05, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33611d 19h 19m 34.93s61094cc93603annular35
3e2ddb2a65162013-09-05 14:05Nx: 100, CFL: 0.02, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33613h 18m 30.29s61094cc93603annular35
e28c373f33842013-09-05 14:06Nx: 200, CFL: 0.02, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.336114h 30m 13.73s61094cc93603annular35
2d02279cb46a2013-09-05 14:06Nx: 400, CFL: 0.02, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33613d 10h 32m 27.50s61094cc93603annular35
5e913f56e6042013-09-05 14:05Nx: 100, CFL: 0.01, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.33615h 16m 57.97s61094cc93603annular35
5f63d394d0f22013-09-05 14:06Nx: 200, CFL: 0.01, sweeps: 8, kPlus: 784.759970351, kMinus: 46415888.336122h 17m 6.75s61094cc93603annular35

In [7]:
%load_ext autoreload
%autoreload 2

from multiViewer import MultiViewer
from tools import getRecord

Nxs = (100, 200, 400)
CFLs = (0.1, 0.05, 0.02, 0.01)
    
records = [[getRecord(records=annular35Records, CFL=CFL, Nx=Nx, sweeps=16) for Nx in Nxs] for CFL in CFLs]
viewer = MultiViewer(records,
                     rowtitle=lambda r: r'CFL={0:1.2e}'.format(r.parameters['CFL']),
                     columntitle=lambda r: r'$N$={0}'.format(r.parameters['Nx']),
                     figsize=(1.5, 6))
viewer.plot(times=np.arange(10) * 4000. / 9.)
smt_ipy_table([j for i in records for j in i if j], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['Nx', 'CFL', 'sweeps', 'kPlus', 'kMinus'])


Out[7]:
LabelTimestampParametersDurationVersionTags
134ff57fe3922013-09-05 14:05Nx: 100, CFL: 0.1, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.33615h 16m 11.58s61094cc93603annular35
e04d908cca522013-09-05 14:05Nx: 200, CFL: 0.1, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.336111h 43m 8.10s61094cc93603annular35
3225763ea64f2013-09-05 14:06Nx: 400, CFL: 0.1, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.33612d 1h 45m 33.85s61094cc93603annular35
c47986b86f632013-09-05 14:06Nx: 100, CFL: 0.05, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.33615h 15m 11.08s61094cc93603annular35
cedb30969b4b2013-09-05 14:06Nx: 200, CFL: 0.05, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.336112h 41m 27.03s61094cc93603annular35
88c78c4737b92013-09-05 14:06Nx: 400, CFL: 0.05, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.33612d 22h 52m 2.69s61094cc93603annular35
575dbf3952dd2013-09-05 14:06Nx: 100, CFL: 0.02, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.33615h 39m 49.66s61094cc93603annular35
51d3edd90ae32013-09-05 14:06Nx: 200, CFL: 0.02, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.336120h 50m 43.94s61094cc93603annular35
90ca65dd8ea12013-09-05 14:06Nx: 100, CFL: 0.01, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.33618h 30m 31.08s61094cc93603annular35
c842c05ead0c2013-09-05 14:06Nx: 200, CFL: 0.01, sweeps: 16, kPlus: 784.759970351, kMinus: 46415888.33611d 9h 51m 10.38s61094cc93603annular35

Strange simulation for large $k+$


In [1]:
%load_ext autoreload
%autoreload 2
from tools import getSMTRecords, smt_ipy_table
records = getSMTRecords()
annular26Records = getSMTRecords(records=records, tags=['annular26'])


Created Django record store using PostgreSQL

In [12]:
from tools import getDepositionRates

kPlus = np.logspace(3, 4, 20)[17]
kMinus = np.logspace(7.6, 8.6, 20)[10]

record = getSMTRecords(records=annular26Records, parameters={'kPlus' : kPlus, 'kMinus' : kMinus})[0]
plotkpvkm(annular26Records, kPluses=(kPlus,), kMinuses=(kMinus,))
t, d = getDepositionRates(record)
pylab.semilogy(t, d)
smt_ipy_table([record], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['CFL', 'sweeps', 'Nx'])


Out[12]:
LabelTimestampParametersDurationVersionTags
6bfe9b2964212013-08-30 21:52CFL: 0.1, sweeps: 4, Nx: 2002h 39m 47.57sf95d34563c95annular26

Test Simulations


In [4]:
from tools import batch_launch

kPlus = np.logspace(3, 4, 20)[17]
kMinus = np.logspace(7.6, 8.6, 20)[10]

!date
rboundary = 50e-6 / np.sqrt(np.pi)
    
reason = "Running strange simulation under different system parameter to check convergence."
    
for CFL in (0.1, 0.05, 0.02, 0.01):
    for sweeps in (4, 8, 16):
        for Nx in (100, 200, 400, 800):
            batch_launch(reason=reason, tags=['annular36'], kPlus=kPlus, kMinus=kMinus, rboundary=rboundary, Nx=Nx, spacing_ratio=1.2, CFL=CFL, sweeps=sweeps)
    
!qstat > qstat_annular36.txt


Thu Sep  5 14:03:05 EDT 2013

In [1]:
%load_ext autoreload
%autoreload 2
from tools import getSMTRecords, smt_ipy_table
records = getSMTRecords()
annular36Records = getSMTRecords(records=records, tags=['annular36'])

smt_ipy_table(annular36Records, fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['CFL', 'sweeps', 'Nx'])


Created Django record store using PostgreSQL
Out[1]:
LabelTimestampParametersDurationVersionTags
a81456725ef12013-09-06 13:18CFL: 0.001, sweeps: 4, Nx: 10018h 59m 52.09se5b0052c9752annular36
6aec4024b0b22013-09-06 13:18CFL: 0.001, sweeps: 4, Nx: 4003d 1h 53m 14.53se5b0052c9752annular36
c4324be09f242013-09-05 14:06CFL: 0.1, sweeps: 8, Nx: 1002h 58m 37.74s61094cc93603annular36
f9382130e6412013-09-05 14:06CFL: 0.1, sweeps: 4, Nx: 8002d 19h 47m 20.75s61094cc93603annular36
e3a8c01ad3482013-09-05 14:06CFL: 0.1, sweeps: 4, Nx: 1001h 37m 19.63s61094cc93603annular36
a19298d3b4632013-09-05 14:06CFL: 0.1, sweeps: 4, Nx: 2004h 14m 23.34s61094cc93603annular36
f7f4498b11f42013-09-05 14:05CFL: 0.01, sweeps: 16, Nx: 1009h 59m 10.11s61094cc93603annular36
40b7dfe0fd3c2013-09-05 14:05CFL: 0.02, sweeps: 4, Nx: 4002d 1h 38m 0.91s61094cc93603annular36
5b7ad9b9e3432013-09-05 14:05CFL: 0.01, sweeps: 4, Nx: 1002h 30m 21.89s61094cc93603annular36
e8a36c8d43c72013-09-05 14:05CFL: 0.1, sweeps: 8, Nx: 2006h 11m 19.35s61094cc93603annular36
475442379a9b2013-09-05 14:05CFL: 0.1, sweeps: 8, Nx: 4001d 3h 34m 27.93s61094cc93603annular36
4052bc5bdb762013-09-05 14:05CFL: 0.1, sweeps: 16, Nx: 1004h 6m 39.34s61094cc93603annular36
2ac85a76b8732013-09-05 14:05CFL: 0.05, sweeps: 16, Nx: 1004h 9m 24.40s61094cc93603annular36
7adaa3fab9b32013-09-05 14:05CFL: 0.02, sweeps: 8, Nx: 20012h 45m 4.82s61094cc93603annular36
95fd0da39b402013-09-05 14:05CFL: 0.1, sweeps: 16, Nx: 20010h 28m 55.44s61094cc93603annular36
fc9a8d4730812013-09-05 14:05CFL: 0.05, sweeps: 4, Nx: 2004h 3m 25.35s61094cc93603annular36
9dccef9cefa52013-09-05 14:05CFL: 0.1, sweeps: 4, Nx: 40012h 14m 9.23s61094cc93603annular36
f62e0ad71fb12013-09-05 14:05CFL: 0.05, sweeps: 4, Nx: 40013h 37m 9.27s61094cc93603annular36
b00a411c18462013-09-05 14:05CFL: 0.01, sweeps: 4, Nx: 40018h 36m 5.39s61094cc93603annular36
3ce7e63deb432013-09-05 14:05CFL: 0.05, sweeps: 16, Nx: 20012h 8m 24.73s61094cc93603annular36
2e63c240ea472013-09-05 14:05CFL: 0.1, sweeps: 16, Nx: 4001d 23h 9m 57.99s61094cc93603annular36
9bcdf0c0b6d12013-09-05 14:05CFL: 0.02, sweeps: 16, Nx: 1006h 14m 36.31s61094cc93603annular36
9adc354c6b272013-09-05 14:05CFL: 0.05, sweeps: 8, Nx: 1002h 50m 50.23s61094cc93603annular36
0557616b5e902013-09-05 14:04CFL: 0.02, sweeps: 4, Nx: 2008h 4m 34.64s61094cc93603annular36
9a963e5b1f372013-09-05 14:04CFL: 0.05, sweeps: 8, Nx: 2008h 35m 19.45s61094cc93603annular36
a5467bb8f6f12013-09-05 14:04CFL: 0.05, sweeps: 16, Nx: 4003d 3h 30m 35.44s61094cc93603annular36
02b7748388692013-09-05 14:04CFL: 0.05, sweeps: 4, Nx: 8003d 14h 23m 13.88s61094cc93603annular36
00a66811ab062013-09-05 14:04CFL: 0.01, sweeps: 8, Nx: 1006h 1m 24.10s61094cc93603annular36
e8e73fd3d2262013-09-05 14:04CFL: 0.02, sweeps: 8, Nx: 1002h 27m 59.62s61094cc93603annular36
98adb373e8552013-09-05 14:04CFL: 0.01, sweeps: 8, Nx: 20016h 36m 50.24s61094cc93603annular36
0a08e78c2bec2013-09-05 14:04CFL: 0.02, sweeps: 4, Nx: 1002h 32m 11.72s61094cc93603annular36
0d5618c9e4f72013-09-05 14:04CFL: 0.02, sweeps: 8, Nx: 4003d 12h 9m 33.85s61094cc93603annular36
820f2e84ad932013-09-05 14:04CFL: 0.01, sweeps: 4, Nx: 20010h 46m 0.73s61094cc93603annular36
4292522d53992013-09-05 14:04CFL: 0.05, sweeps: 8, Nx: 4001d 19h 23m 29.63s61094cc93603annular36
18cb415481da2013-09-05 14:04CFL: 0.05, sweeps: 4, Nx: 1001h 26m 3.60s61094cc93603annular36
6afbc1c324712013-09-05 14:04CFL: 0.01, sweeps: 16, Nx: 2001d 5h 18m 32.89s61094cc93603annular36
1b417de65b542013-09-05 14:04CFL: 0.02, sweeps: 16, Nx: 20018h 54m 41.14s61094cc93603annular36

In [4]:
%load_ext autoreload
%autoreload 2

from multiViewer import MultiViewer
from tools import getRecord

Nxs = (100, 200, 400)
CFLs = (0.1, 0.05, 0.02, 0.01, 0.001)
    
records = [[getRecord(records=annular36Records, CFL=CFL, Nx=Nx, sweeps=4) for Nx in Nxs] for CFL in CFLs]
viewer = MultiViewer(records,
                     rowtitle=lambda r: r'CFL={0:1.2e}'.format(r.parameters['CFL']),
                     columntitle=lambda r: r'$N$={0}'.format(r.parameters['Nx']),
                     figsize=(1.5, 6))
viewer.plot(times=np.arange(10) * 4000. / 9.)
smt_ipy_table([j for i in records for j in i if j], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['Nx', 'CFL', 'sweeps', 'kPlus', 'kMinus'])


Out[4]:
LabelTimestampParametersDurationVersionTags
e3a8c01ad3482013-09-05 14:06Nx: 100, CFL: 0.1, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1531h 37m 19.63s61094cc93603annular36
a19298d3b4632013-09-05 14:06Nx: 200, CFL: 0.1, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1534h 14m 23.34s61094cc93603annular36
9dccef9cefa52013-09-05 14:05Nx: 400, CFL: 0.1, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.15312h 14m 9.23s61094cc93603annular36
18cb415481da2013-09-05 14:04Nx: 100, CFL: 0.05, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1531h 26m 3.60s61094cc93603annular36
fc9a8d4730812013-09-05 14:05Nx: 200, CFL: 0.05, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1534h 3m 25.35s61094cc93603annular36
f62e0ad71fb12013-09-05 14:05Nx: 400, CFL: 0.05, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.15313h 37m 9.27s61094cc93603annular36
0a08e78c2bec2013-09-05 14:04Nx: 100, CFL: 0.02, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1532h 32m 11.72s61094cc93603annular36
0557616b5e902013-09-05 14:04Nx: 200, CFL: 0.02, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1538h 4m 34.64s61094cc93603annular36
40b7dfe0fd3c2013-09-05 14:05Nx: 400, CFL: 0.02, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1532d 1h 38m 0.91s61094cc93603annular36
5b7ad9b9e3432013-09-05 14:05Nx: 100, CFL: 0.01, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1532h 30m 21.89s61094cc93603annular36
820f2e84ad932013-09-05 14:04Nx: 200, CFL: 0.01, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.15310h 46m 0.73s61094cc93603annular36
b00a411c18462013-09-05 14:05Nx: 400, CFL: 0.01, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.15318h 36m 5.39s61094cc93603annular36
a81456725ef12013-09-06 13:18Nx: 100, CFL: 0.001, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.15318h 59m 52.09se5b0052c9752annular36
6aec4024b0b22013-09-06 13:18Nx: 400, CFL: 0.001, sweeps: 4, kPlus: 7847.59970351, kMinus: 133756775.1533d 1h 53m 14.53se5b0052c9752annular36

In [5]:
%load_ext autoreload
%autoreload 2

from multiViewer import MultiViewer
from tools import getRecord

Nxs = (100, 200, 400)
CFLs = (0.1, 0.05, 0.02, 0.01)
    
records = [[getRecord(records=annular36Records, CFL=CFL, Nx=Nx, sweeps=8) for Nx in Nxs] for CFL in CFLs]
viewer = MultiViewer(records,
                     rowtitle=lambda r: r'CFL={0:1.2e}'.format(r.parameters['CFL']),
                     columntitle=lambda r: r'$N$={0}'.format(r.parameters['Nx']),
                     figsize=(1.5, 6))
viewer.plot(times=np.arange(10) * 4000. / 9.)
smt_ipy_table([j for i in records for j in i if j], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['Nx', 'CFL', 'sweeps', 'kPlus', 'kMinus'])


Out[5]:
LabelTimestampParametersDurationVersionTags
c4324be09f242013-09-05 14:06Nx: 100, CFL: 0.1, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1532h 58m 37.74s61094cc93603annular36
e8a36c8d43c72013-09-05 14:05Nx: 200, CFL: 0.1, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1536h 11m 19.35s61094cc93603annular36
475442379a9b2013-09-05 14:05Nx: 400, CFL: 0.1, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1531d 3h 34m 27.93s61094cc93603annular36
9adc354c6b272013-09-05 14:05Nx: 100, CFL: 0.05, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1532h 50m 50.23s61094cc93603annular36
9a963e5b1f372013-09-05 14:04Nx: 200, CFL: 0.05, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1538h 35m 19.45s61094cc93603annular36
4292522d53992013-09-05 14:04Nx: 400, CFL: 0.05, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1531d 19h 23m 29.63s61094cc93603annular36
e8e73fd3d2262013-09-05 14:04Nx: 100, CFL: 0.02, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1532h 27m 59.62s61094cc93603annular36
7adaa3fab9b32013-09-05 14:05Nx: 200, CFL: 0.02, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.15312h 45m 4.82s61094cc93603annular36
0d5618c9e4f72013-09-05 14:04Nx: 400, CFL: 0.02, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1533d 12h 9m 33.85s61094cc93603annular36
00a66811ab062013-09-05 14:04Nx: 100, CFL: 0.01, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.1536h 1m 24.10s61094cc93603annular36
98adb373e8552013-09-05 14:04Nx: 200, CFL: 0.01, sweeps: 8, kPlus: 7847.59970351, kMinus: 133756775.15316h 36m 50.24s61094cc93603annular36

In [6]:
%load_ext autoreload
%autoreload 2

from multiViewer import MultiViewer
from tools import getRecord

Nxs = (100, 200, 400)
CFLs = (0.1, 0.05, 0.02, 0.01)
    
records = [[getRecord(records=annular36Records, CFL=CFL, Nx=Nx, sweeps=16) for Nx in Nxs] for CFL in CFLs]
viewer = MultiViewer(records,
                     rowtitle=lambda r: r'CFL={0:1.2e}'.format(r.parameters['CFL']),
                     columntitle=lambda r: r'$N$={0}'.format(r.parameters['Nx']),
                     figsize=(1.5, 6))
viewer.plot(times=np.arange(10) * 4000. / 9.)
smt_ipy_table([j for i in records for j in i if j], fields=['label', 'timestamp', 'parameters', 'duration', 'version', 'tags'], parameters=['Nx', 'CFL', 'sweeps', 'kPlus', 'kMinus'])


Out[6]:
LabelTimestampParametersDurationVersionTags
4052bc5bdb762013-09-05 14:05Nx: 100, CFL: 0.1, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.1534h 6m 39.34s61094cc93603annular36
95fd0da39b402013-09-05 14:05Nx: 200, CFL: 0.1, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.15310h 28m 55.44s61094cc93603annular36
2e63c240ea472013-09-05 14:05Nx: 400, CFL: 0.1, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.1531d 23h 9m 57.99s61094cc93603annular36
2ac85a76b8732013-09-05 14:05Nx: 100, CFL: 0.05, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.1534h 9m 24.40s61094cc93603annular36
3ce7e63deb432013-09-05 14:05Nx: 200, CFL: 0.05, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.15312h 8m 24.73s61094cc93603annular36
a5467bb8f6f12013-09-05 14:04Nx: 400, CFL: 0.05, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.1533d 3h 30m 35.44s61094cc93603annular36
9bcdf0c0b6d12013-09-05 14:05Nx: 100, CFL: 0.02, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.1536h 14m 36.31s61094cc93603annular36
1b417de65b542013-09-05 14:04Nx: 200, CFL: 0.02, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.15318h 54m 41.14s61094cc93603annular36
f7f4498b11f42013-09-05 14:05Nx: 100, CFL: 0.01, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.1539h 59m 10.11s61094cc93603annular36
6afbc1c324712013-09-05 14:04Nx: 200, CFL: 0.01, sweeps: 16, kPlus: 7847.59970351, kMinus: 133756775.1531d 5h 18m 32.89s61094cc93603annular36