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

#12 - Parsing models with Linear Affine Dynamics #13

Merged
merged 21 commits into from
May 22, 2018
Merged

Conversation

mforets
Copy link
Member

@mforets mforets commented May 7, 2018

Closes #12.
Closes #14.
Closes #17.
Closes #18.
Closes #22.

@mforets mforets changed the title Mforets/12 #12 - Initial implementation (cont.) May 7, 2018
@mforets mforets changed the title #12 - Initial implementation (cont.) [WIP #12] - Initial implementation (cont.) May 8, 2018
@JuliaReach JuliaReach deleted a comment from mforets May 10, 2018
@mforets
Copy link
Member Author

mforets commented May 10, 2018

not urgent, but the tests need to be accomodated to the new convention for the input constraints U and X

context: since the type ConstrainedLinearControlContinuousSystem is of the form x' = Ax + Bu, with no constant vector C, we were adding a new column in B with the constants information, and also for the type U putting cartesian product with singleton's whose element takes the value 1.0. this is as workaround that seems to work, but we are not sure it will cause other problems (there can be a dimension mismatch if one location is linear and the other location is affine).

@mforets
Copy link
Member Author

mforets commented May 18, 2018

In the last push i changed the design of the inner loops of linearHS, in such a way that they rely on expression-to-lazyset checks and conversion methods.

The drawback of this approach is that it is not optimal performance-wise, since it does the same operation, such as taking a gradient, more than once.

src/convert.jl Outdated
# check if the expression defines a hyperplane
if is_linearcombination(lhs) && is_linearcombination(rhs)
return true
else
Copy link
Member

Choose a reason for hiding this comment

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

Just return is_linearcombination(lhs) && is_linearcombination(rhs)?

@mforets mforets mentioned this pull request May 19, 2018
@mforets
Copy link
Member Author

mforets commented May 19, 2018

Ready from my side, i've checked that the issues above are fixed, and those which are not, left for later.

This PR adds the new function linearHS that transforms a hybrid system whose fields are expressions, into another hybrid system whose fields are MathematicalSystems types, for the particular case where the dynamics and assignments in each mode are affine.

@mforets mforets changed the title [WIP #12] - Initial implementation (cont.) #12 - Initial implementation (cont.) May 19, 2018
@mforets mforets changed the title #12 - Initial implementation (cont.) #12 - Parsing models with Linear Affine Dynamics May 19, 2018
@mforets mforets requested a review from nikos-kekatos May 22, 2018 14:33
@mforets mforets merged commit 0bee143 into master May 22, 2018
@mforets mforets deleted the mforets/12 branch May 22, 2018 14:43
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