barbagroup / geoclaw

A fork of GeoClaw (http://www.clawpack.org/geoclaw) for hydrocarbon overland flow
BSD 3-Clause "New" or "Revised" License
3 stars 3 forks source link

Darcy-Weisbach friction models #9

Closed piyueh closed 5 years ago

piyueh commented 5 years ago

Changes

1. Six Darcy-Weisbach friction models

Six different ways to assign or calculate Darcy-Weisbach coefficients are provided. Use DarcyWeisbachData.type to set the type (see setrun.py in examples):

2. A roughness.txt in Utah example

There is a new file called roughness.txt in the Utah example. But since there's no data for roughness in the real case, so the roughness data is fake.

3. A new example: silicon oil on an inclined plane, 2.5 degree

This example simulates silicon oil flow with a point source on an inclined plane which has an angle of 2.5 degrees. The simulation results can be compared with the experimental data from Lister (1992).

4. Setting kinematic viscosity of working fluids in setrun.py

Some Darcy-Weisbach models require the viscosity of the working fluids, so users can now set the value in setrun.py. The kinematic viscosity will be read into geoclaw_module.

5. A new docker file for this pull request (PR9)

piyueh commented 5 years ago

Hi @mandli, this is a new PR for a new feature: Darcy-Weisbach frictions. I'm wondering if you could review it when you have time? Thank you very much!!

The docker file for this PR is Dockerfile-PR9. And there's an image in our DockerHub repo with the tag PR9.

mandli commented 5 years ago

I am in the midst of the review but one thing that caught my attention was that you seem to be reimplementing a significant amount of functionality for reading in solutions and plotting them. This is not inherently bad but I am wondering what functionality the clawpack.pyclaw.solution.Solution does not contain that you need.

piyueh commented 5 years ago

Thanks for the information! I didn't realize I can use PyClaw for the solution I/O. I can definitely use the API in PyClaw for post-processing. Given the tight schedule of this project, however, I think I'll have to leave this task to the future after required functionalities are implemented in the flow solver.

The plotting scripts are very specific to each example and are not designed to be used outside those examples. So I guess it's okay to keep them there for now and migrate to PyClaw API in the future for better integration into the Clawpack ecosystem.

mandli commented 5 years ago

@piyueh Have not forgotten about this, just happens to be midterms around here and I have been tied up with a bunch of deadlines. This isn't blocking you on any other improvements is it?

piyueh commented 5 years ago

No worries! This is non-blocking PR. Thank you!

mandli commented 5 years ago

@piyueh This can be merged whenever at this point I would say.

piyueh commented 5 years ago

@mandli Got it! Thank you!! The remaining issues are addressed in Issue #11 and #12 .