ukaea / ukaea/PROCESS

Suggested example folder reorganisation

Open
#3,003 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
71
Forks
27
Avg merge
2d 18h
Merged PRs (30d)
33

Description

Firstly I'm going to preface this with the fact I'm very fresh as a PROCESS user. I've been testing various inputs over the last couple of weeks. Given that I'm aware there might be certain reasons that the layout should stay as it is currently..

When picking up the code, I was thinking it could be as easier learning curve if we had examples which were organised into sub-folders, which could then have more options.

Current layout:

|- examples 
         |- csv_output.ipynb
         |- csv_output.py
         |- csv_output_large_tokamak_MFILE.DAT
         |- examples.ipynb
         |- examples.py
         |- scan.ipynb
         |- scan.py         
         |- a_scan_input_file_IN.DAT

I think a layout which breaks the examples down into sub-sets could be useful for a) new starters on the code b) expansion of the examples pack:

|- examples 
         |- MFILE_to_csv
                 |- csv_output.ipynb
                 |- csv_output.py
                 |- csv_output_large_tokamak_MFILE.DAT
         |- Process_Simple_Run         
                  |- examples.ipynb
                  |- examples.py
         |- Scan
                   |- scan.ipynb
                   |- scan.py         
                   |- a_scan_input_file_IN.DAT

I think this gives opportunity to have examples for stellarators, IFE and UQ together.

An additional point when running the examples.ipynb file I created a sub-directory for execute/ within the cwd. I read the point on premature deletion but if there is a set folder still produced should I have caution with this approach? I found it useful to probe the outputs, rather than getting into the /var folder

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the examples directory and the currently listed files: csv_output.ipynb, csv_output.py, examples.ipynb, examples.py, scan.ipynb, scan.py, and their input data files. Check how the notebooks and scripts refer to their working directory, including the execute/ directory behavior. Done means the proposed subfolders work for the existing examples and their outputs remain understandable and usable.

Written by the indexing model from the issue text.

Assessment

Tech stack
jupyter-notebook, python
Domain
content, documentation
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.