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

decimation option for adjoint solver #1722

Merged
merged 5 commits into from
Aug 11, 2021

Conversation

oskooi
Copy link
Collaborator

@oskooi oskooi commented Aug 7, 2021

Following #1684 and #1720, this PR adds a new decimation_factor parameter (default value of 1, i.e. no decimation) to the OptimizationProblem and objective functions EigenmodeCoefficient, FourierFields, Near2FarFields of the adjoint solver to enable decimation of the DFT time-series updates. Since the entire design region is a DFT monitor for each of the Ex, Ey, Ez fields in 3d used in both the forward and adjoint runs, decimation of the time series can significantly reduce the cost of the DFT fields updates during adjoint optimization.

@codecov-commenter
Copy link

codecov-commenter commented Aug 7, 2021

Codecov Report

Merging #1722 (a47fc21) into master (74c9752) will increase coverage by 0.00%.
The diff coverage is 83.33%.

@@           Coverage Diff           @@
##           master    #1722   +/-   ##
=======================================
  Coverage   73.38%   73.38%           
=======================================
  Files          13       13           
  Lines        4535     4539    +4     
=======================================
+ Hits         3328     3331    +3     
- Misses       1207     1208    +1     
Impacted Files Coverage Δ
python/adjoint/objective.py 75.15% <80.00%> (-0.16%) ⬇️
python/adjoint/optimization_problem.py 69.69% <100.00%> (+0.11%) ⬆️

@stevengj stevengj merged commit 74ddacb into NanoComp:master Aug 11, 2021
@oskooi oskooi deleted the decimation_adjoint branch August 11, 2021 03:06
bencbartlett pushed a commit to bencbartlett/meep that referenced this pull request Sep 9, 2021
* decimation option for adjoint solver

* fixes

* more fixes

* decimation option for EigenmodeCoefficient, FourierFields, Near2FarFields

* add decimation to unit tests in test_adjoint_solver.py
mawc2019 pushed a commit to mawc2019/meep that referenced this pull request Nov 3, 2021
* decimation option for adjoint solver

* fixes

* more fixes

* decimation option for EigenmodeCoefficient, FourierFields, Near2FarFields

* add decimation to unit tests in test_adjoint_solver.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants