JuliaSmoothOptimizers / QuadraticModels.jl

Data structures for linear and quadratic optimization problems based on NLPModels.jl
Other
16 stars 10 forks source link

Add consistency tests and missing methods #10

Closed RenanOD closed 4 years ago

RenanOD commented 5 years ago

:tada: :tada: :tada:

dpo commented 5 years ago

Thanks!

What do you mean by "concurrency"?

abelsiqueira commented 5 years ago

I think it's supposed to be "consistency"?

RenanOD commented 5 years ago

Was a bad choice of word :crying_cat_face: I'll changed it to consistency.

A ADNLPModel is created using ForwardDiff, then a QuadraticModel is built using it. These tests check that the derivatives, objective and constraints are consistent between both models.

codecov[bot] commented 5 years ago

Codecov Report

Merging #10 into master will increase coverage by 41.93%. The diff coverage is 58.33%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #10       +/-   ##
==========================================
+ Coverage   40.67%   82.6%   +41.93%     
==========================================
  Files           3       3               
  Lines          59      46       -13     
==========================================
+ Hits           24      38       +14     
+ Misses         35       8       -27
Impacted Files Coverage Δ
src/qpmodel.jl 83.72% <58.33%> (+44.43%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 6e92639...01e69fd. Read the comment docs.

RenanOD commented 5 years ago

Ready for review.

RenanOD commented 5 years ago

All requested changes were made.

RenanOD commented 5 years ago

I made the requested changes and checked with NLPModels to remove all unnecessary kwargs and methods. Ready for review.

dpo commented 5 years ago

Thank you for all this! We'll have to think some more about this package because H can be an explicit matrix or an operator, while A must be an explicit matrix. We should allow more flexibility and have ways to distinguish the different cases.

abelsiqueira commented 5 years ago

Thank you for all this! We'll have to think some more about this package because H can be an explicit matrix or an operator, while A must be an explicit matrix. We should allow more flexibility and have ways to distinguish the different cases.

Should we leave for a second PR? It looks very easy to add opA the same way we have opH. Are you thinking something else?

abelsiqueira commented 5 years ago

BTW, LLSModel in NLPModels.jl also does this/needs attention.

dpo commented 5 years ago

No, that should be done in other PRs.

dpo commented 4 years ago

I moved this to #13 and removed the IPOPT tests.