Skip to content
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

antidifferentiate is obsolete in d3 #209

Open
liamoconnor9 opened this issue Jun 23, 2022 · 10 comments
Open

antidifferentiate is obsolete in d3 #209

liamoconnor9 opened this issue Jun 23, 2022 · 10 comments
Milestone

Comments

@liamoconnor9
Copy link

The antidifferentiate method in field.py hasn't been updated for use in d3. Daniel suggested it might not be possible to antidifferentiate in curvilinear bases. I'm going to update it for Fourier and Chebyshev

@kburns
Copy link
Member

kburns commented Jun 23, 2022

I think we have to think a little carefully about what we want this to actually do, since now in d3 there's lots more freedom around tau terms and the output basis. My preference would honestly be to remove it and let people define their own LBVPs if they need to do so for e.g. initial conditions, like we do for the balanced flow in the shallow water example. Do you have another use case for this?

@liamoconnor9
Copy link
Author

liamoconnor9 commented Jun 23, 2022

If we could get an Antidifferentiate operator class working with delayed operation, that would add some functionality. Do you think that's possible? If not, then I agree there's no real advantage beyond doing it manually with LBVP.

@kburns
Copy link
Member

kburns commented Jun 23, 2022

You mean to have it in an operator tree that's used during an IVP? The best route might be to update the GeneralFunction class and pass in an LBVP through that.

@liamoconnor9
Copy link
Author

To clarify, I do have a use case but only if we can get delayed evaluation working

@liamoconnor9
Copy link
Author

You mean to have it in an operator tree that's used during an IVP? The best route might be to update the GeneralFunction class and pass in an LBVP through that.

Yep that's what I'm looking for! Thanks I'll try that out

@bpbrown
Copy link
Contributor

bpbrown commented Apr 24, 2023

Just ran back into this old issue. Should we remove the field.antidifferentiate() method so that it doesn't mislead?

@bpbrown bpbrown reopened this Apr 24, 2023
@liamoconnor9
Copy link
Author

liamoconnor9 commented Apr 24, 2023 via email

@kburns
Copy link
Member

kburns commented Apr 26, 2023

I think the way to do this is really to wrap solving an LBVP in a GeneralFunction. I think we should add a docs page on General Functions and include this as an example, and remove the antidifferentiate method.

@jsoishi
Copy link
Member

jsoishi commented Apr 26, 2023 via email

@kburns kburns added this to the 3.0.0 milestone Jun 14, 2023
@kburns
Copy link
Member

kburns commented Jun 20, 2023

Removed in 0b0d131, but we should still add docs on GF+LBVP before closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants