Giter Club home page Giter Club logo

escape's People

Contributors

tristan-salles avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

escape's Issues

eSCAPE needs instructions for testing

This is another issue associated with this JOSS review.

The review requirements regarding testing recommended having either an automated test suite or a set of "manual steps that can be followed to check the expected functionality of the software (e.g. a sample input file to assert behaviour)".

Given the dependencies of eSCAPE on HPCC-type libraries I can understand why it might be challenging to set up automated tests on standard CI platforms (e.g. Travis).

However, given the large number of (potentially user compiled) dependencies it seems like it would be very good to have one example that could test that eSCAPE produces the expected output. One option would be to provide the imput_glob.yaml and run_espace.py files discussed in this part of the wiki and add some lines to run_espace.py that open the output and assert that some values have been calculated correctly.

improve installation instructions for petsc

I am trying to install eSCAPE on my system (ubuntu 18.04.2 LTS). I found the petsc instructions are are not sufficient. I needed to add the flags:

--with-cc=gcc --with-cxx=g++ --with-fc=gfortran --download-mpich

I don't know if this is system specific, but I think not. I am happy to make a PR to update the instructions.

Improve description of spatially and temporally variable inputs and outputs

This is another issue associated with the JOSS review.

The tutorials have some information about the required format and the way to create the .vtk format used in the input files for the domain, the climate, and the uplift, but a description of these inputs is not in the main package documentation.

As best as I can tell there is also no description of the requirements for the sea level curve file.

I'd also recommend including a statement regarding the nature of the output (a file for each timestep that a user can open in paraview OR compile themselves into a single file with a time dimension).

Improve eSCAPE HPCC installation instructions

This is another issue associated with this JOSS review.

I downloaded and tested the Docker image (and as expected it worked). I wanted to also test the HPCC installation instructions as I would expect that most full-scale applications would use eSCAPE installed in this way.

I'm still in the process of doing this install so I can't yet report if I've been successful. However, thus far I have some comments on the Install on HPC wiki page.

Specifically, rather than providing what seems to be a set of instructions that have worked on one particular HPC platform, I'd recommend listing the following:

  • a list of required compilers
  • a statement about what major.minor versions of python eSCAPE is compatible with (2.7. 3.5, 3.6?)
  • a package management file that lists the standard python packages (e.g. numpy) and minimum version requirements so that these can be installed with pip or conda.
  • a list of the more customized python packages that must be installed by cloning a repo and compiling.
  • a statement about the version of PETSc required for running eSCAPE.

Its also a bit confusing to my why the installing petsc4py locally section is located after the statements about compiling eSCAPE.

Cannot find API documentation

As part of my JOSS review I have looked for API documentation (review standards listed here).

I have found an excellent description of the eSCAPE input file here. And looking at the source code I see that docstrings have been written for the major public-facing functions.

However, I have not found API documentation. As this is one of the review requirements, I'd recommend making more easily visible.

Any books to learn the geo-sciense algorithm?

Hello, I have some backgrounds about computer science, but I am new to geo-sciense. I am very interested in simulating landscape evolution. I have tried the eSCAPE docker, read gmd-2019-126.pdf and roughly read the source code. Currently, I am planning to write kinds of a similar project based on GPU compute shader, so that it would be possible to simulate big maps on cheap PCs rather than HPCs.
However, I feel it is too hard to really understand the mechanisms and algorithms behind this project. Papers are usually too brief. Could you please recommend some books to systematically learn the background knowledge?

PETSC ERROR occur when testing examples

Hi, Dr Sallles

I test the demo (bluemountain) with PETSC-version from 3.8.4 to 3.10.5 under env of Python 3.7. All of them show error message as follows:

Petsc Release Version 3.8.4, Mar, 24, 2018 
       The PETSc Team
    [email protected]
 http://www.mcs.anl.gov/petsc/
See docs/changes/index.html for recent updates.
See docs/faq.html for problems.
See docs/manualpages/index.html for help. 
Libraries linked from /home/litho/Programs/petsc-3.8.4-opt/lib
--------------------------------------------------------------------------
Input file: input_bluemountains.yml
 Verbose is on? True
 PETSC log is on? True
The following model will be run:     Regional model
Extract information (0.00 seconds)
Reading meshplex meshtri (0.23 seconds)
Mark boundary TIN (1.07 seconds)
Defining edges TIN (1.04 seconds)
Defining global TIN (0.09 seconds)
Reading mesh information (2.44 seconds)
Create DMPlex (1.41 seconds)
Distribute DMPlex (0.29 seconds)
Distribute field to DMPlex (0.12 seconds)
Creating Petsc DMPlex (1.82 seconds)
Defining local DMPlex (2.53 seconds)
Voronoi creation (1.58 seconds)
Tesselation (0.67 seconds)
Finite volume mesh declaration (9.14 seconds)
Priority-flood algorithm initialisation (0.38 seconds)
Update External Forces (0.04 seconds)
--- Initialisation Phase (11.73 seconds)
Flow Direction declaration (0.09 seconds)
Compute Flow Accumulation (5.86 seconds)
Creating outputfile (0.82 seconds)
+++ Output Simulation Time: 0.00 years
Get Erosion Thicknesses (2.27 seconds)
Update Sediment Load (4.24 seconds)
[0]PETSC ERROR: ------------------------------------------------------------------------
[0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, probably memory access out of range
[0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
[0]PETSC ERROR: or see http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind
[0]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X to find memory corruption errors
[0]PETSC ERROR: configure using --with-debugging=yes, recompile, link, and run 
[0]PETSC ERROR: to get more information on the crash.
application called MPI_Abort(MPI_COMM_WORLD, 59) - process 0
[unset]: write_line error; fd=-1 buf=:cmd=abort exitcode=59
:
system msg for write_line failure : Bad file descriptor

So, where does the problem arise?

a module cannot be imported

i meet the following issue and i dont konw how to compile the eSCAPE._fortran module, is anything i lost them or i do a wrong step?

(base) jovyan@56b527b9e609:~/eSCAPE/eSCAPE-demo/slope$ python run_escape.py i input.yml

Traceback (most recent call last):
File "/home/jovyan/eSCAPE/eSCAPE-demo/slope/run_escape.py", line 2, in
import eSCAPE as sim
File "/opt/conda/lib/python3.11/site-packages/eSCAPE-0.1-py3.11.egg/eSCAPE/init.py", line 63, in
File "/opt/conda/lib/python3.11/site-packages/eSCAPE-0.1-py3.11.egg/eSCAPE/mesher/init.py", line 23, in
File "/opt/conda/lib/python3.11/site-packages/eSCAPE-0.1-py3.11.egg/eSCAPE/mesher/unstructuredmesh.py", line 32, in
ModuleNotFoundError: No module named 'eSCAPE._fortran'

Incomplete documentation related to boundary conditions

I've tried to limit issues related to the JOSS review to what is outlined in the review criteria.

There is one aspect of documentation not described in the criteria that I think is missing in eSCAPE. Specifically I can't tell what sort of model-domain edge boundary conditions are used (and if there are any options). This would be a good thing to add to the documentation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.