-
Notifications
You must be signed in to change notification settings - Fork 23
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
Add sidewall angle parameter #53
Conversation
…e an affine transformation after all
…-normal sidewall angle. First attempt.
…sm_vector_* calculations because the vectors that are being transformed don't have a particular location. We'll need to try something else.
…ll angles to separate GNU plot files
…_coordinate_c2p(), and prism_vector_c2p().
…e of a prism object; the list of derived values may be shorted later. * Addition of a comment to geom.scm giving a brief explanation of what sidewall_angle does.
…om_p. * Added derived quantities vertices_top and vertices_top_p to prism subclass (calculations to derive these quantities have not yet been added). * Misc. changes to update functions to work better with top polygon/bottom polygon framework.
* Update to normal to prism for compatibility with top polygon framework.
…work. To do so, I took the RMS area of the bottom polygon area and top polygon area then multiplied by the height of the prism.
…ound and then vertices are calculated from the intersection of those edges.
With the most recent commit we have all the critical features for this merge in place:
Running |
This actually seems to be a bug I had run into before. Each time |
…ted_prism to make a prism with a nonzero sidewall angle and make_prism for a prism with a normal sidewall
Whoops, looks like this is breaking the Meep build because the typemap utils explicitly reference the We should undo the rename of |
|
@danielwboyce, Meep now compiles again, but the |
I think this is breaking the MPB CI builds because variable declaration inside for loops is not C89 compatible. See https://travis-ci.org/NanoComp/mpb/jobs/649653306#L1075-L1087 (build failure in NanoComp/mpb#112). I can make a PR to fix this if there's agreement with the above. |
@thchr, a PR to fix the declarations to be C90-compliant would be welcome. (Would also be good to exercise this in the tests.) |
https://build.opensuse.org/request/show/827344 by user badshah400 + dimstar_suse - Update Source URL, moved to https://github.com/NanoComp/libctl. - update to 4.5.0: * New `make_slanted_prism` functions to make a prism with a given sidewall angle (gh#NanoComp/libctl#53). * Defined `LIBCTL_MAJOR_VERSION` etc. in `ctlgeom.h` header file when using stand-alone libctlgeom. * Bugfix in point-in-prism test (gh#NanoComp/libctl#49). * `geom_object_volume` function to get the volume of a 3d object (accelerates `box_overlap_with_object` for objects completely within a box) (gh#NanoComp/libctl#45). * `ctl_printf_callback` so that callers can capture stdout (gh#NanoComp/libctl#39).
Fixes NanoComp/meep#1067.
Adds sidewall angle parameter to
prism
object, which allows user to define a draft angle at which their prism object is tapered during extrusion.Adds additional properties to
prism
object to store vertices of the top polygon.Helper functions in
geom.c
likegeom_object_volume
have been updated to work with new structure of theprism
object.