Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
ba3d2e6
Remove data_files entry
benoit-dubreuil Jun 29, 2022
3bc144e
Added default util
benoit-dubreuil Jun 29, 2022
e260acc
Added SingularityConfig class
benoit-dubreuil Jun 29, 2022
d7d6966
Format
benoit-dubreuil Jun 29, 2022
d6cf37f
Integrated SingularityConfig into legacy runner
benoit-dubreuil Jun 29, 2022
49d6d9f
Format
benoit-dubreuil Jun 29, 2022
14481bd
Format
benoit-dubreuil Jun 29, 2022
0bde314
Added singularity exec attribute to config
benoit-dubreuil Jun 29, 2022
8714a5e
Typo
benoit-dubreuil Jun 29, 2022
45247c0
Refactored config to include singularity attr
benoit-dubreuil Jun 29, 2022
825e4dc
Final integration of config in legacy runner
benoit-dubreuil Jun 29, 2022
2240b49
Final integration of config in new runner
benoit-dubreuil Jun 29, 2022
53b84fa
Removed deprecated config files
benoit-dubreuil Jun 29, 2022
19ef8c8
Import SingularityConfig when importing runner pkg
benoit-dubreuil Jun 29, 2022
d0bb89a
Bumped version
benoit-dubreuil Jun 29, 2022
f5b1a30
Merge pull request #1 from benoit-dubreuil/improv/remove-top-level-co…
benoit-dubreuil Jun 29, 2022
5839e78
Prefixed module with `_` so it has a different name than its pkg
benoit-dubreuil Jul 1, 2022
59019ef
Prefixed module with `_` so it has a different name than its pkg
benoit-dubreuil Jul 1, 2022
73b58f8
Prefixed module with `_` so it has a different name than its pkg
benoit-dubreuil Jul 1, 2022
54fe017
Merge pull request #2 from benoit-dubreuil/fix/modules-same-name-as-pkg
benoit-dubreuil Jul 1, 2022
bd10859
Bumped version
benoit-dubreuil Jul 1, 2022
109f4b4
Fragment os imports
benoit-dubreuil Jul 3, 2022
ec44af8
Use import instead of import-from for os.path.basename
benoit-dubreuil Jul 3, 2022
60960b1
Use import instead of import-from for os.path
benoit-dubreuil Jul 3, 2022
ed2d7b6
Fixed `_create_outputs` name shadowing of `os.path` due to param `path`
benoit-dubreuil Jul 3, 2022
9db96aa
Followed recommendation to make `_create_outputs` static
benoit-dubreuil Jul 3, 2022
b112af3
Merge pull request #3 from benoit-dubreuil/fix/param-import-same-names
benoit-dubreuil Jul 3, 2022
bcf88b5
Bumped version
benoit-dubreuil Jul 3, 2022
b786c19
Fixed str.join of Path results in an error
benoit-dubreuil Jul 4, 2022
26edbb5
Fixed str.join of Path results in an error
benoit-dubreuil Jul 4, 2022
d0348f9
Merge pull request #4 from benoit-dubreuil/fix/str-join-takes-path
benoit-dubreuil Jul 4, 2022
f7f73f5
Bumped version
benoit-dubreuil Jul 4, 2022
a36600c
Use Path instead of PurePath
benoit-dubreuil Jul 4, 2022
d078335
Merge branch 'fix/pathlib-compatibility'
benoit-dubreuil Jul 4, 2022
d009dae
Added PathLike typing
benoit-dubreuil Jul 4, 2022
1bde0a5
Time to switch to pathlib only
benoit-dubreuil Jul 4, 2022
f3f55f9
Format
benoit-dubreuil Jul 4, 2022
cce35f8
Use pathlib in geomtetry_handler
benoit-dubreuil Jul 4, 2022
3de9dbe
Added typing to generate_json_configuration_files
benoit-dubreuil Jul 4, 2022
d7a10b2
`__file__` is optional; use `__name__` instead
benoit-dubreuil Jul 4, 2022
c982378
Resolve simulation path
benoit-dubreuil Jul 4, 2022
bc90825
logger var should be private
benoit-dubreuil Jul 4, 2022
7dfa1f6
Catch resolve exception
benoit-dubreuil Jul 4, 2022
0c7b2c8
Use pathlib in `logging`
benoit-dubreuil Jul 4, 2022
09824b1
Replaced `file_path` and `base_file` for typed `file`
benoit-dubreuil Jul 4, 2022
20a6322
Finally, decided to keep API
benoit-dubreuil Jul 4, 2022
d26f367
Type annotate paths in SimulationInfos
benoit-dubreuil Jul 4, 2022
6aeaab4
Format
benoit-dubreuil Jul 4, 2022
69b40ae
Fixed filename type hints
benoit-dubreuil Jul 4, 2022
7d826aa
Integrated pathlib into legacy runner
benoit-dubreuil Jul 4, 2022
a7ae7a1
Format
benoit-dubreuil Jul 5, 2022
ec4100e
Replaced `os.path.join` for `pathlib`'s `/` operator
benoit-dubreuil Jul 5, 2022
730a607
Replaced `os.path.join` for `pathlib`'s `/` operator
benoit-dubreuil Jul 5, 2022
b340772
Removed all usage of `os` in simulation runner
benoit-dubreuil Jul 5, 2022
a1b1508
Integrated pathlib into documentation
benoit-dubreuil Jul 5, 2022
aafb90e
Replaced `exists` usage in legacy runner
benoit-dubreuil Jul 5, 2022
0f2f49d
Format
benoit-dubreuil Jul 5, 2022
fde952c
Fixed bad join due to type!
benoit-dubreuil Jul 5, 2022
05c2c5a
Fixed bad join due to type!
benoit-dubreuil Jul 5, 2022
671abb5
Bumped version
benoit-dubreuil Jul 5, 2022
1691a23
Merge branch 'master' into feature/path-use-pathlib
benoit-dubreuil Jul 5, 2022
556618d
Replaced `os` usage by `pathlib` in `datastore`
benoit-dubreuil Jul 5, 2022
3d4cb67
Replaced `os` usage with`path` in simulation handler
benoit-dubreuil Jul 5, 2022
0755582
Added more path type hints
benoit-dubreuil Jul 5, 2022
15f77e6
Added type hints for infos in runners
benoit-dubreuil Jul 5, 2022
52d4bcd
Fixed open path
benoit-dubreuil Jul 5, 2022
5e6976d
No need to check args namespace
benoit-dubreuil Jul 5, 2022
4aedd0b
Useless params
benoit-dubreuil Jul 5, 2022
83de825
Integrated pathlib into scripts
benoit-dubreuil Jul 5, 2022
8f47edf
Removed `os` usage in `scripts`
benoit-dubreuil Jul 5, 2022
3da34a1
Resolve paths in runners
benoit-dubreuil Jul 5, 2022
ab3bfa2
Fixed phatom output names
benoit-dubreuil Jul 5, 2022
7d85c75
Merge pull request #6 from benoit-dubreuil/feature/path-use-pathlib
benoit-dubreuil Jul 5, 2022
627a877
Bumped version
benoit-dubreuil Jul 5, 2022
8aeffe4
Added gitattributes
benoit-dubreuil Jul 18, 2022
9f96566
Format to respect PEP
benoit-dubreuil Jul 23, 2022
8aab0fc
Fixed `except` statement that catches everything...
benoit-dubreuil Jul 23, 2022
44b7b83
Added TODO
benoit-dubreuil Jul 23, 2022
e0d0e83
WIP
benoit-dubreuil Jul 23, 2022
69df6d7
No need to return log file
benoit-dubreuil Jul 23, 2022
2f07aed
Typed run cmd and run async
benoit-dubreuil Jul 23, 2022
90483e7
Return the process returncode from run cmd
benoit-dubreuil Jul 23, 2022
dd33bf7
Revert "WIP"
benoit-dubreuil Jul 23, 2022
38e71db
Revert "Added TODO"
benoit-dubreuil Jul 23, 2022
d3d041c
Return the process returncode in generation commands
benoit-dubreuil Jul 23, 2022
d49f620
Return returncode from run simulation
benoit-dubreuil Jul 23, 2022
41b4cb2
The simulation runner global logger was useless
benoit-dubreuil Jul 23, 2022
6ca934b
Merge pull request #7 from benoit-dubreuil/feature/simulation-return-…
benoit-dubreuil Jul 23, 2022
3973bde
Increased version
benoit-dubreuil Jul 23, 2022
7113b90
Removed `.gitattributes`
benoit-dubreuil Jul 25, 2022
d175758
Completely remove LFS
benoit-dubreuil Jul 25, 2022
3db3f23
Fixed anchors type in doc
benoit-dubreuil Aug 16, 2022
16ecc58
Fixed print error log path
benoit-dubreuil Aug 19, 2022
035e174
Improved print error log path msg
benoit-dubreuil Aug 19, 2022
695ba5c
WIP create script for quick testing
benoit-dubreuil Aug 22, 2022
ecb7145
Added quick geometry generation to test script
benoit-dubreuil Aug 22, 2022
c7bb064
Fixed path absolute path problems of VoxSim by resolving every path
benoit-dubreuil Aug 22, 2022
85aebd4
Removed quick simulation
benoit-dubreuil Aug 22, 2022
e14c268
Merge pull request #8 from benoit-dubreuil/fix/legacy-runner-error
benoit-dubreuil Aug 22, 2022
b095d6c
Increased version
benoit-dubreuil Aug 22, 2022
23aace3
Added modern script
benoit-dubreuil Aug 22, 2022
b5e66ab
Renamed legacy simulation runner
benoit-dubreuil Aug 22, 2022
411b21b
Renamed modern simulation runner
benoit-dubreuil Aug 22, 2022
e831958
Renamed new simulation runner as it generates phantoms
benoit-dubreuil Aug 22, 2022
1a6696a
Merge pull request #9 from benoit-dubreuil/feature/modern-script-simu…
benoit-dubreuil Aug 22, 2022
4342a41
Increased version
benoit-dubreuil Aug 22, 2022
dd72c01
Fixed wall_effect spacing
benoit-dubreuil Aug 28, 2022
8147830
Added "sync LINUM mirror repository" GitHub workflow
benoit-dubreuil Sep 5, 2022
ddb2feb
Merge branch 'linum/mirror-to-linum-repo'
benoit-dubreuil Sep 5, 2022
064870d
This sync-bitbucket workflow is proprietary to the original repo owner
benoit-dubreuil Sep 5, 2022
69c4ae2
Merge branch 'linum/mirror-to-linum-repo'
benoit-dubreuil Sep 5, 2022
4abb693
Fixed push branch
benoit-dubreuil Sep 5, 2022
9ca2834
Merge branch 'linum/mirror-to-linum-repo'
benoit-dubreuil Sep 5, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions .cache/doc/bat/build_doc.bat
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

