Skip to content

Conversation

@ianmatthewhammond
Copy link
Contributor

This PR adds two changes in response to these changes to the subpixel algorithm.

In addition to updating the upper and lower bounds of materials in the current pixel, the notebook now uses R_smoothing = 0.55 * pixel_size. Before, it was using something much smaller due to the distance between quadrature points and the rectilinear to FE grid interpolation. Empirically, 0.55 * pixel_size works better.

After the subpixel optimization, a conformal mesh is built in post-processing from the level set and an objective value of 4*284=1136 is achieved, which beats the benchmark with a qualitatively similar shape. This is shown at the bottom of the notebook.

@ianmatthewhammond
Copy link
Contributor Author

Just an update on isolating the cause of improvement. Note that the objective value seems very sensitive (as we know already because of the nature of the problem)

Algorithm Smoothing Radius Picture Objective
Old Small Screenshot 2025-01-27 at 1 34 20 PM 701
Old Nominal download 774
New Small download 747
New Nominal download 1136

@stevengj
Copy link
Contributor

stevengj commented Jan 27, 2025

Any hint on the source of the left–right asymmetry? Is the mesh mirror-symmetric?

Of course, you could force mirror symmetry just by simulating only half of the structure, and then imposing Neumann boundary conditions (for the Hz field) along the center edge. This might be worth it just to save us the trouble of explaining to people why non-convex problems can exhibit spontaneous symmetry breaking.

@ianmatthewhammond
Copy link
Contributor Author

ianmatthewhammond commented Jan 28, 2025

Any hint on the source of the left–right asymmetry? Is the mesh mirror-symmetric?

The mesh is not explicitly mirror symmetric. I do want to explore what encourages the asymmetry in some of our newer algorithms here and elsewhere. The asymmetry in the table does suggest it might help the design...but unclear.

I can do as you suggested with the mirror plane, or define my DOF only on the right half of my rectilinear grid and compose the symmetry with the bilinear interpolation onto the FEGrid.

@ianmatthewhammond
Copy link
Contributor Author

ianmatthewhammond commented Jan 28, 2025

Here is the new algorithm with the nominal smoothing radius and mirror symmetry:
download

Objective: 744 @stevengj

@stevengj
Copy link
Contributor

Significantly worse? Or are all of these about the same once you make a conforming mesh?

@ianmatthewhammond
Copy link
Contributor Author

ianmatthewhammond commented Jan 28, 2025

All objective values I've provided are given the conforming mesh. So it's worse. But I think the problem is incredibly sensitive.

@stevengj
Copy link
Contributor

Probably one of the cases just got lucky upon conversion to the conforming mesh.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants