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

WIP: Functional constraints #18

Draft
wants to merge 115 commits into
base: master
Choose a base branch
from

Conversation

joshua-cogliati-inl
Copy link

This pull request is unfinished and put here for commenting.

Jimmy-INL and others added 30 commits February 10, 2022 12:49
…niharika-krithika-mohammad-regionConstraints

Updation
…ctions which calculate and update the norm
Copy link
Author

@joshua-cogliati-inl joshua-cogliati-inl left a comment

Choose a reason for hiding this comment

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

Some comments on the constraint work.

pysensors/utils/_constraints.py Show resolved Hide resolved
ax.autoscale_view()


def constraint_function(self,x_all_unc, y_all_unc):

Choose a reason for hiding this comment

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

Still needs to be implemented.

Copy link
Contributor

Choose a reason for hiding this comment

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

Is now implemented

return idx_const,rank

def functional_constraints(functionHandler, idx,**kwargs):
"""

Choose a reason for hiding this comment

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

This should be split into two parts, one to get a function from a file, and one to use a function for a constraint.

Copy link
Contributor

Choose a reason for hiding this comment

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

Has been changed based on our discussion

if isinstance(info,tuple):
return np.unravel_index(idx,info,'F')
elif isinstance(info,pd.DataFrame):
x = info.loc[idx,'X (m)']#.values ## This will not always be X (m) or Y (m) CHANGE!!!

Choose a reason for hiding this comment

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

This hard coding of 'X (m)' and 'Y (m)' probably needs to be fixed.

Copy link
Contributor

Choose a reason for hiding this comment

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

Has been changed to accept user input for 'X (m)' and 'Y (m)'

Niharika Karnik added 5 commits September 28, 2023 12:34
…ons in _constraints based on discussions with Josh and Mohammad
…ser defined constraints and examples on how to implement it
…on to be greater than the optimal number suggested by plain QR and example notebook reflecting the same
@niharika2999
Copy link
Contributor

Some comments after looking at the branch. (My biggest question in here is if this should handle non-2d data.)

I think we are sticking to 2-D data as of now but would like to introduce the handling of 3-D data in the future too.

Niharika Karnik and others added 19 commits October 20, 2023 15:53
…w changes for the constraints class), addressing Josh's comments on this class and notebooks reflecting all of the functionalities of this class
… way user defined constraints are plotted for various string,equation implementations
…l as being able to plot on multiple axes for plot_constraints_on_data and subsequent plotting functions. Adding different colours to annotate_sensors and plotting_selected_sensors to reflect effect of constraints on sensors selected. Jupyter notebooks updated to reflect these changes
…tion as the matplotlib ellipse function requires the diameter or the vertical and horizontal axis and we were giving it half_major_axis and half_minor_axis)
…ction() of class Ellipse(), the functional_constraints_class notebook reflects these chnages
…onstraints_class' into functional_constraints
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.

None yet

3 participants