echo off
SET pth=%~dp0
SET pth=%pth:~0, -5%
echo on

bash %pth%/bash/build_doc.sh %*
echo off
SET pth=%~dp0
SET pth=%pth:~0, -5%
echo on
bash %pth%/bash/build_doc.sh %*
14 changes: 7 additions & 7 deletions .cache/doc/bat/generate_doc.bat
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

echo off
SET pth=%~dp0
SET pth=%pth:~0, -5%
echo on

bash %pth%/bash/generate_doc.sh %*
echo off
SET pth=%~dp0
SET pth=%pth:~0, -5%
echo on
bash %pth%/bash/generate_doc.sh %*
27 changes: 0 additions & 27 deletions .github/workflows/sync-bitbucket.yml

This file was deleted.

28 changes: 28 additions & 0 deletions .github/workflows/sync-linum-mirror-repo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Sync LINUM mirror repository

# GitHub App/Action mirror-repository: https://github.com/yesolutions/mirror-action

on:
push:
branches:
- master

jobs:
sync_mirror_repo:
runs-on: ubuntu-22.04

environment:
name: production
url: https://github.com/linum-uqam/inm5803-ete2022-benoit-dubreuil

steps:
- uses: actions/checkout@v3
with:
ref: 'master'
fetch-depth: 0

