-
Notifications
You must be signed in to change notification settings - Fork 0
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
Feature/perfect estimator #121
Conversation
…_camera a camera interface to access it
…side of simulation
if was_acquiring: | ||
# Ignore first two frames to ensure the frames were taken _after_ the | ||
# call to this function. This is not necessary if the acquisition just | ||
# started. | ||
first_frame_id += 2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this is relevant in simulation.
def get_camera_e_field(self, camera_name): | ||
'''Get the current electric field on a camera. | ||
|
||
Parameters | ||
---------- | ||
camera_name : string | ||
The name of the camera. | ||
|
||
Returns | ||
------- | ||
hcipy.Field | ||
The incident power on that camera. | ||
''' | ||
raise NotImplementedError() | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think you need to add this function here. Having it only in hicat-simulator.py
should be sufficient.
def camera_e_field_readout(self, camera_name, integrated_e_field): | ||
'''Read out a camera. | ||
|
||
This function should be overriden by the child class. It is responsible | ||
for handling the image and submitting it to the right service. | ||
|
||
Parameters | ||
---------- | ||
camera_name : string | ||
The name of the camera. | ||
integrated_e_field : hcipy.Field | ||
The integrated electric field for this camera, ie. integration time times average | ||
incident electric field on each pixel. | ||
''' | ||
pass | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same - I'm not sure this should live there. Well the question is: do we want this to be a standard catkit feature? If no, having it only in hicat-simulator.py
should be good.
self.camera_integrated_e_field[camera_name] += camera_e_field_images[camera_name] * integration_time | ||
except KeyError: | ||
self.camera_integrated_e_field[camera_name] = (camera_e_field_images[camera_name] | ||
* integration_time) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't integration time be sqrt(integration time)
?
Closing this PR. Decided for the perfect estimator that we no longer want to use an electric field camera that sends the e-field over a data stream, but instead want to spin up a separate optical model that is updated with the testbed state. Not only is this more self contained and less complex, but it should yield the same results. There could be future use for an e-field camera but it is de-scoped from this PR (still see https://github.com/spacetelescope/hicat-package2/pull/470) |
See also affiliated PR on hicat-package2 (https://github.com/spacetelescope/hicat-package2/pull/470)
Soliciting feedback - contains support for the electric field camera service