Comments (6)
Hey @ErikOsinga I see you've already committed a fix in c57c641.
It's probably better to open PRs for this type of change. Also please make sure you've got the dev tooling installed - especially the pre-commit checks.
If you're happy that the fix is working, would you mind adding a test to ensure we don't run into the same problem again?
from rm-tools.
Sure I can open PRs in the future, I was unsure whether it made sense for such small changes.
What's the 'dev tooling?' and how do I install that?
from rm-tools.
Additionally, sort of related to this dtype issue, for complex64 dtypes, the default threshold you put in of eps=1e-8
raises a Warning that it cannot be achieved and the tolerance is automatically increased to eps_mach=6e-08
I suggest raising the default to eps=1e-7
(or 1e-6
which is the finufft default), and we could make it a variable for input to do_rmsynth_planes()
and get_rmsf_planes()
as well. Thoughts?
from rm-tools.
Hey @ErikOsinga - no worries! Here's are relevant bits from the main README:
# After a local clone
cd RM-Tools
pip install ".[dev]" # Install dev dependencies
pre-commit install # Install pre-commit to apply rules
On the tolerances, that's a good catch. I agree with setting to the default, as well as opening up option as a parameter. I'm wondering whether we'd want to expose from the CLI. Perhaps for now we can juts add the parameter to the function and we can add a CLI arg down the line if we want. We'll just need to update the tests with the appropriate tolerance as well.
from rm-tools.
Does this eps
parameter do anything interesting/important? Are there cases, aside from the different bit-depth, where a user would want to try different values?
Without having dug into it, my initial reaction is that if it isn't something that will matter to the majority of users then there's not really any value in making it a parameter, especially on the command line. I don't necessarily object to having it as a parameter for invoking the planes()
functions (with a suitable default value), but I don't see the value in exposing it at the higher level functions -- advanced users who want to fuss with it can either write their own wrappers around the lower level functions or modify any hard-coded values inside a fork. I think the CLI is already busy enough to intimidate non-expert users, so I don't want to add any further complexity unless it's clearly well-motivated.
from rm-tools.
Just reopening this @Cameron-Van-Eck until we expose the param in the ..._planes
functions and add some tests. Happy to take care of that
from rm-tools.
Related Issues (20)
- 3D cube writer breaks if BUNIT doesn't exist
- Automatic PyPI publishing HOT 5
- Stokes I fitting threshold
- Stokes I renormalisation failure case
- rmsynth3d imaginary FDF files have wrong Stokes axis values HOT 2
- RMSF helper script is bugged
- do_fitIcube: tqdm.contrib.concurrent doesn't play nicely with Prefect
- rescale_I_model_3D: rescale_I_pixel uses a dictionary but util_misc.renormalize_StokesI_model expects "FitResult" class HOT 2
- Odd behaviour in peak outputs from RMsynth3d HOT 3
- Different formulas for rmtf FWHM HOT 1
- Peak fitting maps should output de-rotated Q,U
- peakfitcube tool fails with index error HOT 4
- rmtools_peakfitcube fails with all-NaN maps as output HOT 2
- error message 'ValueError: not enough values to unpack (ecpected 4, got 3)' in rmclean3d HOT 7
- QU-fitting PA uncertainty does not take angle wrapping into account HOT 5
- Release Numpy restriction? HOT 2
- Progress bar for do_fitIcube reverted to old style HOT 3
- Convert Stokes I model to same reference frequency as polarization HOT 1
- Deprecation and versioning notes HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rm-tools.