- uses: yesolutions/mirror-action@master
with:
REMOTE: 'git@github.com:linum-uqam/voxsim.git'
GIT_SSH_PRIVATE_KEY: ${{ secrets.LINUM_DEPLOY_GIT_SSH_PRIVATE_KEY }} # The public key is a deploy key on the remote repository
GIT_SSH_NO_VERIFY_HOST: 'true' # We're pushing from a public repo to a public repo, nothing can really be stolen.
5 changes: 0 additions & 5 deletions config.json

This file was deleted.

13 changes: 0 additions & 13 deletions config.py

This file was deleted.

15 changes: 7 additions & 8 deletions scripts/geometry_factory.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
#!/usr/bin/env python

import argparse
import pathlib
from math import pi
from os import makedirs
from tempfile import mkdtemp

from simulator.factory import GeometryFactory, Plane


resolution = [10, 10, 10]
spacing = [2, 2, 2]

Expand Down Expand Up @@ -42,7 +41,7 @@
]


def get_geometry_parameters(output_folder, output_naming):
def get_geometry_parameters(output_folder: pathlib.Path, output_naming: str):
geometry_handler = GeometryFactory.get_geometry_handler(resolution, spacing)

bundle1 = GeometryFactory.create_bundle(
Expand Down Expand Up @@ -76,15 +75,15 @@ def get_geometry_parameters(output_folder, output_naming):
if __name__ == "__main__":
parser = argparse.ArgumentParser("Geometry Factory Example Script")
parser.add_argument(
"--out", type=str, required=False, help="Output directory for the files"
"--out", type=pathlib.Path, help="Output directory for the files"
)

args = parser.parse_args()
if "out" in args and args.out:
dest = args.out
makedirs(args.out, exist_ok=True)
if args.out:
dest: pathlib.Path = args.out
dest.mkdir(parents=True, exist_ok=True)
else:
dest = mkdtemp(prefix="geo_factory")
dest = pathlib.Path(mkdtemp(prefix="geo_factory"))

print("Script execution results are in : {}".format(dest))
get_geometry_parameters(dest, "geometry")
15 changes: 7 additions & 8 deletions scripts/geometry_factory_multi_cluster.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
#!/usr/bin/env python3

import argparse
import pathlib
from math import pi
from os import makedirs
from tempfile import mkdtemp

from simulator.factory import GeometryFactory, Plane


resolution = [10, 10, 10]
spacing = [2, 2, 2]

Expand Down Expand Up @@ -43,7 +42,7 @@
]


