Skip to content
Snippets Groups Projects
Commit 667a2acf authored by Tu, Ethan's avatar Tu, Ethan
Browse files

Upload New File

parent e859d981
No related branches found
No related tags found
No related merge requests found
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" />
<meta name="generator" content="pdoc 0.7.4" />
<title>test_pk_two_comp API documentation</title>
<meta name="description" content="Created on Thu Feb 27 15:06:08 2020 …" />
<link href='https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.0/normalize.min.css' rel='stylesheet'>
<link href='https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/8.0.0/sanitize.min.css' rel='stylesheet'>
<link href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/github.min.css" rel="stylesheet">
<style>.flex{display:flex !important}body{line-height:1.5em}#content{padding:20px}#sidebar{padding:30px;overflow:hidden}.http-server-breadcrumbs{font-size:130%;margin:0 0 15px 0}#footer{font-size:.75em;padding:5px 30px;border-top:1px solid #ddd;text-align:right}#footer p{margin:0 0 0 1em;display:inline-block}#footer p:last-child{margin-right:30px}h1,h2,h3,h4,h5{font-weight:300}h1{font-size:2.5em;line-height:1.1em}h2{font-size:1.75em;margin:1em 0 .50em 0}h3{font-size:1.4em;margin:25px 0 10px 0}h4{margin:0;font-size:105%}a{color:#058;text-decoration:none;transition:color .3s ease-in-out}a:hover{color:#e82}.title code{font-weight:bold}h2[id^="header-"]{margin-top:2em}.ident{color:#900}pre code{background:#f8f8f8;font-size:.8em;line-height:1.4em}code{background:#f2f2f1;padding:1px 4px;overflow-wrap:break-word}h1 code{background:transparent}pre{background:#f8f8f8;border:0;border-top:1px solid #ccc;border-bottom:1px solid #ccc;margin:1em 0;padding:1ex}#http-server-module-list{display:flex;flex-flow:column}#http-server-module-list div{display:flex}#http-server-module-list dt{min-width:10%}#http-server-module-list p{margin-top:0}.toc ul,#index{list-style-type:none;margin:0;padding:0}#index code{background:transparent}#index h3{border-bottom:1px solid #ddd}#index ul{padding:0}#index h4{font-weight:bold}#index h4 + ul{margin-bottom:.6em}@media (min-width:200ex){#index .two-column{column-count:2}}@media (min-width:300ex){#index .two-column{column-count:3}}dl{margin-bottom:2em}dl dl:last-child{margin-bottom:4em}dd{margin:0 0 1em 3em}#header-classes + dl > dd{margin-bottom:3em}dd dd{margin-left:2em}dd p{margin:10px 0}.name{background:#eee;font-weight:bold;font-size:.85em;padding:5px 10px;display:inline-block;min-width:40%}.name:hover{background:#e0e0e0}.name > span:first-child{white-space:nowrap}.name.class > span:nth-child(2){margin-left:.4em}.inherited{color:#999;border-left:5px solid #eee;padding-left:1em}.inheritance em{font-style:normal;font-weight:bold}.desc h2{font-weight:400;font-size:1.25em}.desc h3{font-size:1em}.desc dt code{background:inherit}.source summary,.git-link-div{color:#666;text-align:right;font-weight:400;font-size:.8em;text-transform:uppercase}.source summary > *{white-space:nowrap;cursor:pointer}.git-link{color:inherit;margin-left:1em}.source pre{max-height:500px;overflow:auto;margin:0}.source pre code{font-size:12px;overflow:visible}.hlist{list-style:none}.hlist li{display:inline}.hlist li:after{content:',\2002'}.hlist li:last-child:after{content:none}.hlist .hlist{display:inline;padding-left:1em}img{max-width:100%}.admonition{padding:.1em .5em;margin-bottom:1em}.admonition-title{font-weight:bold}.admonition.note,.admonition.info,.admonition.important{background:#aef}.admonition.todo,.admonition.versionadded,.admonition.tip,.admonition.hint{background:#dfd}.admonition.warning,.admonition.versionchanged,.admonition.deprecated{background:#fd4}.admonition.error,.admonition.danger,.admonition.caution{background:lightpink}</style>
<style media="screen and (min-width: 700px)">@media screen and (min-width:700px){#sidebar{width:30%}#content{width:70%;max-width:100ch;padding:3em 4em;border-left:1px solid #ddd}pre code{font-size:1em}.item .name{font-size:1em}main{display:flex;flex-direction:row-reverse;justify-content:flex-end}.toc ul ul,#index ul{padding-left:1.5em}.toc > ul > li{margin-top:.5em}}</style>
<style media="print">@media print{#sidebar h1{page-break-before:always}.source{display:none}}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a[href]:after{content:" (" attr(href) ")";font-size:90%}a[href][title]:after{content:none}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h1,h2,h3,h4,h5,h6{page-break-after:avoid}}</style>
</head>
<body>
<main>
<article id="content">
<header>
<h1 class="title">Module <code>test_pk_two_comp</code></h1>
</header>
<section id="section-intro">
<p>Created on Thu Feb 27 15:06:08 2020</p>
<p>@author: Ethan</p>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">&#34;&#34;&#34;
Created on Thu Feb 27 15:06:08 2020
@author: Ethan
&#34;&#34;&#34;
import numpy as np
import pytest
import pathlib
from pk_two_comp import pk_two_comp
def test_pk1_init():
&#34;&#34;&#34;Tests initialization and default values&#34;&#34;&#34;
pk1 = pk_two_comp()
#Test directory is same as one given
assert pk1.filename == &#39;CTPERF005_stress.csv&#39;
assert pk1.flow == 1/60
assert pk1.visf == 0.15
assert pk1.baseline == 60
assert pk1.perm_surf == 0.35 # Initial concentration of tracer in plasma
assert pk1.tmax == 6.5 #Time in seconds
assert pk1.ymax == 250 #Time step
assert pk1.alpha == 2.5 # Alpha for gamma distribution
assert pk1.delay == 0
def test_pk1_diff_file():
&#34;&#34;&#34;Tests initialization given non-default file&#34;&#34;&#34;
pk2 = pk_two_comp(filename=&#39;CTPERF006_stress.csv&#39;)
#Test directory is same as one given
assert pk2.wd == pathlib.Path(&#39;Data&#39;).absolute()
assert pk2.filename == &#39;CTPERF006_stress.csv&#39;
assert pk2.flow == 1/60
assert pk2.visf == 0.15
assert pk2.baseline == 60
assert pk2.perm_surf == 0.35 # Initial concentration of tracer in plasma
assert pk2.tmax == 6.5 #Time in seconds
assert pk2.ymax == 250 #Time step
assert pk2.alpha == 2.5 # Alpha for gamma distribution
assert pk2.delay == 0
def test_pkoptimizer_init_badfile():
&#34;&#34;&#34;Tests inputting non-string filename&#34;&#34;&#34;
try:
pk3 = pk_two_comp(3)
except ValueError:
assert &#39;Filename must be a string&#39;
try:
pk3 = pk_two_comp([2, 3])
except ValueError:
assert &#39;Filename must be a string&#39;
try:
pk3 = pk_two_comp({1:&#39;foo&#39;})
except ValueError:
assert &#39;Filename must be a string&#39;
def test_get_data():
&#34;&#34;&#34;Tests reading in data&#34;&#34;&#34;
pk3 = pk_two_comp()
pk3.get_data(pk3.filename)
assert pk3.time == [0.0, 2.060608000000002, 4.169921999999929, 6.3469239999999445,
8.533386999999948, 10.716613999999936, 12.853088999999954,
14.966369999999984, 17.076660999999945, 19.161744,
21.249634000000015, 23.319885999999997]
assert pk3.aorta == [0.0, 79.0, 197.0, 235.0, 253.0, 200.0, 127.0, 70.0, 41.0, 35.0, 36.0, 44.0]
assert pk3.myo == [62.0, 61.0, 69.0, 91.0, 97.0, 102.0, 104.0, 104.0, 100.0, 95.0, 92.0, 88.0]
def test_dne_file():
&#34;&#34;&#34;Tests does not exist file error&#34;&#34;&#34;
pk4 = pk_two_comp(filename = &#39;ajagea&#39;)
try:
pk4.main()
except ValueError:
assert &#34;Input file does not exist: {0}. I&#39;ll quit now.&#34;
def test_output_mse():
&#34;&#34;&#34;Tests that the aorta/output MSE is calculated correctly&#34;&#34;&#34;
pk5 = pk_two_comp(filename=&#39;CTPERF006_rest.csv&#39;)
pk5.get_data(pk5.filename)
assert pk5.output_mse([13, 223, 10]) == 100000
assert pk5.output_mse([-200, 13, 10]) == 100000
assert pk5.output_mse([123, .33, .20]) == 100000
assert pk5.output_mse([3, 23, 10]) == 8325.489573778586
assert pk5.output_mse([13, 223, -10]) == 100000
assert pk5.output_mse([13, -223, 10]) == 100000
assert pk5.output_mse([.0013, .62, 50]) == 490.78173062264165
def test_main():
&#34;&#34;&#34;Tests main, will calculate all optimal properties correctly&#34;&#34;&#34;
pk6 = pk_two_comp(filename=&#39;CTPERF005_rest.csv&#39;)
pk6.main()
assert pk6.ymax == 403.23
assert pk6.tmax == 12.43
assert pk6.alpha == 9.45
assert pk6.delay == 0
assert pk6.flow == .0052
assert pk6.visf == 0.8452
assert pk6.baseline == 46.5288
</code></pre>
</details>
</section>
<section>
</section>
<section>
</section>
<section>
<h2 class="section-title" id="header-functions">Functions</h2>
<dl>
<dt id="test_pk_two_comp.test_dne_file"><code class="name flex">
<span>def <span class="ident">test_dne_file</span></span>(<span>)</span>
</code></dt>
<dd>
<section class="desc"><p>Tests does not exist file error</p></section>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def test_dne_file():
&#34;&#34;&#34;Tests does not exist file error&#34;&#34;&#34;
pk4 = pk_two_comp(filename = &#39;ajagea&#39;)
try:
pk4.main()
except ValueError:
assert &#34;Input file does not exist: {0}. I&#39;ll quit now.&#34;</code></pre>
</details>
</dd>
<dt id="test_pk_two_comp.test_get_data"><code class="name flex">
<span>def <span class="ident">test_get_data</span></span>(<span>)</span>
</code></dt>
<dd>
<section class="desc"><p>Tests reading in data</p></section>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def test_get_data():
&#34;&#34;&#34;Tests reading in data&#34;&#34;&#34;
pk3 = pk_two_comp()
pk3.get_data(pk3.filename)
assert pk3.time == [0.0, 2.060608000000002, 4.169921999999929, 6.3469239999999445,
8.533386999999948, 10.716613999999936, 12.853088999999954,
14.966369999999984, 17.076660999999945, 19.161744,
21.249634000000015, 23.319885999999997]
assert pk3.aorta == [0.0, 79.0, 197.0, 235.0, 253.0, 200.0, 127.0, 70.0, 41.0, 35.0, 36.0, 44.0]
assert pk3.myo == [62.0, 61.0, 69.0, 91.0, 97.0, 102.0, 104.0, 104.0, 100.0, 95.0, 92.0, 88.0]</code></pre>
</details>
</dd>
<dt id="test_pk_two_comp.test_main"><code class="name flex">
<span>def <span class="ident">test_main</span></span>(<span>)</span>
</code></dt>
<dd>
<section class="desc"><p>Tests main, will calculate all optimal properties correctly</p></section>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def test_main():
&#34;&#34;&#34;Tests main, will calculate all optimal properties correctly&#34;&#34;&#34;
pk6 = pk_two_comp(filename=&#39;CTPERF005_rest.csv&#39;)
pk6.main()
assert pk6.ymax == 403.23
assert pk6.tmax == 12.43
assert pk6.alpha == 9.45
assert pk6.delay == 0
assert pk6.flow == .0052
assert pk6.visf == 0.8452
assert pk6.baseline == 46.5288</code></pre>
</details>
</dd>
<dt id="test_pk_two_comp.test_output_mse"><code class="name flex">
<span>def <span class="ident">test_output_mse</span></span>(<span>)</span>
</code></dt>
<dd>
<section class="desc"><p>Tests that the aorta/output MSE is calculated correctly</p></section>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def test_output_mse():
&#34;&#34;&#34;Tests that the aorta/output MSE is calculated correctly&#34;&#34;&#34;
pk5 = pk_two_comp(filename=&#39;CTPERF006_rest.csv&#39;)
pk5.get_data(pk5.filename)
assert pk5.output_mse([13, 223, 10]) == 100000
assert pk5.output_mse([-200, 13, 10]) == 100000
assert pk5.output_mse([123, .33, .20]) == 100000
assert pk5.output_mse([3, 23, 10]) == 8325.489573778586
assert pk5.output_mse([13, 223, -10]) == 100000
assert pk5.output_mse([13, -223, 10]) == 100000
assert pk5.output_mse([.0013, .62, 50]) == 490.78173062264165</code></pre>
</details>
</dd>
<dt id="test_pk_two_comp.test_pk1_diff_file"><code class="name flex">
<span>def <span class="ident">test_pk1_diff_file</span></span>(<span>)</span>
</code></dt>
<dd>
<section class="desc"><p>Tests initialization given non-default file</p></section>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def test_pk1_diff_file():
&#34;&#34;&#34;Tests initialization given non-default file&#34;&#34;&#34;
pk2 = pk_two_comp(filename=&#39;CTPERF006_stress.csv&#39;)
#Test directory is same as one given
assert pk2.wd == pathlib.Path(&#39;Data&#39;).absolute()
assert pk2.filename == &#39;CTPERF006_stress.csv&#39;
assert pk2.flow == 1/60
assert pk2.visf == 0.15
assert pk2.baseline == 60
assert pk2.perm_surf == 0.35 # Initial concentration of tracer in plasma
assert pk2.tmax == 6.5 #Time in seconds
assert pk2.ymax == 250 #Time step
assert pk2.alpha == 2.5 # Alpha for gamma distribution
assert pk2.delay == 0</code></pre>
</details>
</dd>
<dt id="test_pk_two_comp.test_pk1_init"><code class="name flex">
<span>def <span class="ident">test_pk1_init</span></span>(<span>)</span>
</code></dt>
<dd>
<section class="desc"><p>Tests initialization and default values</p></section>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def test_pk1_init():
&#34;&#34;&#34;Tests initialization and default values&#34;&#34;&#34;
pk1 = pk_two_comp()
#Test directory is same as one given
assert pk1.filename == &#39;CTPERF005_stress.csv&#39;
assert pk1.flow == 1/60
assert pk1.visf == 0.15
assert pk1.baseline == 60
assert pk1.perm_surf == 0.35 # Initial concentration of tracer in plasma
assert pk1.tmax == 6.5 #Time in seconds
assert pk1.ymax == 250 #Time step
assert pk1.alpha == 2.5 # Alpha for gamma distribution
assert pk1.delay == 0</code></pre>
</details>
</dd>
<dt id="test_pk_two_comp.test_pkoptimizer_init_badfile"><code class="name flex">
<span>def <span class="ident">test_pkoptimizer_init_badfile</span></span>(<span>)</span>
</code></dt>
<dd>
<section class="desc"><p>Tests inputting non-string filename</p></section>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def test_pkoptimizer_init_badfile():
&#34;&#34;&#34;Tests inputting non-string filename&#34;&#34;&#34;
try:
pk3 = pk_two_comp(3)
except ValueError:
assert &#39;Filename must be a string&#39;
try:
pk3 = pk_two_comp([2, 3])
except ValueError:
assert &#39;Filename must be a string&#39;
try:
pk3 = pk_two_comp({1:&#39;foo&#39;})
except ValueError:
assert &#39;Filename must be a string&#39;</code></pre>
</details>
</dd>
</dl>
</section>
<section>
</section>
</article>
<nav id="sidebar">
<h1>Index</h1>
<div class="toc">
<ul></ul>
</div>
<ul id="index">
<li><h3><a href="#header-functions">Functions</a></h3>
<ul class="">
<li><code><a title="test_pk_two_comp.test_dne_file" href="#test_pk_two_comp.test_dne_file">test_dne_file</a></code></li>
<li><code><a title="test_pk_two_comp.test_get_data" href="#test_pk_two_comp.test_get_data">test_get_data</a></code></li>
<li><code><a title="test_pk_two_comp.test_main" href="#test_pk_two_comp.test_main">test_main</a></code></li>
<li><code><a title="test_pk_two_comp.test_output_mse" href="#test_pk_two_comp.test_output_mse">test_output_mse</a></code></li>
<li><code><a title="test_pk_two_comp.test_pk1_diff_file" href="#test_pk_two_comp.test_pk1_diff_file">test_pk1_diff_file</a></code></li>
<li><code><a title="test_pk_two_comp.test_pk1_init" href="#test_pk_two_comp.test_pk1_init">test_pk1_init</a></code></li>
<li><code><a title="test_pk_two_comp.test_pkoptimizer_init_badfile" href="#test_pk_two_comp.test_pkoptimizer_init_badfile">test_pkoptimizer_init_badfile</a></code></li>
</ul>
</li>
</ul>
</nav>
</main>
<footer id="footer">
<p>Generated by <a href="https://pdoc3.github.io/pdoc"><cite>pdoc</cite> 0.7.4</a>.</p>
</footer>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad()</script>
</body>
</html>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment