-
Notifications
You must be signed in to change notification settings - Fork 472
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
New package: FMM3D v1.0.1 #98072
New package: FMM3D v1.0.1 #98072
Conversation
JuliaRegistrator
commented
Jan 2, 2024
•
edited
Loading
edited
- Registering package: FMM3D
- Repository: https://github.com/flatironinstitute/FMM3D
- Created by: @lu1and10
- Version: v1.0.1
- Commit: b0dc85a3da10257adedd32b6068c8b242a6cecbc
- Reviewed by: @lu1and10
- Reference: flatironinstitute/FMM3D@b0dc85a#commitcomment-139170329
- Description: Flatiron Institute Fast Multipole Libraries --- This codebase is a set of libraries to compute N-body interactions governed by the Laplace and Helmholtz equations, to a specified precision, in three dimensions, on a multi-core shared-memory machine.
Your
Note that the guidelines are only required for the pull request to be merged automatically. However, it is strongly recommended to follow them, since otherwise the pull request needs to be manually reviewed and merged by a human. After you have fixed the AutoMerge issues, simply retrigger Registrator, which will automatically update this pull request. You do not need to change the version number in your If you do not want to fix the AutoMerge issues, please post a comment explaining why you would like this pull request to be manually merged. Then, send a message to the Since you are registering a new package, please make sure that you have also read the package naming guidelines: https://pkgdocs.julialang.org/v1/creating-packages/#Package-naming-guidelines If you want to prevent this pull request from being auto-merged, simply leave a comment. If you want to post a comment without blocking auto-merging, you must include the text |
This package is a wrapper and is therefore named after the library that it wraps. The original library has an Apache 2.0 license. This is registration is only of the subfolder including the Julia wrapper which does not contain the license. Is this the reason why it complains regarding the license? Regarding the name, then FMM2D is for 2D computations while FMM3D for the 3D computations. I think the differences is quite clear. |
[noblock] Regarding the name, what if you combine the FMM2D and the FMM3D in a package called FMMs or whatever? I mean, instead of having these two packages, let's have a package that hopefully includes all the variants. |
I do not really know what is the best practice here. The two packages are wrappers to two different (but related) libraries, which would be indicated by having two separate packages. That being said I am not against having a combined package. |
The 2D and 3D library function signatures seems to be quite similar. If @askhamwhat and @mipals both think merging the 2D and 3D is a good idea, I guess we should start a new repo and collaborate on combining the two wrappers. @askhamwhat what do you think? |
The 2D wrapper is indeed very similar (in fact it is very much just a copy-paste of the 3D wrapper with a few things changed). Note that the 2D wrapper was written quite quickly and could use a freshener at some point. In fact there are many features that it does on include as only the Helmholtz kernel was covered in the documentation at the time it was written (I do know if this has since been fixed). Whether or not it makes sense to have a single package I do not know. Part of my likes that they are separated (due to the original packages being separate), but I can also see the idea combining them working. Regarding the license issue then the reason is that only the subfolder is distributed. Fredrik Ekre therefore suggested on Slack to copy the license to the Julia subfolder. I guess this should be possible? |
Yes, @mrachh is working on editing and update the license for FMM3D, once it's done we will make a copy to the subfolder. |
To weight in my opinion as a user of both libraries:
Thanks for trying to register this! |
I am also a user of both libraries (and recently wrapped each for a project, so I'm familiar with the differences) and I would second this perspective. The difference is clear. Moreover, wrapping them in the same way risks confusion at important implementational differences: for example, the 2D library does not (yet) support Laplace. And while the interface may be similar even for In fact, as the above differences show there are plenty of different FMM implementations. One can imagine kernel-independent FMMs as well sharing such a common interface. Must all these be wrapped in a single library simply because their names are somewhat similar, yet clearly and understandably distinct? |
Yeah, I am also thinking that having two separated packages is probably the way to go due to them wrapping two different libraries. No reason to mix them up. @tanderson92 A little off topic but are you sure that the FMM2D does not support Laplace? I thought it was just undocumented (similar to Stokes and Biharmonic) and hence did not include it in the Julia wrapper. |
I was speaking only to the Julia wrapper, which is still relevant for this discussion. Yes, the underlying library has more capabilities that aren't currently exposed in |
Fair enough @tanderson92. If you at some point need the Julia wrapper of FMM2D to also include Laplace, Stokes, etc. let me know. I just stopped at Helmholtz since that was what I needed (and it was the only thing documented) and since then nobody else than me has seemed to be using the wrapper 😄 |
@DilumAluthge There is a now a license in the Julia subfolder. Can the automerge be run again? |
Yep, just re-trigger Registrator on your latest commit. [noblock] |
UUID: 1e13804c-f9b7-11ea-0ef0-29f3b1745df8 Repo: https://github.com/flatironinstitute/FMM3D.git Tree: d53f013f8b1830537322729258a4dadb1d4c3a51 Registrator tree SHA: 17aec322677d9b81cdd6b9b9236b09a3f1374c6a
6ed5758
to
5616505
Compare
[noblock] Looks like the license is fixed now! |
[noblock] Auto-merge fails due to the similar name conflict ( @DilumAluthge can this be manually merged now? Thanks! |
Would you be open to a longer and more descriptive name? |
I think the name is descriptive enough within its niche of users (similar to e.g. FFT), but I am neither the author of the library nor the author of this PR 😅 . As a user though, I like FMM3D.jl since it corresponds to the name of the library that this package wraps. |
I agree completely with you @maltezfaria 👍 |
@lu1and10 As the package author, would you be open to a longer and more descriptive name? We usually try for package names that are descriptive to the general audience of the Julia community, not just the specific domain of users. |
@DilumAluthge Thanks for asking. As one of the maintainers of the |