def run_multi_clusters(output_folder, output_naming):
def run_multi_clusters(output_folder: pathlib.Path, output_naming: str):
geometry_handler = GeometryFactory.get_geometry_handler(resolution, spacing)

bundle1 = GeometryFactory.create_bundle(
Expand Down Expand Up @@ -87,15 +86,15 @@ def run_multi_clusters(output_folder, output_naming):
if __name__ == "__main__":
parser = argparse.ArgumentParser("Geometry Multi Clusters Example Script")
parser.add_argument(
"--out", type=str, required=False, help="Output directory for the files"
"--out", type=pathlib.Path, help="Output directory for the files"
)

args = parser.parse_args()
if "out" in args and args.out:
dest = args.out
makedirs(args.out, exist_ok=True)
if args.out:
dest: pathlib.Path = args.out
dest.mkdir(parents=True, exist_ok=True)
else:
dest = mkdtemp(prefix="geo_factory_mc")
dest = pathlib.Path(mkdtemp(prefix="geo_factory_mc"))

print("Script execution results are in : {}".format(dest))
run_multi_clusters(dest, "multi_clusters")
17 changes: 8 additions & 9 deletions scripts/simulation_runner.py → scripts/legacy_simulation_runner.py
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
#!/usr/bin/env python3

import argparse
from os import makedirs
from os.path import join
import pathlib
from tempfile import mkdtemp

from scripts.geometry_factory import get_geometry_parameters
from scripts.simulation_factory import get_simulation_parameters
from simulator.runner.legacy import SimulationRunner


def run_simulation(output_folder):
def run_simulation(output_folder: pathlib.Path):
geometry_parameters = get_geometry_parameters(
output_folder, "runner_test_geometry"
)
Expand All @@ -32,7 +31,7 @@ def run_simulation(output_folder):
output_folder, "runner_test_simulation_standalone"
)

