Skip to content

Commit 6fbaa64

Browse files
authored
Merge pull request #56 from python-hydro/notebooks
Notebooks
2 parents cb44937 + 8fcc8f5 commit 6fbaa64

4 files changed

Lines changed: 83 additions & 63 deletions

File tree

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ before_script:
2323

2424
script:
2525
- flake8 .
26-
- pytest -v --cov=. --cov-config .coveragerc --nbval --ignore=docs --ignore=./multigrid/variable_coeff_elliptic.ipynb --ignore=examples
26+
- pytest -v --cov=. --cov-config .coveragerc --nbval --ignore=docs --ignore=./multigrid/variable_coeff_elliptic.ipynb --ignore=examples/mesh --ignore=examples/multigrid
2727
# - travis-sphinx build
2828

2929
# after_success:

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ http://python-hydro.github.io/pyro2/
7777
directory.
7878

7979
* Define the environment variable `PYRO_HOME` to point to the
80-
`pyro2/` directory
80+
`pyro2/` directory (only needed for regression testing)
8181

8282
* Build the Fortran source. In `pyro2/` type
8383

examples/examples.ipynb

Lines changed: 75 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -271,8 +271,8 @@
271271
" 11 1.00000 0.00000\n",
272272
"\u001b[33moutputting...\u001b[0m\n",
273273
"\u001b[33moutputting...\u001b[0m\n",
274-
"vis: 0.2423102855682373\n",
275-
"main: 0.07352924346923828\n"
274+
"vis: 0.4468967914581299\n",
275+
"main: 0.1479780673980713\n"
276276
]
277277
},
278278
{
@@ -351,61 +351,81 @@
351351
"metadata": {},
352352
"outputs": [
353353
{
354-
"name": "stdout",
355-
"output_type": "stream",
356-
"text": [
357-
"[[1.36456254 1.1670318 1.01964861 1.0019269 1.0034205 1.03779893\n",
358-
" 1.19356852 1.36368295 1.36456254 1.1670318 1.01964861 1.0019269\n",
359-
" 1.0034205 1.03779893 1.19356852 1.36368295]\n",
360-
" [1.1670318 1.1010689 1.01794261 1.00172162 1.00146403 1.00815036\n",
361-
" 1.05467319 1.14089365 1.1670318 1.1010689 1.01794261 1.00172162\n",
362-
" 1.00146403 1.00815036 1.05467319 1.14089365]\n",
363-
" [1.01964861 1.01794261 1.00386665 1.00034788 1.00015378 1.00017897\n",
364-
" 1.00141073 1.01213761 1.01964861 1.01794261 1.00386665 1.00034788\n",
365-
" 1.00015378 1.00017897 1.00141073 1.01213761]\n",
366-
" [1.0019269 1.00172162 1.00034788 1.00025512 1.00085108 0.99958517\n",
367-
" 0.99836213 1.00032876 1.0019269 1.00172162 1.00034788 1.00025512\n",
368-
" 1.00085108 0.99958517 0.99836213 1.00032876]\n",
369-
" [1.0034205 1.00146403 1.00015378 1.00085108 1.00036435 0.99369049\n",
370-
" 0.99065988 1.00056788 1.0034205 1.00146403 1.00015378 1.00085108\n",
371-
" 1.00036435 0.99369049 0.99065988 1.00056788]\n",
372-
" [1.03779893 1.00815036 1.00017897 0.99958517 0.99369049 0.97697494\n",
373-
" 0.9889869 1.02461354 1.03779893 1.00815036 1.00017897 0.99958517\n",
374-
" 0.99369049 0.97697494 0.9889869 1.02461354]\n",
375-
" [1.19356852 1.05467319 1.00141073 0.99836213 0.99065988 0.9889869\n",
376-
" 1.09690099 1.19801589 1.19356852 1.05467319 1.00141073 0.99836213\n",
377-
" 0.99065988 0.9889869 1.09690099 1.19801589]\n",
378-
" [1.36368295 1.14089365 1.01213761 1.00032876 1.00056788 1.02461354\n",
379-
" 1.19801589 1.36305079 1.36368295 1.14089365 1.01213761 1.00032876\n",
380-
" 1.00056788 1.02461354 1.19801589 1.36305079]\n",
381-
" [1.36456254 1.1670318 1.01964861 1.0019269 1.0034205 1.03779893\n",
382-
" 1.19356852 1.36368295 1.36456254 1.1670318 1.01964861 1.0019269\n",
383-
" 1.0034205 1.03779893 1.19356852 1.36368295]\n",
384-
" [1.1670318 1.1010689 1.01794261 1.00172162 1.00146403 1.00815036\n",
385-
" 1.05467319 1.14089365 1.1670318 1.1010689 1.01794261 1.00172162\n",
386-
" 1.00146403 1.00815036 1.05467319 1.14089365]\n",
387-
" [1.01964861 1.01794261 1.00386665 1.00034788 1.00015378 1.00017897\n",
388-
" 1.00141073 1.01213761 1.01964861 1.01794261 1.00386665 1.00034788\n",
389-
" 1.00015378 1.00017897 1.00141073 1.01213761]\n",
390-
" [1.0019269 1.00172162 1.00034788 1.00025512 1.00085108 0.99958517\n",
391-
" 0.99836213 1.00032876 1.0019269 1.00172162 1.00034788 1.00025512\n",
392-
" 1.00085108 0.99958517 0.99836213 1.00032876]\n",
393-
" [1.0034205 1.00146403 1.00015378 1.00085108 1.00036435 0.99369049\n",
394-
" 0.99065988 1.00056788 1.0034205 1.00146403 1.00015378 1.00085108\n",
395-
" 1.00036435 0.99369049 0.99065988 1.00056788]\n",
396-
" [1.03779893 1.00815036 1.00017897 0.99958517 0.99369049 0.97697494\n",
397-
" 0.9889869 1.02461354 1.03779893 1.00815036 1.00017897 0.99958517\n",
398-
" 0.99369049 0.97697494 0.9889869 1.02461354]\n",
399-
" [1.19356852 1.05467319 1.00141073 0.99836213 0.99065988 0.9889869\n",
400-
" 1.09690099 1.19801589 1.19356852 1.05467319 1.00141073 0.99836213\n",
401-
" 0.99065988 0.9889869 1.09690099 1.19801589]\n",
402-
" [1.36368295 1.14089365 1.01213761 1.00032876 1.00056788 1.02461354\n",
403-
" 1.19801589 1.36305079 1.36368295 1.14089365 1.01213761 1.00032876\n",
404-
" 1.00056788 1.02461354 1.19801589 1.36305079]]\n"
405-
]
354+
"data": {
355+
"text/plain": [
356+
"ArrayIndexer([[1.36456254, 1.1670318 , 1.01964861, 1.0019269 ,\n",
357+
" 1.0034205 , 1.03779893, 1.19356852, 1.36368295,\n",
358+
" 1.36456254, 1.1670318 , 1.01964861, 1.0019269 ,\n",
359+
" 1.0034205 , 1.03779893, 1.19356852, 1.36368295],\n",
360+
" [1.1670318 , 1.1010689 , 1.01794261, 1.00172162,\n",
361+
" 1.00146403, 1.00815036, 1.05467319, 1.14089365,\n",
362+
" 1.1670318 , 1.1010689 , 1.01794261, 1.00172162,\n",
363+
" 1.00146403, 1.00815036, 1.05467319, 1.14089365],\n",
364+
" [1.01964861, 1.01794261, 1.00386665, 1.00034788,\n",
365+
" 1.00015378, 1.00017897, 1.00141073, 1.01213761,\n",
366+
" 1.01964861, 1.01794261, 1.00386665, 1.00034788,\n",
367+
" 1.00015378, 1.00017897, 1.00141073, 1.01213761],\n",
368+
" [1.0019269 , 1.00172162, 1.00034788, 1.00025512,\n",
369+
" 1.00085108, 0.99958517, 0.99836213, 1.00032876,\n",
370+
" 1.0019269 , 1.00172162, 1.00034788, 1.00025512,\n",
371+
" 1.00085108, 0.99958517, 0.99836213, 1.00032876],\n",
372+
" [1.0034205 , 1.00146403, 1.00015378, 1.00085108,\n",
373+
" 1.00036435, 0.99369049, 0.99065988, 1.00056788,\n",
374+
" 1.0034205 , 1.00146403, 1.00015378, 1.00085108,\n",
375+
" 1.00036435, 0.99369049, 0.99065988, 1.00056788],\n",
376+
" [1.03779893, 1.00815036, 1.00017897, 0.99958517,\n",
377+
" 0.99369049, 0.97697494, 0.9889869 , 1.02461354,\n",
378+
" 1.03779893, 1.00815036, 1.00017897, 0.99958517,\n",
379+
" 0.99369049, 0.97697494, 0.9889869 , 1.02461354],\n",
380+
" [1.19356852, 1.05467319, 1.00141073, 0.99836213,\n",
381+
" 0.99065988, 0.9889869 , 1.09690099, 1.19801589,\n",
382+
" 1.19356852, 1.05467319, 1.00141073, 0.99836213,\n",
383+
" 0.99065988, 0.9889869 , 1.09690099, 1.19801589],\n",
384+
" [1.36368295, 1.14089365, 1.01213761, 1.00032876,\n",
385+
" 1.00056788, 1.02461354, 1.19801589, 1.36305079,\n",
386+
" 1.36368295, 1.14089365, 1.01213761, 1.00032876,\n",
387+
" 1.00056788, 1.02461354, 1.19801589, 1.36305079],\n",
388+
" [1.36456254, 1.1670318 , 1.01964861, 1.0019269 ,\n",
389+
" 1.0034205 , 1.03779893, 1.19356852, 1.36368295,\n",
390+
" 1.36456254, 1.1670318 , 1.01964861, 1.0019269 ,\n",
391+
" 1.0034205 , 1.03779893, 1.19356852, 1.36368295],\n",
392+
" [1.1670318 , 1.1010689 , 1.01794261, 1.00172162,\n",
393+
" 1.00146403, 1.00815036, 1.05467319, 1.14089365,\n",
394+
" 1.1670318 , 1.1010689 , 1.01794261, 1.00172162,\n",
395+
" 1.00146403, 1.00815036, 1.05467319, 1.14089365],\n",
396+
" [1.01964861, 1.01794261, 1.00386665, 1.00034788,\n",
397+
" 1.00015378, 1.00017897, 1.00141073, 1.01213761,\n",
398+
" 1.01964861, 1.01794261, 1.00386665, 1.00034788,\n",
399+
" 1.00015378, 1.00017897, 1.00141073, 1.01213761],\n",
400+
" [1.0019269 , 1.00172162, 1.00034788, 1.00025512,\n",
401+
" 1.00085108, 0.99958517, 0.99836213, 1.00032876,\n",
402+
" 1.0019269 , 1.00172162, 1.00034788, 1.00025512,\n",
403+
" 1.00085108, 0.99958517, 0.99836213, 1.00032876],\n",
404+
" [1.0034205 , 1.00146403, 1.00015378, 1.00085108,\n",
405+
" 1.00036435, 0.99369049, 0.99065988, 1.00056788,\n",
406+
" 1.0034205 , 1.00146403, 1.00015378, 1.00085108,\n",
407+
" 1.00036435, 0.99369049, 0.99065988, 1.00056788],\n",
408+
" [1.03779893, 1.00815036, 1.00017897, 0.99958517,\n",
409+
" 0.99369049, 0.97697494, 0.9889869 , 1.02461354,\n",
410+
" 1.03779893, 1.00815036, 1.00017897, 0.99958517,\n",
411+
" 0.99369049, 0.97697494, 0.9889869 , 1.02461354],\n",
412+
" [1.19356852, 1.05467319, 1.00141073, 0.99836213,\n",
413+
" 0.99065988, 0.9889869 , 1.09690099, 1.19801589,\n",
414+
" 1.19356852, 1.05467319, 1.00141073, 0.99836213,\n",
415+
" 0.99065988, 0.9889869 , 1.09690099, 1.19801589],\n",
416+
" [1.36368295, 1.14089365, 1.01213761, 1.00032876,\n",
417+
" 1.00056788, 1.02461354, 1.19801589, 1.36305079,\n",
418+
" 1.36368295, 1.14089365, 1.01213761, 1.00032876,\n",
419+
" 1.00056788, 1.02461354, 1.19801589, 1.36305079]])"
420+
]
421+
},
422+
"execution_count": 12,
423+
"metadata": {},
424+
"output_type": "execute_result"
406425
}
407426
],
408427
"source": [
428+
"# NBVAL_IGNORE_OUTPUT \n",
409429
"print(dens)"
410430
]
411431
},
@@ -455,7 +475,7 @@
455475
],
456476
"metadata": {
457477
"kernelspec": {
458-
"display_name": "Python 3",
478+
"display_name": "Python [default]",
459479
"language": "python",
460480
"name": "python3"
461481
},

pyro.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ def __init__(self, solver_name):
4646
if solver_name not in valid_solvers:
4747
msg.fail("ERROR: %s is not a valid solver" % solver_name)
4848

49-
os.chdir(os.environ["PYRO_HOME"])
49+
self.pyro_home = os.path.dirname(os.path.realpath(__file__)) + '/'
5050

5151
# import desired solver under "solver" namespace
5252
self.solver = importlib.import_module(solver_name)
@@ -58,8 +58,8 @@ def __init__(self, solver_name):
5858

5959
# parameter defaults
6060
self.rp = runparams.RuntimeParameters()
61-
self.rp.load_params("_defaults")
62-
self.rp.load_params(solver_name + "/_defaults")
61+
self.rp.load_params(self.pyro_home + "_defaults")
62+
self.rp.load_params(self.pyro_home + solver_name + "/_defaults")
6363

6464
self.tc = profile.TimerCollection()
6565

@@ -82,7 +82,7 @@ def initialize_problem(self, problem_name, inputs_file=None, inputs_dict=None,
8282
Other command line parameter options
8383
"""
8484

85-
problem_defaults_file = self.solver_name + \
85+
problem_defaults_file = self.pyro_home + self.solver_name + \
8686
"/problems/_" + problem_name + ".defaults"
8787

8888
# problem-specific runtime parameters
@@ -93,7 +93,7 @@ def initialize_problem(self, problem_name, inputs_file=None, inputs_dict=None,
9393
if inputs_file is not None:
9494
if not os.path.isfile(inputs_file):
9595
# check if the param file lives in the solver's problems directory
96-
inputs_file = self.solver_name + "/problems/" + inputs_file
96+
inputs_file = self.pyro_home + self.solver_name + "/problems/" + inputs_file
9797
if not os.path.isfile(inputs_file):
9898
msg.fail("ERROR: inputs file does not exist")
9999

@@ -308,7 +308,7 @@ def store_as_benchmark(self):
308308
"ERROR: unable to create the solver's tests/ directory")
309309

310310
basename = self.rp.get_param("io.basename")
311-
bench_file = self.solver_name + "/tests/" + \
311+
bench_file = self.pyro_home + self.solver_name + "/tests/" + \
312312
basename + "%4.4d" % (self.sim.n)
313313
msg.warning("storing new benchmark: {}\n".format(bench_file))
314314
self.sim.write(bench_file)

0 commit comments

Comments
 (0)