diff --git a/.ipynb_checkpoints/faq_categories-checkpoint.json b/.ipynb_checkpoints/faq_categories-checkpoint.json
new file mode 100644
index 0000000..9243ab8
--- /dev/null
+++ b/.ipynb_checkpoints/faq_categories-checkpoint.json
@@ -0,0 +1,341 @@
+[
+ {
+ "category": "About Tidy3D",
+ "id": "about-tidy3d",
+ "faqs": [
+ "_faqs/how-is-using-tidy3d-billed.md",
+ "_faqs/what-is-tidy3d.md",
+ "_faqs/can-i-get-a-discount-as-a-student-or-teacher.md",
+ "_faqs/what-are-the-advantages-of-tidy3d-compared-to-traditional-em-simulators.md",
+ "_faqs/do-i-have-to-know-python-programming-to-use-tidy3d.md",
+ "_faqs/what-is-a-flexcredit.md",
+ "_faqs/how-many-cpu-hours-is-one-flexcredit-comparable-to.md",
+ "_faqs/does-tidy3d-have-a-graphical-user-interface.md",
+ "_faqs/can-i-do-a-free-trial-to-evaluate-the-capabilities-of-tidy3d-before-purchasing-it.md"
+ ]
+ },
+ {
+ "category": "Installation and Help",
+ "id": "installation-and-help",
+ "faqs": [
+ "_faqs/how-can-i-install-the-python-client-of-tidy3d.md",
+ "_faqs/how-do-i-see-the-version-of-tidy3d-i-am-using.md",
+ "_faqs/how-do-i-get-help-related-to-a-tidy3d-object.md",
+ "_faqs/can-i-try-tidy3d-before-installing-the-python-client-on-my-computer.md"
+ ]
+ },
+ {
+ "category": "Simulations",
+ "id": "simulations",
+ "faqs": [
+ "_faqs/how-do-i-run-a-simulation-and-access-the-results.md",
+ "_faqs/how-to-submit-a-simulation-in-python-to-the-server.md",
+ "_faqs/how-do-i-upload-a-job-to-the-web-without-running-it-so-i-can-inspect-it-first.md",
+ "_faqs/how-do-i-monitor-the-progress-of-a-simulation.md",
+ "_faqs/how-do-i-load-the-results-of-a-simulation.md",
+ "_faqs/how-do-i-load-the-results-of-a-job-that-has-already-been-finished-without-knowing-the-task-id.md",
+ "_faqs/how-do-i-access-the-original-simulation-object-that-created-the-data.md",
+ "_faqs/how-do-i-save-and-load-the-simulationdata-object.md",
+ "_faqs/how-do-i-save-and-load-any-tidy3d-object.md",
+ "_faqs/how-do-i-get-all-data-in-a-tidy3d-object-as-a-dictionary.md",
+ "_faqs/how-do-i-estimate-how-many-credits-my-simulation-will-take.md",
+ "_faqs/how-do-i-see-the-cost-of-my-simulation.md",
+ "_faqs/how-can-i-optimize-the-simulation-cost.md",
+ "_faqs/how-do-i-print-the-task-log-file.md",
+ "_faqs/what-are-the-units-used-in-the-simulation.md",
+ "_faqs/how-to-run-a-2d-simulation-in-tidy3d.md",
+ "_faqs/why-the-simulation-time-for-the-exact-same-simulation-can-vary.md",
+ "_faqs/how-long-should-i-run-the-simulation.md",
+ "_faqs/can-you-convert-a-lumerical-script-file-to-tidy3d.md"
+ ]
+ },
+ {
+ "category": "Parameter Sweep",
+ "id": "parameter-sweep",
+ "faqs": [
+ "_faqs/how-do-i-run-a-parameter-sweep.md",
+ "_faqs/how-do-i-submit-multiple-simulations.md",
+ "_faqs/how-to-load-a-batch-result.md",
+ "_faqs/how-do-i-loop-through-tidy3d-web-batchdata-without-loading-all-of-the-data-into-memory.md",
+ "_faqs/how-do-i-save-or-load-a-tidy3d-web-batch-so-i-can-work-with-it-later.md"
+ ]
+ },
+ {
+ "category": "Simulation Troubleshoot",
+ "id": "simulation-troubleshoot",
+ "faqs": [
+ "_faqs/why-is-a-simulation-diverging.md",
+ "_faqs/how-can-i-troubleshoot-a-diverged-fdtd-simulation.md",
+ "_faqs/why-did-my-simulation-finish-early.md",
+ "_faqs/should-i-make-sure-that-fields-have-fully-decayed-by-the-end-of-the-simulation.md",
+ "_faqs/can-i-have-structures-larger-than-the-simulation-domain.md",
+ "_faqs/why-can-i-not-change-tidy3d-instances-after-they-are-created.md",
+ "_faqs/why-are-some-materials-not-showing-up.md"
+ ]
+ },
+ {
+ "category": "Mediums",
+ "id": "mediums",
+ "faqs": [
+ "_faqs/how-do-i-include-material-dispersion.md",
+ "_faqs/can-i-import-my-own-tabulated-material-data.md",
+ "_faqs/how-do-i-create-a-lossy-material-with-a-conductivity.md",
+ "_faqs/how-do-i-create-a-material-from-n-k-values-at-a-given-frequency.md",
+ "_faqs/how-do-i-create-a-material-from-optical-n-k-data.md",
+ "_faqs/how-do-i-create-a-dispersive-material-from-model-parameters.md",
+ "_faqs/how-do-i-create-an-anisotropic-material.md",
+ "_faqs/how-do-i-create-an-active-material.md",
+ "_faqs/how-do-i-create-a-spatially-varying-material.md",
+ "_faqs/how-do-i-export-a-spatially-varying-medium-dataset-to-hdf5.md",
+ "_faqs/how-do-i-load-a-commonly-used-dispersive-material.md",
+ "_faqs/how-can-i-define-a-2d-material.md",
+ "_faqs/how-can-i-define-graphene.md",
+ "_faqs/how-can-i-define-a-nonlinear-material.md"
+ ]
+ },
+ {
+ "category": "Structures",
+ "id": "structures",
+ "faqs": [
+ "_faqs/how-do-i-import-a-structure-from-a-gdsii-file.md",
+ "_faqs/how-can-i-import-a-structure-from-stl-files.md",
+ "_faqs/how-do-i-export-a-structure-to-gdsii-format.md",
+ "_faqs/how-do-i-create-a-box.md",
+ "_faqs/how-do-i-create-a-sphere.md",
+ "_faqs/how-do-i-create-a-cylinder.md",
+ "_faqs/how-do-i-create-a-polygon.md",
+ "_faqs/how-do-i-create-a-geometry-group.md",
+ "_faqs/how-do-i-combine-multiple-geometries.md",
+ "_faqs/when-two-structures-overlap-what-is-the-priority-determined.md",
+ "_faqs/how-to-rotate-a-geometry.md",
+ "_faqs/how-to-translate-a-geometry.md",
+ "_faqs/how-to-scale-a-geometry.md",
+ "_faqs/how-can-i-apply-transformations-to-a-geometry.md",
+ "_faqs/how-do-i-use-clip-operations.md",
+ "_faqs/which-features-can-i-use-to-create-geometries-in-tidy3d.md",
+ "_faqs/how-do-i-define-complex-geometries-using-trimesh.md",
+ "_faqs/how-do-i-build-curves-rings-and-other-photonic-integrated-components.md",
+ "_faqs/how-do-i-build-photonic-crystal-structures.md"
+ ]
+ },
+ {
+ "category": "Sources",
+ "id": "sources",
+ "faqs": [
+ "_faqs/what-source-bandwidth-should-i-use-for-my-simulation.md",
+ "_faqs/how-do-i-set-the-source-frequency-and-bandwidth.md",
+ "_faqs/how-can-i-plot-the-source-spectrum-and-time-dependence.md",
+ "_faqs/how-can-i-plot-the-source-spectrum.md",
+ "_faqs/how-are-results-normalized.md",
+ "_faqs/how-do-i-set-a-pointdipole-source.md",
+ "_faqs/how-do-i-calculate-the-power-radiated-by-a-pointdipole-source.md",
+ "_faqs/how-do-i-set-a-uniformcurrentsource-source.md",
+ "_faqs/how-do-i-set-a-planewave-source.md",
+ "_faqs/how-do-i-set-a-modesource.md",
+ "_faqs/how-do-i-inject-a-specific-optical-mode-in-a-waveguide.md",
+ "_faqs/how-do-i-inject-an-optical-mode-in-a-waveguide-bend.md",
+ "_faqs/how-do-i-set-a-gaussianbeam.md",
+ "_faqs/how-do-i-model-an-optical-fiber-mode-source.md",
+ "_faqs/how-do-i-model-a-converging-gaussian-beam.md",
+ "_faqs/how-do-i-model-a-diverging-gaussian-beam.md",
+ "_faqs/how-do-i-set-an-astigmaticgaussianbeam-source.md",
+ "_faqs/how-do-i-set-a-total-field-scattered-field-tfsf-source.md",
+ "_faqs/how-do-i-set-a-custom-field-source.md",
+ "_faqs/how-do-i-set-a-custom-current-source.md",
+ "_faqs/how-do-i-inject-an-optical-mode-in-a-tilted-waveguide.md",
+ "_faqs/what-is-the-formula-for-ContinuousWave.md",
+ "_faqs/what-is-the-formula-for-GaussianBeam.md",
+ "_faqs/what-is-the-formula-for-GaussianPulse.md",
+ "_faqs/what-is-the-formula-for-PlaneWave.md"
+ ]
+ },
+ {
+ "category": "Grid Specification",
+ "id": "grid-specification",
+ "faqs": [
+ "_faqs/what-do-i-need-to-know-about-the-numerical-grid.md",
+ "_faqs/how-fine-of-a-grid-or-mesh-does-my-simulation-need-how-to-choose-grid-spec.md",
+ "_faqs/how-to-use-the-automatic-nonuniform-meshing-what-steps-per-wavelength-will-be-sufficient.md",
+ "_faqs/how-can-i-create-a-uniform-grid.md",
+ "_faqs/how-can-i-locally-refine-the-mesh.md"
+ ]
+ },
+ {
+ "category": "Boundary Conditions",
+ "id": "boundary-conditions",
+ "faqs": [
+ "_faqs/which-types-of-boundary-conditions-are-available-in-tidy3d.md",
+ "_faqs/how-do-i-set-the-perfect-matched-layer-pml-boundary-condition.md",
+ "_faqs/how-do-i-set-the-perfect-electric-conductor-pec-boundary-condition.md",
+ "_faqs/how-do-i-set-the-perfect-magnetic-conductor-pmc-boundary-condition.md",
+ "_faqs/how-do-i-set-the-periodic-boundary-condition.md",
+ "_faqs/how-do-i-set-the-bloch-boundary-condition.md",
+ "_faqs/how-do-i-set-the-absorber-boundary-condition.md",
+ "_faqs/how-do-i-specify-different-boundary-conditions-on-each-simulation-domain-edge.md",
+ "_faqs/can-my-geometry-lie-within-the-boundary-layers.md",
+ "_faqs/what-is-the-ideal-distance-between-the-geometry-and-absorbing-layers.md",
+ "_faqs/how-do-i-avoid-reflections-from-the-simulation-edges.md",
+ "_faqs/how-do-i-simulate-periodic-structures-in-tidy3d.md",
+ "_faqs/what-is-the-difference-between-periodic-and-bloch-boundaries.md"
+ ]
+ },
+ {
+ "category": "Symmetry",
+ "id": "symmetry",
+ "faqs": [
+ "_faqs/why-is-it-preferable-to-use-symmetry-whenever-possible.md",
+ "_faqs/how-do-i-set-symmetry-in-tidy3d.md",
+ "_faqs/how-do-i-identify-the-symmetry-planes-of-my-simulation.md",
+ "_faqs/what-does-odd-i-e-pec-symmetry-mean.md",
+ "_faqs/what-does-even-i-e-pmc-symmetry-mean.md",
+ "_faqs/how-do-i-filter-out-waveguide-modes-using-symmetry.md",
+ "_faqs/does-tidy3d-support-continuous-and-discrete-rotational-symmetries.md"
+ ]
+ },
+ {
+ "category": "Mode Solver",
+ "id": "mode-solver",
+ "faqs": [
+ "_faqs/how-do-i-set-the-mode-solver.md",
+ "_faqs/how-are-the-output-modes-sorted.md",
+ "_faqs/how-do-i-set-the-mode-polarization.md",
+ "_faqs/how-do-i-run-the-mode-solver-locally.md",
+ "_faqs/how-do-i-run-the-server-side-mode-solver.md",
+ "_faqs/what-are-the-differences-between-running-the-server-side-and-the-local-mode-solver.md",
+ "_faqs/which-information-can-i-obtain-from-the-mode-solver.md",
+ "_faqs/how-can-i-get-the-mode-solver-information.md",
+ "_faqs/how-can-i-get-the-mode-field-distribution.md",
+ "_faqs/how-can-i-plot-the-mode-field-distribution.md",
+ "_faqs/how-do-i-plot-the-mode-effective-index-versus-wavelength.md",
+ "_faqs/how-do-i-plot-the-mode-group-index-versus-wavelength.md",
+ "_faqs/how-do-i-calculate-the-mode-effective-area.md",
+ "_faqs/how-do-i-calculate-the-mode-polarization-fraction.md",
+ "_faqs/how-do-i-calculate-the-waveguide-mode-polarization-fraction.md"
+ ]
+ },
+ {
+ "category": "Monitors",
+ "id": "monitors",
+ "faqs": [
+ "_faqs/how-do-i-set-a-fieldmonitor.md",
+ "_faqs/how-do-i-specify-apodization.md",
+ "_faqs/how-do-i-create-field-animations.md",
+ "_faqs/to-how-do-i-change-the-phase-of-fields-obtained-from-frequency-domain-monitors.md",
+ "_faqs/how-do-i-set-a-fieldtimemonitor.md",
+ "_faqs/how-do-i-create-a-field-animation.md",
+ "_faqs/how-do-i-plot-the-time-domain-field-at-a-specific-time.md",
+ "_faqs/how-do-i-set-a-fluxmonitor.md",
+ "_faqs/how-do-i-calculate-the-poynting-vector-at-a-specific-surface.md",
+ "_faqs/how-do-i-integrate-the-poyting-vector-at-a-specific-surface.md",
+ "_faqs/how-do-i-create-a-flux-box.md",
+ "_faqs/how-do-i-set-a-fluxtimemonitor.md",
+ "_faqs/how-do-i-set-a-modemonitor.md",
+ "_faqs/how-do-i-get-the-coupling-efficiency-of-a-specific-waveguide-mode.md",
+ "_faqs/how-do-i-calculate-mode-overlap.md",
+ "_faqs/how-do-i-set-a-modesolvermonitor.md",
+ "_faqs/how-do-i-set-a-permittivitymonitor.md",
+ "_faqs/how-do-i-set-a-fieldprojectioncartesianmonitor.md",
+ "_faqs/how-do-i-set-a-fieldprojectionanglemonitor.md",
+ "_faqs/how-do-i-set-a-fieldprojectionkspacemonitor.md",
+ "_faqs/how-do-i-set-a-diffractionmonitor.md",
+ "_faqs/what-does-the-FluxMonitor-record.md"
+ ]
+ },
+ {
+ "category": "Data Visualization and Postprocessing",
+ "id": "data-visualization-and-postprocessing",
+ "faqs": [
+ "_faqs/how-do-i-plot-an-object-with-a-spatial-definition.md",
+ "_faqs/how-do-i-change-the-object-plotting-characteristics-facecolor-edgecolor-etc.md",
+ "_faqs/how-do-i-change-the-global-plot-characteristics-title-size-etc.md",
+ "_faqs/how-do-i-access-the-data-of-a-specific-monitor.md",
+ "_faqs/how-do-i-interpolate-the-electromagnetic-field-data-at-the-yee-cell-centers.md",
+ "_faqs/how-do-i-get-the-monitor-s-data-from-a-simulationdata-object.md",
+ "_faqs/how-do-i-select-the-data-at-a-certain-coordinate-value-i-e-x-0-0-f-200e12.md",
+ "_faqs/how-do-i-get-the-monitor-data-at-a-certain-index.md",
+ "_faqs/how-do-i-interpolate-the-monitor-data-at-various-coordinate-values.md",
+ "_faqs/how-do-i-get-the-real-part-imaginary-part-or-absolute-value-of-complex-valued-simulation-data.md",
+ "_faqs/how-do-i-get-the-raw-monitor-data-values-as-a-numpy-array.md",
+ "_faqs/how-do-i-get-a-specific-field-component-from-a-fieldmonitor-or-fieldtimemonitor.md",
+ "_faqs/how-do-i-plot-the-monitor-data-as-a-function-of-one-of-its-coordinates.md",
+ "_faqs/how-do-i-plot-the-simulation-structure-on-top-of-my-field-plot.md",
+ "_faqs/how-do-i-project-electromagnetic-near-field-data-to-the-far-field.md",
+ "_faqs/how-do-i-export-field-data-to-zbf.md"
+ ]
+ },
+ {
+ "category": "Scattering Matrix",
+ "id": "scattering-matrix",
+ "faqs": [
+ "_faqs/how-do-i-compute-scattering-matrix-parameters-for-modeling-my-device.md",
+ "_faqs/how-do-i-specify-a-port-in-the-scattering-matrix-calculation.md",
+ "_faqs/how-do-i-specify-mappings-between-scattering-matrix-elements.md"
+ ]
+ },
+ {
+ "category": "Resonance Finder",
+ "id": "resonance-finder",
+ "faqs": [
+ "_faqs/how-do-i-set-the-resonancefinder.md",
+ "_faqs/how-do-i-get-resonance-quality-factors.md",
+ "_faqs/how-do-i-calculate-photonic-band-diagrams-using-the-resonancefinder.md",
+ "_faqs/how-do-i-calculate-the-effective-mode-volume.md",
+ "_faqs/how-to-ensure-the-calculated-quality-factor-is-accurate.md",
+ "_faqs/how-do-i-calculate-the-purcell-factor.md"
+ ]
+ },
+ {
+ "category": "Inverse Design",
+ "id": "inverse-design",
+ "faqs": [
+ "_faqs/what-is-adjoint-simulation.md",
+ "_faqs/how-many-simulations-are-performed-in-adjoint-calculations.md",
+ "_faqs/how-is-the-adjoint-simulation-billed.md",
+ "_faqs/how-do-i-set-an-inverse-design-problem.md",
+ "_faqs/what-are-the-differences-between-adjoint-shape-topology-and-level-set-optimizations.md",
+ "_faqs/how-do-i-set-an-adjoint-shape-optimization.md",
+ "_faqs/how-do-i-set-an-adjoint-topology-optimization.md",
+ "_faqs/how-do-i-create-an-adjoint-parameterized-level-set-optimization.md",
+ "_faqs/how-do-i-include-fabrication-constraints-in-adjoint-shape-optimization.md",
+ "_faqs/how-do-i-include-fabrication-constraints-in-adjoint-topology-optimization.md",
+ "_faqs/how-do-i-include-fabrication-constraints-in-adjoint-level-set-optimization.md",
+ "_faqs/how-do-i-export-the-final-inverse-design-structure-to-gds.md"
+ ]
+ },
+ {
+ "category": "EME",
+ "id": "eme",
+ "faqs": [
+ "_faqs/how-do-i-run-a-sweep-with-eme.md",
+ "_faqs/how-to-define-the-number-of-modes-for-an-eme-simulation.md",
+ "_faqs/how-can-i-simulate-bent-waveguides-with-eme.md",
+ "_faqs/how-do-i-set-an-eme-simulation.md",
+ "_faqs/what-is-eme.md"
+ ]
+ },
+ {
+ "category": "Heat",
+ "id": "heat",
+ "faqs": [
+ "_faqs/how-do-i-use-heat-data-in-a-fdtd-simulation.md",
+ "_faqs/how-do-i-set-a-heat-simulation.md",
+ "_faqs/how-do-i-set-a-heat-source.md",
+ "_faqs/what-are-the-units-for-heat-simulation.md",
+ "_faqs/which-types-of-boundary-conditions-are-available.md",
+ "_faqs/how-can-i-set-boundary-conditions.md"
+ ]
+ },
+ {
+ "category": "Charge",
+ "id": "charge",
+ "faqs": [
+ "_faqs/how-can-i-define-doping-profile.md",
+ "_faqs/which-types-of-charge-boundary-conditions-are-available.md",
+ "_faqs/how-can-i-define-the-simulation-grid.md",
+ "_faqs/what-charge-monitors-are-available.md",
+ "_faqs/how-can-i-define-a-semiconductor-material.md",
+ "_faqs/how-do-i-set-a-charge-simulation.md",
+ "_faqs/how-can-i-set-charge-boundary-conditions.md"
+ ]
+ }
+]
\ No newline at end of file
diff --git a/_faqs/.ipynb_checkpoints/what-does-the-FluxMonitor-record-checkpoint.md b/_faqs/.ipynb_checkpoints/what-does-the-FluxMonitor-record-checkpoint.md
new file mode 100644
index 0000000..ec267e1
--- /dev/null
+++ b/_faqs/.ipynb_checkpoints/what-does-the-FluxMonitor-record-checkpoint.md
@@ -0,0 +1,32 @@
+---
+_schema: default
+title: What does the FluxMonitor record?
+date: 2025-09-08 17:29:25
+enabled: true
+category: Monitors
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The FluxMonitor records field data tangential $E$ and $H$ fields colocated to the cell boundaries in the monitor's 2D plane grid. It then computes and integrates the Poynting vector, returning the real part of this integral as the flux.
+
+
+ Real$(\sum\limits_{\text{cells in monitor}}\frac{1}{2}(E_1\cdot H_2^*-E_2\cdot H_1^*)dA_{\text{cell}})$
+
+where $dA$ is the area of each cell in the monitor, and the field components 1 and 2 are given depending on the monitor geometry: for $x$-normal monitors, 1 is $y$ and 2 is $z$; for $y$-normal monitors, 1 is $x$ and 2 is $z$; for $z$-normal monitors, 1 is $x$ and 2 is $y$. See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/data/monitor_data.html#ElectromagneticFieldData).
\ No newline at end of file
diff --git a/_faqs/.ipynb_checkpoints/what-is-the-formula-for-ContinuousWave-checkpoint.md b/_faqs/.ipynb_checkpoints/what-is-the-formula-for-ContinuousWave-checkpoint.md
new file mode 100644
index 0000000..4230796
--- /dev/null
+++ b/_faqs/.ipynb_checkpoints/what-is-the-formula-for-ContinuousWave-checkpoint.md
@@ -0,0 +1,33 @@
+---
+_schema: default
+title: What is the formula for ContinuousWave?
+date: 2025-09-05 17:29:25
+enabled: true
+category: Sources
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The ContinuousWave sourcetime, if the DC component is zeroed out, has the following formula:
+
+
+ $A(1+e^{-\frac{(t-t_o*t_w)}{t_w}})^{-1}e^{i\phi}e^{-i\omega_0 t}$
+
+where $A$ is the amplitude, $t_o$ is the time offset, $t_w=\frac{1}{2\pi f_{width}}$ is the width of the pulse in seconds, $\phi$ is the phase shift, and $\omega_0=2\pi f_0$.
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/source/time.html#ContinuousWave).
\ No newline at end of file
diff --git a/_faqs/.ipynb_checkpoints/what-is-the-formula-for-GaussianBeam-checkpoint.md b/_faqs/.ipynb_checkpoints/what-is-the-formula-for-GaussianBeam-checkpoint.md
new file mode 100644
index 0000000..b734646
--- /dev/null
+++ b/_faqs/.ipynb_checkpoints/what-is-the-formula-for-GaussianBeam-checkpoint.md
@@ -0,0 +1,42 @@
+---
+_schema: default
+title: What is the formula for GaussianBeam?
+date: 2025-09-05 17:29:25
+enabled: true
+category: Sources
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The GaussianBeam source has the following scalar field amplitude, in cylindrical coordinates:
+
+
+ $u(r,z)=\frac{w_0}{w(z)}e^{-\frac{r^2}{w(z)^2}}e^{i(zk_0 + \frac{r^2k_0}{2R(z)} - \psi_g)}$
+
+where:
+
+ - $z$ is the propagation direction
+ - $k_0=\frac{2\pi nf}{c}$ are the wavenumbers of the frequencies $f$ where the beam is sampled
+ - $w_0$ is the beam waist
+ - $w(z)=w_0\sqrt{1 + \frac{(z + z_0)^2}{z_r}}$, where $z_0$ is the waist distance and $z_r=\frac{1}{2}w_0^2k_0$ is the Rayleigh range
+ - $R(z)=z(1 + (\frac{z_r}{z})^2)$ is the radius of curvature of the wavefront at $z$
+ - $\psi_g=\arctan(\frac{z+z_0}{z_r})-\arctan(\frac{z_0}{z_r})$ is the Gouy phase
+
+
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/beam.html#GaussianBeamProfile).
\ No newline at end of file
diff --git a/_faqs/.ipynb_checkpoints/what-is-the-formula-for-GaussianPulse-checkpoint.md b/_faqs/.ipynb_checkpoints/what-is-the-formula-for-GaussianPulse-checkpoint.md
new file mode 100644
index 0000000..064edb6
--- /dev/null
+++ b/_faqs/.ipynb_checkpoints/what-is-the-formula-for-GaussianPulse-checkpoint.md
@@ -0,0 +1,38 @@
+---
+_schema: default
+title: What is the formula for GaussianPulse?
+date: 2025-09-05 17:29:25
+enabled: true
+category: Sources
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The GaussianPulse sourcetime, if the DC component is zeroed out, has the following formula:
+
+
+ $(i+\frac{t}{t_w^2\omega_0})Ae^{i\phi}e^{-i\omega_0 t}e^{-\frac{(t - t_o*t_w)^2}{2t_w^2}}$
+
+
+If the DC component is not zeroed out, the formula is
+
+ $iAe^{i\phi}e^{-i\omega_0 t}e^{-\frac{(t - t_o*t_w)^2}{2t_w^2}}$
+
+where $A$ is the amplitude, $t_o$ is the time offset, $t_w=\frac{1}{2\pi f_{width}}$ is the width of the pulse in seconds, $\phi$ is the phase shift, and $\omega_0=2\pi f_0$.
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/source/time.html#GaussianPulse).
\ No newline at end of file
diff --git a/_faqs/.ipynb_checkpoints/what-is-the-formula-for-PlaneWave-checkpoint.md b/_faqs/.ipynb_checkpoints/what-is-the-formula-for-PlaneWave-checkpoint.md
new file mode 100644
index 0000000..b3eab9f
--- /dev/null
+++ b/_faqs/.ipynb_checkpoints/what-is-the-formula-for-PlaneWave-checkpoint.md
@@ -0,0 +1,34 @@
+---
+_schema: default
+title: What is the formula for PlaneWave?
+date: 2025-09-05 17:29:25
+enabled: true
+category: Sources
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The PlaneWave source has the following scalar field amplitude:
+
+
+ $u(z)=e^{ik_z z}$
+
+where $z$ is the propagation direction and $k_0=\frac{2\pi nf}{c}$ are the wavenumbers of the frequencies $f$ where the beam is sampled. If the source is specified as a fixed angle source, $k_0$ is multiplied by $\cos\theta$.
+
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/beam.html#PlaneWaveBeamProfile).
\ No newline at end of file
diff --git a/_faqs/what-does-the-FluxMonitor-record.md b/_faqs/what-does-the-FluxMonitor-record.md
new file mode 100644
index 0000000..ec267e1
--- /dev/null
+++ b/_faqs/what-does-the-FluxMonitor-record.md
@@ -0,0 +1,32 @@
+---
+_schema: default
+title: What does the FluxMonitor record?
+date: 2025-09-08 17:29:25
+enabled: true
+category: Monitors
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The FluxMonitor records field data tangential $E$ and $H$ fields colocated to the cell boundaries in the monitor's 2D plane grid. It then computes and integrates the Poynting vector, returning the real part of this integral as the flux.
+
+
+ Real$(\sum\limits_{\text{cells in monitor}}\frac{1}{2}(E_1\cdot H_2^*-E_2\cdot H_1^*)dA_{\text{cell}})$
+
+where $dA$ is the area of each cell in the monitor, and the field components 1 and 2 are given depending on the monitor geometry: for $x$-normal monitors, 1 is $y$ and 2 is $z$; for $y$-normal monitors, 1 is $x$ and 2 is $z$; for $z$-normal monitors, 1 is $x$ and 2 is $y$. See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/data/monitor_data.html#ElectromagneticFieldData).
\ No newline at end of file
diff --git a/_faqs/what-is-the-formula-for-ContinuousWave.md b/_faqs/what-is-the-formula-for-ContinuousWave.md
new file mode 100644
index 0000000..4230796
--- /dev/null
+++ b/_faqs/what-is-the-formula-for-ContinuousWave.md
@@ -0,0 +1,33 @@
+---
+_schema: default
+title: What is the formula for ContinuousWave?
+date: 2025-09-05 17:29:25
+enabled: true
+category: Sources
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The ContinuousWave sourcetime, if the DC component is zeroed out, has the following formula:
+
+
+ $A(1+e^{-\frac{(t-t_o*t_w)}{t_w}})^{-1}e^{i\phi}e^{-i\omega_0 t}$
+
+where $A$ is the amplitude, $t_o$ is the time offset, $t_w=\frac{1}{2\pi f_{width}}$ is the width of the pulse in seconds, $\phi$ is the phase shift, and $\omega_0=2\pi f_0$.
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/source/time.html#ContinuousWave).
\ No newline at end of file
diff --git a/_faqs/what-is-the-formula-for-GaussianBeam.md b/_faqs/what-is-the-formula-for-GaussianBeam.md
new file mode 100644
index 0000000..b734646
--- /dev/null
+++ b/_faqs/what-is-the-formula-for-GaussianBeam.md
@@ -0,0 +1,42 @@
+---
+_schema: default
+title: What is the formula for GaussianBeam?
+date: 2025-09-05 17:29:25
+enabled: true
+category: Sources
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The GaussianBeam source has the following scalar field amplitude, in cylindrical coordinates:
+
+
+ $u(r,z)=\frac{w_0}{w(z)}e^{-\frac{r^2}{w(z)^2}}e^{i(zk_0 + \frac{r^2k_0}{2R(z)} - \psi_g)}$
+
+where:
+
+ - $z$ is the propagation direction
+ - $k_0=\frac{2\pi nf}{c}$ are the wavenumbers of the frequencies $f$ where the beam is sampled
+ - $w_0$ is the beam waist
+ - $w(z)=w_0\sqrt{1 + \frac{(z + z_0)^2}{z_r}}$, where $z_0$ is the waist distance and $z_r=\frac{1}{2}w_0^2k_0$ is the Rayleigh range
+ - $R(z)=z(1 + (\frac{z_r}{z})^2)$ is the radius of curvature of the wavefront at $z$
+ - $\psi_g=\arctan(\frac{z+z_0}{z_r})-\arctan(\frac{z_0}{z_r})$ is the Gouy phase
+
+
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/beam.html#GaussianBeamProfile).
\ No newline at end of file
diff --git a/_faqs/what-is-the-formula-for-GaussianPulse.md b/_faqs/what-is-the-formula-for-GaussianPulse.md
new file mode 100644
index 0000000..064edb6
--- /dev/null
+++ b/_faqs/what-is-the-formula-for-GaussianPulse.md
@@ -0,0 +1,38 @@
+---
+_schema: default
+title: What is the formula for GaussianPulse?
+date: 2025-09-05 17:29:25
+enabled: true
+category: Sources
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The GaussianPulse sourcetime, if the DC component is zeroed out, has the following formula:
+
+
+ $(i+\frac{t}{t_w^2\omega_0})Ae^{i\phi}e^{-i\omega_0 t}e^{-\frac{(t - t_o*t_w)^2}{2t_w^2}}$
+
+
+If the DC component is not zeroed out, the formula is
+
+ $iAe^{i\phi}e^{-i\omega_0 t}e^{-\frac{(t - t_o*t_w)^2}{2t_w^2}}$
+
+where $A$ is the amplitude, $t_o$ is the time offset, $t_w=\frac{1}{2\pi f_{width}}$ is the width of the pulse in seconds, $\phi$ is the phase shift, and $\omega_0=2\pi f_0$.
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/source/time.html#GaussianPulse).
\ No newline at end of file
diff --git a/_faqs/what-is-the-formula-for-PlaneWave.md b/_faqs/what-is-the-formula-for-PlaneWave.md
new file mode 100644
index 0000000..b3eab9f
--- /dev/null
+++ b/_faqs/what-is-the-formula-for-PlaneWave.md
@@ -0,0 +1,34 @@
+---
+_schema: default
+title: What is the formula for PlaneWave?
+date: 2025-09-05 17:29:25
+enabled: true
+category: Sources
+_inputs:
+ title:
+ type: text
+ label: QUESTION TITLE
+ enabled:
+ type: switch
+ hidden: true
+ date:
+ type: datetime
+ label: DATE
+ instance_value: NOW
+ category:
+ type: select
+ options:
+ values: data.faq_categories
+ value_key: key
+ preview:
+ text:
+ - key: category_name
+---
+The PlaneWave source has the following scalar field amplitude:
+
+
+ $u(z)=e^{ik_z z}$
+
+where $z$ is the propagation direction and $k_0=\frac{2\pi nf}{c}$ are the wavenumbers of the frequencies $f$ where the beam is sampled. If the source is specified as a fixed angle source, $k_0$ is multiplied by $\cos\theta$.
+
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/beam.html#PlaneWaveBeamProfile).
\ No newline at end of file
diff --git a/docs/.ipynb_checkpoints/monitors-checkpoint.rst b/docs/.ipynb_checkpoints/monitors-checkpoint.rst
new file mode 100644
index 0000000..6b7dd4c
--- /dev/null
+++ b/docs/.ipynb_checkpoints/monitors-checkpoint.rst
@@ -0,0 +1,28 @@
+Monitors
+========
+
+.. toctree::
+ :maxdepth: 2
+
+ faq/how-do-i-set-a-fieldmonitor.md
+ faq/how-do-i-specify-apodization.md
+ faq/how-do-i-create-field-animations.md
+ faq/to-how-do-i-change-the-phase-of-fields-obtained-from-frequency-domain-monitors.md
+ faq/how-do-i-set-a-fieldtimemonitor.md
+ faq/how-do-i-create-a-field-animation.md
+ faq/how-do-i-plot-the-time-domain-field-at-a-specific-time.md
+ faq/how-do-i-set-a-fluxmonitor.md
+ faq/how-do-i-calculate-the-poynting-vector-at-a-specific-surface.md
+ faq/how-do-i-integrate-the-poyting-vector-at-a-specific-surface.md
+ faq/how-do-i-create-a-flux-box.md
+ faq/how-do-i-set-a-fluxtimemonitor.md
+ faq/how-do-i-set-a-modemonitor.md
+ faq/how-do-i-get-the-coupling-efficiency-of-a-specific-waveguide-mode.md
+ faq/how-do-i-calculate-mode-overlap.md
+ faq/how-do-i-set-a-modesolvermonitor.md
+ faq/how-do-i-set-a-permittivitymonitor.md
+ faq/how-do-i-set-a-fieldprojectioncartesianmonitor.md
+ faq/how-do-i-set-a-fieldprojectionanglemonitor.md
+ faq/how-do-i-set-a-fieldprojectionkspacemonitor.md
+ faq/how-do-i-set-a-diffractionmonitor.md
+ faq/what-does-the-FluxMonitor-record.md
diff --git a/docs/.ipynb_checkpoints/sources-checkpoint.rst b/docs/.ipynb_checkpoints/sources-checkpoint.rst
new file mode 100644
index 0000000..e2019ad
--- /dev/null
+++ b/docs/.ipynb_checkpoints/sources-checkpoint.rst
@@ -0,0 +1,31 @@
+Sources
+=======
+
+.. toctree::
+ :maxdepth: 2
+
+ faq/what-source-bandwidth-should-i-use-for-my-simulation.md
+ faq/how-do-i-set-the-source-frequency-and-bandwidth.md
+ faq/how-can-i-plot-the-source-spectrum-and-time-dependence.md
+ faq/how-can-i-plot-the-source-spectrum.md
+ faq/how-are-results-normalized.md
+ faq/how-do-i-set-a-pointdipole-source.md
+ faq/how-do-i-calculate-the-power-radiated-by-a-pointdipole-source.md
+ faq/how-do-i-set-a-uniformcurrentsource-source.md
+ faq/how-do-i-set-a-planewave-source.md
+ faq/how-do-i-set-a-modesource.md
+ faq/how-do-i-inject-a-specific-optical-mode-in-a-waveguide.md
+ faq/how-do-i-inject-an-optical-mode-in-a-waveguide-bend.md
+ faq/how-do-i-set-a-gaussianbeam.md
+ faq/how-do-i-model-an-optical-fiber-mode-source.md
+ faq/how-do-i-model-a-converging-gaussian-beam.md
+ faq/how-do-i-model-a-diverging-gaussian-beam.md
+ faq/how-do-i-set-an-astigmaticgaussianbeam-source.md
+ faq/how-do-i-set-a-total-field-scattered-field-tfsf-source.md
+ faq/how-do-i-set-a-custom-field-source.md
+ faq/how-do-i-set-a-custom-current-source.md
+ faq/how-do-i-inject-an-optical-mode-in-a-tilted-waveguide.md
+ faq/what-is-the-formula-for-ContinuousWave.md
+ faq/what-is-the-formula-for-GaussianBeam.md
+ faq/what-is-the-formula-for-GaussianPulse.md
+ faq/what-is-the-formula-for-PlaneWave.md
diff --git a/docs/faq/.ipynb_checkpoints/what-does-the-FluxMonitor-record-checkpoint.md b/docs/faq/.ipynb_checkpoints/what-does-the-FluxMonitor-record-checkpoint.md
new file mode 100644
index 0000000..4856fd4
--- /dev/null
+++ b/docs/faq/.ipynb_checkpoints/what-does-the-FluxMonitor-record-checkpoint.md
@@ -0,0 +1,13 @@
+# What does the FluxMonitor record?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-08 17:29:25 | Monitors |
+
+
+The FluxMonitor records field data tangential $E$ and $H$ fields colocated to the cell boundaries in the monitor's 2D plane grid. It then computes and integrates the Poynting vector, returning the real part of this integral as the flux.
+
+
+ Real$(\sum\limits_{\text{cells in monitor}}\frac{1}{2}(E_1\cdot H_2^*-E_2\cdot H_1^*)dA_{\text{cell}})$
+
+where $dA$ is the area of each cell in the monitor, and the field components 1 and 2 are given depending on the monitor geometry: for $x$-normal monitors, 1 is $y$ and 2 is $z$; for $y$-normal monitors, 1 is $x$ and 2 is $z$; for $z$-normal monitors, 1 is $x$ and 2 is $y$. See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/data/monitor_data.html#ElectromagneticFieldData).
\ No newline at end of file
diff --git a/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-ContinuousWave-checkpoint.md b/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-ContinuousWave-checkpoint.md
new file mode 100644
index 0000000..b6f02c9
--- /dev/null
+++ b/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-ContinuousWave-checkpoint.md
@@ -0,0 +1,14 @@
+# What is the formula for ContinuousWave?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-05 17:29:25 | Sources |
+
+
+The ContinuousWave sourcetime, if the DC component is zeroed out, has the following formula:
+
+
+ $A(1+e^{-\frac{(t-t_o*t_w)}{t_w}})^{-1}e^{i\phi}e^{-i\omega_0 t}$
+
+where $A$ is the amplitude, $t_o$ is the time offset, $t_w=\frac{1}{2\pi f_{width}}$ is the width of the pulse in seconds, $\phi$ is the phase shift, and $\omega_0=2\pi f_0$.
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/source/time.html#ContinuousWave).
\ No newline at end of file
diff --git a/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-GaussianBeam-checkpoint.md b/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-GaussianBeam-checkpoint.md
new file mode 100644
index 0000000..3eb94d9
--- /dev/null
+++ b/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-GaussianBeam-checkpoint.md
@@ -0,0 +1,23 @@
+# What is the formula for GaussianBeam?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-05 17:29:25 | Sources |
+
+
+The GaussianBeam source has the following scalar field amplitude, in cylindrical coordinates:
+
+
+ $u(r,z)=\frac{w_0}{w(z)}e^{-\frac{r^2}{w(z)^2}}e^{i(zk_0 + \frac{r^2k_0}{2R(z)} - \psi_g)}$
+
+where:
+
+ - $z$ is the propagation direction
+ - $k_0=\frac{2\pi nf}{c}$ are the wavenumbers of the frequencies $f$ where the beam is sampled
+ - $w_0$ is the beam waist
+ - $w(z)=w_0\sqrt{1 + \frac{(z + z_0)^2}{z_r}}$, where $z_0$ is the waist distance and $z_r=\frac{1}{2}w_0^2k_0$ is the Rayleigh range
+ - $R(z)=z(1 + (\frac{z_r}{z})^2)$ is the radius of curvature of the wavefront at $z$
+ - $\psi_g=\arctan(\frac{z+z_0}{z_r})-\arctan(\frac{z_0}{z_r})$ is the Gouy phase
+
+
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/beam.html#GaussianBeamProfile).
\ No newline at end of file
diff --git a/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-GaussianPulse-checkpoint.md b/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-GaussianPulse-checkpoint.md
new file mode 100644
index 0000000..b4a9b0e
--- /dev/null
+++ b/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-GaussianPulse-checkpoint.md
@@ -0,0 +1,19 @@
+# What is the formula for GaussianPulse?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-05 17:29:25 | Sources |
+
+
+The GaussianPulse sourcetime, if the DC component is zeroed out, has the following formula:
+
+
+ $(i+\frac{t}{t_w^2\omega_0})Ae^{i\phi}e^{-i\omega_0 t}e^{-\frac{(t - t_o*t_w)^2}{2t_w^2}}$
+
+
+If the DC component is not zeroed out, the formula is
+
+ $iAe^{i\phi}e^{-i\omega_0 t}e^{-\frac{(t - t_o*t_w)^2}{2t_w^2}}$
+
+where $A$ is the amplitude, $t_o$ is the time offset, $t_w=\frac{1}{2\pi f_{width}}$ is the width of the pulse in seconds, $\phi$ is the phase shift, and $\omega_0=2\pi f_0$.
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/source/time.html#GaussianPulse).
\ No newline at end of file
diff --git a/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-PlaneWave-checkpoint.md b/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-PlaneWave-checkpoint.md
new file mode 100644
index 0000000..9b68a73
--- /dev/null
+++ b/docs/faq/.ipynb_checkpoints/what-is-the-formula-for-PlaneWave-checkpoint.md
@@ -0,0 +1,15 @@
+# What is the formula for PlaneWave?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-05 17:29:25 | Sources |
+
+
+The PlaneWave source has the following scalar field amplitude:
+
+
+ $u(z)=e^{ik_z z}$
+
+where $z$ is the propagation direction and $k_0=\frac{2\pi nf}{c}$ are the wavenumbers of the frequencies $f$ where the beam is sampled. If the source is specified as a fixed angle source, $k_0$ is multiplied by $\cos\theta$.
+
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/beam.html#PlaneWaveBeamProfile).
\ No newline at end of file
diff --git a/docs/faq/what-does-the-FluxMonitor-record.md b/docs/faq/what-does-the-FluxMonitor-record.md
new file mode 100644
index 0000000..4856fd4
--- /dev/null
+++ b/docs/faq/what-does-the-FluxMonitor-record.md
@@ -0,0 +1,13 @@
+# What does the FluxMonitor record?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-08 17:29:25 | Monitors |
+
+
+The FluxMonitor records field data tangential $E$ and $H$ fields colocated to the cell boundaries in the monitor's 2D plane grid. It then computes and integrates the Poynting vector, returning the real part of this integral as the flux.
+
+
+ Real$(\sum\limits_{\text{cells in monitor}}\frac{1}{2}(E_1\cdot H_2^*-E_2\cdot H_1^*)dA_{\text{cell}})$
+
+where $dA$ is the area of each cell in the monitor, and the field components 1 and 2 are given depending on the monitor geometry: for $x$-normal monitors, 1 is $y$ and 2 is $z$; for $y$-normal monitors, 1 is $x$ and 2 is $z$; for $z$-normal monitors, 1 is $x$ and 2 is $y$. See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/data/monitor_data.html#ElectromagneticFieldData).
\ No newline at end of file
diff --git a/docs/faq/what-is-the-formula-for-ContinuousWave.md b/docs/faq/what-is-the-formula-for-ContinuousWave.md
new file mode 100644
index 0000000..b6f02c9
--- /dev/null
+++ b/docs/faq/what-is-the-formula-for-ContinuousWave.md
@@ -0,0 +1,14 @@
+# What is the formula for ContinuousWave?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-05 17:29:25 | Sources |
+
+
+The ContinuousWave sourcetime, if the DC component is zeroed out, has the following formula:
+
+
+ $A(1+e^{-\frac{(t-t_o*t_w)}{t_w}})^{-1}e^{i\phi}e^{-i\omega_0 t}$
+
+where $A$ is the amplitude, $t_o$ is the time offset, $t_w=\frac{1}{2\pi f_{width}}$ is the width of the pulse in seconds, $\phi$ is the phase shift, and $\omega_0=2\pi f_0$.
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/source/time.html#ContinuousWave).
\ No newline at end of file
diff --git a/docs/faq/what-is-the-formula-for-GaussianBeam.md b/docs/faq/what-is-the-formula-for-GaussianBeam.md
new file mode 100644
index 0000000..3eb94d9
--- /dev/null
+++ b/docs/faq/what-is-the-formula-for-GaussianBeam.md
@@ -0,0 +1,23 @@
+# What is the formula for GaussianBeam?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-05 17:29:25 | Sources |
+
+
+The GaussianBeam source has the following scalar field amplitude, in cylindrical coordinates:
+
+
+ $u(r,z)=\frac{w_0}{w(z)}e^{-\frac{r^2}{w(z)^2}}e^{i(zk_0 + \frac{r^2k_0}{2R(z)} - \psi_g)}$
+
+where:
+
+ - $z$ is the propagation direction
+ - $k_0=\frac{2\pi nf}{c}$ are the wavenumbers of the frequencies $f$ where the beam is sampled
+ - $w_0$ is the beam waist
+ - $w(z)=w_0\sqrt{1 + \frac{(z + z_0)^2}{z_r}}$, where $z_0$ is the waist distance and $z_r=\frac{1}{2}w_0^2k_0$ is the Rayleigh range
+ - $R(z)=z(1 + (\frac{z_r}{z})^2)$ is the radius of curvature of the wavefront at $z$
+ - $\psi_g=\arctan(\frac{z+z_0}{z_r})-\arctan(\frac{z_0}{z_r})$ is the Gouy phase
+
+
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/beam.html#GaussianBeamProfile).
\ No newline at end of file
diff --git a/docs/faq/what-is-the-formula-for-GaussianPulse.md b/docs/faq/what-is-the-formula-for-GaussianPulse.md
new file mode 100644
index 0000000..b4a9b0e
--- /dev/null
+++ b/docs/faq/what-is-the-formula-for-GaussianPulse.md
@@ -0,0 +1,19 @@
+# What is the formula for GaussianPulse?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-05 17:29:25 | Sources |
+
+
+The GaussianPulse sourcetime, if the DC component is zeroed out, has the following formula:
+
+
+ $(i+\frac{t}{t_w^2\omega_0})Ae^{i\phi}e^{-i\omega_0 t}e^{-\frac{(t - t_o*t_w)^2}{2t_w^2}}$
+
+
+If the DC component is not zeroed out, the formula is
+
+ $iAe^{i\phi}e^{-i\omega_0 t}e^{-\frac{(t - t_o*t_w)^2}{2t_w^2}}$
+
+where $A$ is the amplitude, $t_o$ is the time offset, $t_w=\frac{1}{2\pi f_{width}}$ is the width of the pulse in seconds, $\phi$ is the phase shift, and $\omega_0=2\pi f_0$.
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/source/time.html#GaussianPulse).
\ No newline at end of file
diff --git a/docs/faq/what-is-the-formula-for-PlaneWave.md b/docs/faq/what-is-the-formula-for-PlaneWave.md
new file mode 100644
index 0000000..9b68a73
--- /dev/null
+++ b/docs/faq/what-is-the-formula-for-PlaneWave.md
@@ -0,0 +1,15 @@
+# What is the formula for PlaneWave?
+
+| Date | Category |
+|------------|-------------|
+| 2025-09-05 17:29:25 | Sources |
+
+
+The PlaneWave source has the following scalar field amplitude:
+
+
+ $u(z)=e^{ik_z z}$
+
+where $z$ is the propagation direction and $k_0=\frac{2\pi nf}{c}$ are the wavenumbers of the frequencies $f$ where the beam is sampled. If the source is specified as a fixed angle source, $k_0$ is multiplied by $\cos\theta$.
+
+See the code [here](https://docs.flexcompute.com/projects/tidy3d/en/latest/_modules/tidy3d/components/beam.html#PlaneWaveBeamProfile).
\ No newline at end of file
diff --git a/docs/monitors.rst b/docs/monitors.rst
index f156f5c..6b7dd4c 100644
--- a/docs/monitors.rst
+++ b/docs/monitors.rst
@@ -25,3 +25,4 @@ Monitors
faq/how-do-i-set-a-fieldprojectionanglemonitor.md
faq/how-do-i-set-a-fieldprojectionkspacemonitor.md
faq/how-do-i-set-a-diffractionmonitor.md
+ faq/what-does-the-FluxMonitor-record.md
diff --git a/docs/sources.rst b/docs/sources.rst
index 48d99ec..e2019ad 100644
--- a/docs/sources.rst
+++ b/docs/sources.rst
@@ -25,3 +25,7 @@ Sources
faq/how-do-i-set-a-custom-field-source.md
faq/how-do-i-set-a-custom-current-source.md
faq/how-do-i-inject-an-optical-mode-in-a-tilted-waveguide.md
+ faq/what-is-the-formula-for-ContinuousWave.md
+ faq/what-is-the-formula-for-GaussianBeam.md
+ faq/what-is-the-formula-for-GaussianPulse.md
+ faq/what-is-the-formula-for-PlaneWave.md
diff --git a/faq_categories.json b/faq_categories.json
index bbd3f34..9243ab8 100644
--- a/faq_categories.json
+++ b/faq_categories.json
@@ -142,7 +142,11 @@
"_faqs/how-do-i-set-a-total-field-scattered-field-tfsf-source.md",
"_faqs/how-do-i-set-a-custom-field-source.md",
"_faqs/how-do-i-set-a-custom-current-source.md",
- "_faqs/how-do-i-inject-an-optical-mode-in-a-tilted-waveguide.md"
+ "_faqs/how-do-i-inject-an-optical-mode-in-a-tilted-waveguide.md",
+ "_faqs/what-is-the-formula-for-ContinuousWave.md",
+ "_faqs/what-is-the-formula-for-GaussianBeam.md",
+ "_faqs/what-is-the-formula-for-GaussianPulse.md",
+ "_faqs/what-is-the-formula-for-PlaneWave.md"
]
},
{
@@ -233,7 +237,8 @@
"_faqs/how-do-i-set-a-fieldprojectioncartesianmonitor.md",
"_faqs/how-do-i-set-a-fieldprojectionanglemonitor.md",
"_faqs/how-do-i-set-a-fieldprojectionkspacemonitor.md",
- "_faqs/how-do-i-set-a-diffractionmonitor.md"
+ "_faqs/how-do-i-set-a-diffractionmonitor.md",
+ "_faqs/what-does-the-FluxMonitor-record.md"
]
},
{