-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Parallel extract #967
Parallel extract #967
Conversation
Marching cubes
# Conflicts: # porespy/generators/_cylinder.py # porespy/generators/_pseudo_packings.py # porespy/networks/__init__.py # requirements/conda_requirements.txt # requirements/pip_requirements.txt # setup.py # src/porespy/generators/_imgen.py # src/porespy/io/_funcs.py # src/porespy/metrics/_meshtools.py # src/porespy/metrics/_regionprops.py # src/porespy/networks/_getnet.py # src/porespy/simulations/_drainage.py # src/porespy/simulations/_ibip_gpu.py # src/porespy/tools/__init__.py # src/porespy/tools/_funcs.py # src/porespy/tools/_marching_cubes.py # src/porespy/tools/_marching_squares.py # src/porespy/tools/marching_cubes_templates.dat # test/unit/test_simulations_ibip.py
Hi, thank you for your work on this PR. |
@Arenhart, don't do anything yet. If pyedt is now on PyPI, I will add that to this PR. If it works, then I can also change the |
@Arenhart, I am in the process of adding |
@Arenhart, I have answered my own question...I found the |
Hi @Arenhart, sorry for all the noise, but I have one more question/request. I see that your |
Hello @jgostick , regarding the squared distance, pyedt is indeed the euclidian distance, and not manhattan nor chamfer distance, it just allows the return of either the strict euclidian distance, or (eclidian distance)^2. This allows faster computation when we only need to compare edt to a certain threshold t, as This can be verified in the following way:
As for I'll fix those two issues and repackage pyedt, should be ready this morning, I'll post here when it's done. |
@Arenhart, these fixes would be appreciated! I actually fixed the squared distance thing like this:
So this is not as urgent, however, without the |
@jgostick |
No worries @Arenhart, I can fix that pretty fast. Thanks so much for the quick response here! Now I just need to get the tests passing, but it seems that something has changed somewhere in the code. |
# Conflicts: # test/unit/test_filters.py # test/unit/test_metrics.py
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## dev #967 +/- ##
=======================================
- Coverage 82.6% 74.6% -8.1%
=======================================
Files 36 39 +3
Lines 4652 5314 +662
=======================================
+ Hits 3847 3968 +121
- Misses 805 1346 +541 |
This is a redo #958 from @Arenhart. That PR had quite a few conflicts with the dev branch, which changed quite a lot while they were working, so I pulled that branch from their repo, fixed it locally, and am now pushing it to our repo. This feels like the right way to make modifications to a PR, but I feel a bit bad that the PR will look like it originated from me. I guess the important thing is that all @Arenhart 's work will still be acknowledged in the commit history.
In addition to fixing the conflicts, I also fixed a lot of pep8 sins, and cleaned up the imports throughout.
I also made a few major changes which might break @Arenhart 's code:
pyedt
an fall back on regularedt
if not found. This is becausepyedt
is not yet "pip installable" so we can't really make it a dependency of PoreSpy since the average user would struggle to install a github package.regions_to_network_parallel
, and re-addedregions_to_network
as well. The reason I did this is because their function uses a special function in theirpyedt
which is not installed by default. So, if a person does not havepyedt
install they will not be able to use the parallel version, but they can still use the legacyregions_to_network
function. Perhaps in future we can work to getpyedt
on PyPI then we no longer need to worry about this.