Skip to content

Add support for definite integration #59

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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

GregVernon
Copy link

@GregVernon GregVernon commented Aug 8, 2023

See this Discourse conversation: https://discourse.julialang.org/t/integrating-symbolic-functions/102545

Thought I'd start a basic MR with the most naive implementation, and let it evolve from here. I've only done the most basic manual testing (e.g. integrate $x$ over the domain [0,1]), but am open to suggestions for how to build out testing -- is it enough to rely on Symbolics.substitute unit tests, and then just a few return-type / edge case tests?

Copy link

@ai-maintainer ai-maintainer bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AI-Maintainer Review for PR - Add support for definite integration

Title and Description 👍

The Title and description are clear, concise and helpful
The title of the pull request is clear and concise. It effectively communicates the purpose of the changes, which is to add support for definite integration. The description could benefit from a more detailed explanation of the changes being made and the motivation behind them.

Scope of Changes 👍

The changes are narrowly focused
The changes are narrowly focused on adding support for definite integration. The diff only includes modifications to the `integral.jl` file, specifically within the `integrate` function. There are no indications that the author is trying to resolve multiple issues simultaneously.

Documentation 👎

Docstrings are missing for the modified function
The `integrate` function requires a docstring to describe its behavior, arguments, and return values. Please add a docstring to this function.

Testing 👎

No information on testing is provided
The description of the pull request does not mention how the author tested the changes. It would be beneficial for the author to provide information on how they tested the changes to ensure their correctness and functionality.

Suggested Changes

  1. Please add a docstring to the integrate function to describe its behavior, arguments, and return values. This will help other developers understand the purpose and usage of this function.
  2. Please provide information on how you tested the changes. This could include unit tests, integration tests, or manual testing procedures. This will help ensure the changes are functioning as expected and have not introduced any new issues.

Reviewed with AI Maintainer

@ChrisRackauckas
Copy link
Member

is it enough to rely on Symbolics.substitute unit tests, and then just a few return-type / edge case tests?

It would be good to test a few values and cases.

@codecov
Copy link

codecov bot commented Aug 8, 2023

Codecov Report

Merging #59 (ca1a14b) into main (ae77a3d) will decrease coverage by 64.87%.
The diff coverage is 0.00%.

❗ Current head ca1a14b differs from pull request most recent head 9aaa42e. Consider uploading reports for the commit 9aaa42e to get more accurate results

@@            Coverage Diff             @@
##             main     #59       +/-   ##
==========================================
- Coverage   64.96%   0.10%   -64.87%     
==========================================
  Files          14      14               
  Lines         942     933        -9     
==========================================
- Hits          612       1      -611     
- Misses        330     932      +602     
Files Changed Coverage Δ
src/integral.jl 0.00% <0.00%> (-80.51%) ⬇️

... and 10 files with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@@ -46,7 +46,7 @@ Output:
- `unsolved`: the residual unsolved portion of the input
- `err`: the numerical error in reaching the solution
"""
function integrate(eq, x = nothing, domain::Vector{<:Number} = nothing; abstol = 1e-6, num_steps = 2, num_trials = 10,
function integrate(eq, x = nothing, domain::Vector{<:Number} = [NaN]; abstol = 1e-6, num_steps = 2, num_trials = 10,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for safety make it nothing by default.

@knuesel
Copy link

knuesel commented Mar 8, 2024

I think this can be closed as superseded by #63 ?

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

Successfully merging this pull request may close these issues.

3 participants