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

Print eval metric definitions in notebooks #17

Merged
merged 1 commit into from
Jul 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 20 additions & 1 deletion docs/notebooks/ceviche_challenges.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,26 @@
"\n",
"Visit the invrs-gym docs for the [ceviche challenges](https://invrs-io.github.io/gym/notebooks/ceviche_challenge.html).\n",
"\n",
"The ceviche challenges are based on \"[Inverse design of photonic devices with strict foundry fabrication constraints](https://doi.org/10.1021/acsphotonics.2c00313)\" by M. F. Schubert et al., and the associated [github repo](https://github.com/google/ceviche-challenges). They entail the design of integrated photonic components such as a beam splitter, mode converter, waveguide bend, and wavelength demultiplexer (wdm)."
"The ceviche challenges are based on \"[Inverse design of photonic devices with strict foundry fabrication constraints](https://doi.org/10.1021/acsphotonics.2c00313)\" by M. F. Schubert et al., and the associated [github repo](https://github.com/google/ceviche-challenges). They entail the design of integrated photonic components such as a beam splitter, mode converter, waveguide bend, and wavelength demultiplexer (wdm).\n",
"\n",
"The eval metric for ceviche challenges is defined in terms of transmission upper and lower bounds that are specified for each challenge, as follows:"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "900d5b5b",
"metadata": {
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"from invrs_gym import challenges\n",
"\n",
"docstring = challenges.ceviche_beam_splitter().eval_metric.__doc__\n",
"print(\"\\n\".join(docstring.split(\"Args\")[0].split(\"\\n\")[2:-2]))"
]
},
{
Expand Down
21 changes: 20 additions & 1 deletion docs/notebooks/diffractive_splitter.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,26 @@
"\n",
"Visit the invrs-gym docs for the [diffractive splitter challenge](https://invrs-io.github.io/gym/notebooks/diffractive_splitter_challenge.html).\n",
"\n",
"The diffractive splitter challenge is based on the “[Design and rigorous analysis of a non-paraxial diffractive beamsplitter](https://www.lighttrans.com/fileadmin/shared/UseCases/Application_UC_Rigorous%20Analysis%20of%20Non-paraxial%20Diffractive%20Beam%20Splitter.pdf)” slide deck retrieved from the LightTrans web site, and entails the design of a metasurface that evenly splits a normally-incident plane wave into a 7x7 array of beams, with diffraction angles of ±15 degrees."
"The diffractive splitter challenge is based on the “[Design and rigorous analysis of a non-paraxial diffractive beamsplitter](https://www.lighttrans.com/fileadmin/shared/UseCases/Application_UC_Rigorous%20Analysis%20of%20Non-paraxial%20Diffractive%20Beam%20Splitter.pdf)” slide deck retrieved from the LightTrans web site, and entails the design of a metasurface that evenly splits a normally-incident plane wave into a 7x7 array of beams, with diffraction angles of ±15 degrees.\n",
"\n",
"The diffractive splitter eval metric is defined as follows:"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "a805742a",
"metadata": {
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"from invrs_gym import challenges\n",
"\n",
"docstring = challenges.diffractive_splitter().eval_metric.__doc__\n",
"print(\"\\n\".join(docstring.split(\"Args\")[0].split(\"\\n\")[2:-2]))"
]
},
{
Expand Down
21 changes: 20 additions & 1 deletion docs/notebooks/meta_atom_library.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,26 @@
"\n",
"Visit the invrs-gym docs for the [meta-atom library challenge](https://invrs-io.github.io/gym/notebooks/library_challenge.html).\n",
"\n",
"The meta-atom library challenge is based on “[Dispersion-engineered metasurfaces reaching broadband 90% relative diffraction efficiency](https://www.nature.com/articles/s41467-023-38185-2)” by Chen et al., and entails the design of eight meta-atoms for use in broadband, visible-wavelength metasurfaces."
"The meta-atom library challenge is based on “[Dispersion-engineered metasurfaces reaching broadband 90% relative diffraction efficiency](https://www.nature.com/articles/s41467-023-38185-2)” by Chen et al., and entails the design of eight meta-atoms for use in broadband, visible-wavelength metasurfaces.\n",
"\n",
"The meta atom library eval metric is defined as follows:"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "04502bcc",
"metadata": {
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"from invrs_gym import challenges\n",
"\n",
"docstring = challenges.meta_atom_library().eval_metric.__doc__\n",
"print(\"\\n\".join(docstring.split(\"Args\")[0].split(\"\\n\")[2:-2]))"
]
},
{
Expand Down
21 changes: 20 additions & 1 deletion docs/notebooks/metagrating.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,26 @@
"\n",
"Visit the invrs-gym docs for the [metagrating challenge](https://invrs-io.github.io/gym/notebooks/metagrating_challenge.html).\n",
"\n",
"The metagrating challenge is based on “[Validation and characterization of algorithms and software for photonics inverse design](https://opg.optica.org/josab/ViewMedia.cfm?uri=josab-41-2-A161)” by Chen et al., and entails the design of a metasurface that deflects a normally-incident plane wave so that it propagates with a polar angle of 50 degrees."
"The metagrating challenge is based on “[Validation and characterization of algorithms and software for photonics inverse design](https://opg.optica.org/josab/ViewMedia.cfm?uri=josab-41-2-A161)” by Chen et al., and entails the design of a metasurface that deflects a normally-incident plane wave so that it propagates with a polar angle of 50 degrees.\n",
"\n",
"The metagrating eval metric is defined as follows:"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "5b6574f9",
"metadata": {
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"from invrs_gym import challenges\n",
"\n",
"docstring = challenges.metagrating().eval_metric.__doc__\n",
"print(\"\\n\".join(docstring.split(\"Args\")[0].split(\"\\n\")[2:-2]))"
]
},
{
Expand Down
21 changes: 20 additions & 1 deletion docs/notebooks/metalens.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,26 @@
"\n",
"Visit the invrs-gym docs for the [metalens challenge](https://invrs-io.github.io/gym/notebooks/metalens_challenge.html).\n",
"\n",
"The metalens challenge is based on “[Validation and characterization of algorithms and software for photonics inverse design](https://opg.optica.org/josab/ViewMedia.cfm?uri=josab-41-2-A161)” by Chen et al., and entails the design of one-dimensional metalens that focuses normally-incident 450 nm, 550 nm, and 650 nm plane waves to a point 2.4 microns above the metalens surface."
"The metalens challenge is based on “[Validation and characterization of algorithms and software for photonics inverse design](https://opg.optica.org/josab/ViewMedia.cfm?uri=josab-41-2-A161)” by Chen et al., and entails the design of one-dimensional metalens that focuses normally-incident 450 nm, 550 nm, and 650 nm plane waves to a point 2.4 microns above the metalens surface.\n",
"\n",
"The metalens eval metric is defined as follows:"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "9e189811",
"metadata": {
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"from invrs_gym import challenges\n",
"\n",
"docstring = challenges.metalens().eval_metric.__doc__\n",
"print(\"\\n\".join(docstring.split(\"Args\")[0].split(\"\\n\")[2:-2]))"
]
},
{
Expand Down
21 changes: 20 additions & 1 deletion docs/notebooks/photon_extractor.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,26 @@
"\n",
"Visit the invrs-gym docs for the [photon extractor challenge](https://invrs-io.github.io/gym/notebooks/photon_extractor_challenge.html).\n",
"\n",
"The metalens challenge is based on “[Inverse-designed photon extractors for optically addressable defect qubits](https://opg.optica.org/optica/fulltext.cfm?uri=optica-7-12-1805)” by Chakravarthi et al., and entails the design of a patterned GaP layer that enhances the power collected from a nitrogen vacancy defect buried at a depth of 100 nm within a diamond substrate."
"The metalens challenge is based on “[Inverse-designed photon extractors for optically addressable defect qubits](https://opg.optica.org/optica/fulltext.cfm?uri=optica-7-12-1805)” by Chakravarthi et al., and entails the design of a patterned GaP layer that enhances the power collected from a nitrogen vacancy defect buried at a depth of 100 nm within a diamond substrate.\n",
"\n",
"The photon extractor eval metric is defined as follows:"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "d53fb9f1",
"metadata": {
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"from invrs_gym import challenges\n",
"\n",
"docstring = challenges.photon_extractor().eval_metric.__doc__\n",
"print(\"\\n\".join(docstring.split(\"Args\")[0].split(\"\\n\")[2:-2]))"
]
},
{
Expand Down