standalone_output = join(output_folder, "standalone_test")
standalone_output = output_folder / "standalone_test"

runner.run_simulation_standalone(
standalone_output, output_folder, simulation_parameters, "standalone"
Expand All @@ -42,15 +41,15 @@ def run_simulation(output_folder):
if __name__ == "__main__":
parser = argparse.ArgumentParser("Simulation Runner Example Script")
parser.add_argument(
"--out", type=str, required=False, help="Output directory for the files"
"--out", type=pathlib.Path, help="Output directory for the files"
)

args = parser.parse_args()
if "out" in args and args.out:
dest = args.out
makedirs(args.out, exist_ok=True)
if args.out:
dest: pathlib.Path = args.out
dest.mkdir(parents=True, exist_ok=True)
else:
dest = mkdtemp(prefix="sim_runner")
dest = pathlib.Path(mkdtemp(prefix="sim_runner"))

print("Script execution results are in : {}".format(dest))
run_simulation(dest)
36 changes: 36 additions & 0 deletions scripts/phantom_generation_runner.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#!/usr/bin/env python3

import argparse
import pathlib

from scripts.geometry_factory import get_geometry_parameters
from simulator.runner.simulation_runner import SimulationRunner


def run_simulation(output_folder: pathlib.Path):
geometry_parameters = get_geometry_parameters(
output_folder, "runner_test_geometry"
)

runner = SimulationRunner()
runner.generate_phantom(
run_name="runner_test_simulation_standalone",
phantom_infos=geometry_parameters,
output_folder=output_folder,
output_nifti=False,
)


if __name__ == "__main__":
parser = argparse.ArgumentParser("Simulation Runner Example Script")
parser.add_argument(
"--out", type=pathlib.Path, default="./out/", help="Output directory for the files"
)

args = parser.parse_args()
dest: pathlib.Path = args.out
dest.mkdir(parents=True, exist_ok=True)
dest = dest.resolve(strict=True)

print("Script execution results are in : {}".format(dest))
run_simulation(dest)
14 changes: 7 additions & 7 deletions scripts/simulation_factory.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env python

import argparse
from os import makedirs
import pathlib
from tempfile import mkdtemp
from random import uniform

Expand All @@ -12,7 +12,7 @@
from simulator.utils.test_helpers import GeometryHelper


def get_simulation_parameters(output_folder, output_naming):
def get_simulation_parameters(output_folder: pathlib.Path, output_naming: str):
fiber_compartment = SimulationFactory.generate_fiber_stick_compartment(
0.007, 900, 80, SimulationFactory.CompartmentType.INTRA_AXONAL
)
Expand Down Expand Up @@ -71,15 +71,15 @@ def get_simulation_parameters(output_folder, output_naming):
if __name__ == "__main__":
parser = argparse.ArgumentParser("Simulation Factory Example Script")
parser.add_argument(
"--out", type=str, required=False, help="Output directory for the files"
"--out", type=pathlib.Path, help="Output directory for the files"
)

args = parser.parse_args()
if "out" in args and args.out:
dest = args.out
makedirs(args.out, exist_ok=True)
if args.out:
dest: pathlib.Path = args.out
dest.mkdir(parents=True, exist_ok=True)
else:
dest = mkdtemp(prefix="sim_factory")
dest = pathlib.Path(mkdtemp(prefix="sim_factory"))

print("Script execution results are in : {}".format(dest))
get_simulation_parameters(dest, "simulation")
Loading