Skip to content

Commit 6afd711

Browse files
committed
feat(adjoint): sidewall angle gradients
1 parent 4af3af1 commit 6afd711

15 files changed

+1106
-303
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2929
- Added autograd support for dispersive material models: `Sellmeier`, `Drude`, `Lorentz`, `Debye` and their custom medium variants.
3030
- Added check and exception for NaN data in the adjoint pipeline to raise issue to user before adjoint source creation failure.
3131
- Added autograd support for `TerminalComponentModeler` and `ModalComponentModeler`.
32+
- Added autograd support for sidewall angles in `td.Cylinder` and `td.PolySlab`.
3233

3334
### Changed
3435
- Validate mode solver object for large number of grid points on the modal plane.

schemas/EMESimulation.json

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1684,8 +1684,15 @@
16841684
"type": "string"
16851685
},
16861686
"sidewall_angle": {
1687-
"default": 0.0,
1688-
"type": "number"
1687+
"anyOf": [
1688+
{
1689+
"type": "autograd.tracer.Box"
1690+
},
1691+
{
1692+
"type": "number"
1693+
}
1694+
],
1695+
"default": 0.0
16891696
},
16901697
"slab_bounds": {
16911698
"items": [
@@ -3542,8 +3549,15 @@
35423549
"type": "string"
35433550
},
35443551
"sidewall_angle": {
3545-
"default": 0.0,
3546-
"type": "number"
3552+
"anyOf": [
3553+
{
3554+
"type": "autograd.tracer.Box"
3555+
},
3556+
{
3557+
"type": "number"
3558+
}
3559+
],
3560+
"default": 0.0
35473561
},
35483562
"type": {
35493563
"default": "Cylinder",
@@ -8886,8 +8900,15 @@
88868900
"type": "string"
88878901
},
88888902
"sidewall_angle": {
8889-
"default": 0.0,
8890-
"type": "number"
8903+
"anyOf": [
8904+
{
8905+
"type": "autograd.tracer.Box"
8906+
},
8907+
{
8908+
"type": "number"
8909+
}
8910+
],
8911+
"default": 0.0
88918912
},
88928913
"slab_bounds": {
88938914
"items": [

schemas/HeatChargeSimulation.json

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1015,8 +1015,15 @@
10151015
"type": "string"
10161016
},
10171017
"sidewall_angle": {
1018-
"default": 0.0,
1019-
"type": "number"
1018+
"anyOf": [
1019+
{
1020+
"type": "autograd.tracer.Box"
1021+
},
1022+
{
1023+
"type": "number"
1024+
}
1025+
],
1026+
"default": 0.0
10201027
},
10211028
"slab_bounds": {
10221029
"items": [
@@ -2818,8 +2825,15 @@
28182825
"type": "string"
28192826
},
28202827
"sidewall_angle": {
2821-
"default": 0.0,
2822-
"type": "number"
2828+
"anyOf": [
2829+
{
2830+
"type": "autograd.tracer.Box"
2831+
},
2832+
{
2833+
"type": "number"
2834+
}
2835+
],
2836+
"default": 0.0
28232837
},
28242838
"type": {
28252839
"default": "Cylinder",
@@ -6149,8 +6163,15 @@
61496163
"type": "string"
61506164
},
61516165
"sidewall_angle": {
6152-
"default": 0.0,
6153-
"type": "number"
6166+
"anyOf": [
6167+
{
6168+
"type": "autograd.tracer.Box"
6169+
},
6170+
{
6171+
"type": "number"
6172+
}
6173+
],
6174+
"default": 0.0
61546175
},
61556176
"slab_bounds": {
61566177
"items": [

schemas/HeatSimulation.json

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1015,8 +1015,15 @@
10151015
"type": "string"
10161016
},
10171017
"sidewall_angle": {
1018-
"default": 0.0,
1019-
"type": "number"
1018+
"anyOf": [
1019+
{
1020+
"type": "autograd.tracer.Box"
1021+
},
1022+
{
1023+
"type": "number"
1024+
}
1025+
],
1026+
"default": 0.0
10201027
},
10211028
"slab_bounds": {
10221029
"items": [
@@ -2818,8 +2825,15 @@
28182825
"type": "string"
28192826
},
28202827
"sidewall_angle": {
2821-
"default": 0.0,
2822-
"type": "number"
2828+
"anyOf": [
2829+
{
2830+
"type": "autograd.tracer.Box"
2831+
},
2832+
{
2833+
"type": "number"
2834+
}
2835+
],
2836+
"default": 0.0
28232837
},
28242838
"type": {
28252839
"default": "Cylinder",
@@ -6149,8 +6163,15 @@
61496163
"type": "string"
61506164
},
61516165
"sidewall_angle": {
6152-
"default": 0.0,
6153-
"type": "number"
6166+
"anyOf": [
6167+
{
6168+
"type": "autograd.tracer.Box"
6169+
},
6170+
{
6171+
"type": "number"
6172+
}
6173+
],
6174+
"default": 0.0
61546175
},
61556176
"slab_bounds": {
61566177
"items": [

schemas/ModeSimulation.json

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1684,8 +1684,15 @@
16841684
"type": "string"
16851685
},
16861686
"sidewall_angle": {
1687-
"default": 0.0,
1688-
"type": "number"
1687+
"anyOf": [
1688+
{
1689+
"type": "autograd.tracer.Box"
1690+
},
1691+
{
1692+
"type": "number"
1693+
}
1694+
],
1695+
"default": 0.0
16891696
},
16901697
"slab_bounds": {
16911698
"items": [
@@ -3635,8 +3642,15 @@
36353642
"type": "string"
36363643
},
36373644
"sidewall_angle": {
3638-
"default": 0.0,
3639-
"type": "number"
3645+
"anyOf": [
3646+
{
3647+
"type": "autograd.tracer.Box"
3648+
},
3649+
{
3650+
"type": "number"
3651+
}
3652+
],
3653+
"default": 0.0
36403654
},
36413655
"type": {
36423656
"default": "Cylinder",
@@ -8552,8 +8566,15 @@
85528566
"type": "string"
85538567
},
85548568
"sidewall_angle": {
8555-
"default": 0.0,
8556-
"type": "number"
8569+
"anyOf": [
8570+
{
8571+
"type": "autograd.tracer.Box"
8572+
},
8573+
{
8574+
"type": "number"
8575+
}
8576+
],
8577+
"default": 0.0
85578578
},
85588579
"slab_bounds": {
85598580
"items": [

schemas/Simulation.json

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2061,8 +2061,15 @@
20612061
"type": "string"
20622062
},
20632063
"sidewall_angle": {
2064-
"default": 0.0,
2065-
"type": "number"
2064+
"anyOf": [
2065+
{
2066+
"type": "autograd.tracer.Box"
2067+
},
2068+
{
2069+
"type": "number"
2070+
}
2071+
],
2072+
"default": 0.0
20662073
},
20672074
"slab_bounds": {
20682075
"items": [
@@ -4318,8 +4325,15 @@
43184325
"type": "string"
43194326
},
43204327
"sidewall_angle": {
4321-
"default": 0.0,
4322-
"type": "number"
4328+
"anyOf": [
4329+
{
4330+
"type": "autograd.tracer.Box"
4331+
},
4332+
{
4333+
"type": "number"
4334+
}
4335+
],
4336+
"default": 0.0
43234337
},
43244338
"type": {
43254339
"default": "Cylinder",
@@ -12367,8 +12381,15 @@
1236712381
"type": "string"
1236812382
},
1236912383
"sidewall_angle": {
12370-
"default": 0.0,
12371-
"type": "number"
12384+
"anyOf": [
12385+
{
12386+
"type": "autograd.tracer.Box"
12387+
},
12388+
{
12389+
"type": "number"
12390+
}
12391+
],
12392+
"default": 0.0
1237212393
},
1237312394
"slab_bounds": {
1237412395
"items": [

schemas/TerminalComponentModeler.json

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2165,8 +2165,15 @@
21652165
"type": "string"
21662166
},
21672167
"sidewall_angle": {
2168-
"default": 0.0,
2169-
"type": "number"
2168+
"anyOf": [
2169+
{
2170+
"type": "autograd.tracer.Box"
2171+
},
2172+
{
2173+
"type": "number"
2174+
}
2175+
],
2176+
"default": 0.0
21702177
},
21712178
"slab_bounds": {
21722179
"items": [
@@ -4626,8 +4633,15 @@
46264633
"type": "string"
46274634
},
46284635
"sidewall_angle": {
4629-
"default": 0.0,
4630-
"type": "number"
4636+
"anyOf": [
4637+
{
4638+
"type": "autograd.tracer.Box"
4639+
},
4640+
{
4641+
"type": "number"
4642+
}
4643+
],
4644+
"default": 0.0
46314645
},
46324646
"type": {
46334647
"default": "Cylinder",
@@ -12850,8 +12864,15 @@
1285012864
"type": "string"
1285112865
},
1285212866
"sidewall_angle": {
12853-
"default": 0.0,
12854-
"type": "number"
12867+
"anyOf": [
12868+
{
12869+
"type": "autograd.tracer.Box"
12870+
},
12871+
{
12872+
"type": "number"
12873+
}
12874+
],
12875+
"default": 0.0
1285512876
},
1285612877
"slab_bounds": {
1285712878
"items": [

0 commit comments

Comments
 (0)