Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
1702815
added sidewall_angle property in scheme
danielwboyce Jan 7, 2020
ff0dfa8
changes to add sidewall_angle
danielwboyce Jan 7, 2020
d6fb958
started trying to add transformation matrix but realized it may not b…
danielwboyce Jan 7, 2020
d4e35b2
Coordinate transform functions have been updated to account for a non…
danielwboyce Jan 9, 2020
2ff3d4a
The prism_projective_transformation_for_* functions won't work on pri…
danielwboyce Jan 9, 2020
a18601f
Added another unit test to save prisms with and without normal sidewa…
danielwboyce Jan 9, 2020
ff33e65
Fixed a compilation error
danielwboyce Jan 10, 2020
b7ce926
Fixed a compilation error
danielwboyce Jan 10, 2020
5c37bd0
Reverted changes to prism_coordinate_p2c(), prism_vector_p2c(), prism…
danielwboyce Jan 12, 2020
6564979
* Addition of some derived values. This will increase the memory usag…
danielwboyce Jan 12, 2020
030a133
Calculated difference vectors in init_prism()
danielwboyce Jan 12, 2020
55e3871
Correction for case where sidewall_angle==0 (would have blown up tang…
danielwboyce Jan 12, 2020
c9c7421
Correction to point_in_or_on_prism().
danielwboyce Jan 12, 2020
078b476
Update to prism2gnuplot() so that it will work with any sidewall angle
danielwboyce Jan 13, 2020
fcbfade
Updates for prism2gnuplot()
danielwboyce Jan 13, 2020
e83f334
Update to cx and cy calculations for accuracy
danielwboyce Jan 13, 2020
eb66a05
Update to prism2gnuplot()
danielwboyce Jan 13, 2020
f17fc40
* Changed vertices to vertices_bottom and vertices_p to vertices_bott…
danielwboyce Jan 14, 2020
be2b578
Changes to some comments for unity.
danielwboyce Jan 14, 2020
093ec84
Fixes for correct compilation.
danielwboyce Jan 14, 2020
ca17957
* Calculations for vertices_top and vertices_top_p.
danielwboyce Jan 14, 2020
24124dc
Update to get_prism_bounding_box for compatibility with top polygon f…
danielwboyce Jan 14, 2020
72462b4
Update to intersect_line_with_prism for compatibility with top polygo…
danielwboyce Jan 15, 2020
d37689f
Update to geom_object_volume for compatibility with top polygon frame…
danielwboyce Jan 15, 2020
d2e2868
oops
danielwboyce Jan 15, 2020
0dc29b0
Update to min_distance_to_prism_roof_or_ceiling for compatibility in …
danielwboyce Jan 15, 2020
8d5eb91
Rough draft of algorithm where offset of the top polygon's edges is f…
danielwboyce Jan 21, 2020
f43f128
Updates to the comments
danielwboyce Jan 21, 2020
4e830ed
Fixed typo (was using abs instead of fabs)
danielwboyce Jan 21, 2020
0daf5b6
Update to run unit test 5 in test-prism.c with concave octagonal c shape
danielwboyce Jan 21, 2020
17f97a3
Update to calculate prism volume with the triangular wedges trick.
danielwboyce Jan 22, 2020
2256149
Update for memory fix and to print volumes
danielwboyce Jan 23, 2020
31b0ec8
Changed proportions of test geometry.
danielwboyce Jan 26, 2020
dc0cc1d
Merge branch 'master' of https://github.com/NanoComp/libctl into meep…
danielwboyce Jan 26, 2020
2164d7f
Removes some unused properties of prism that were created during side…
danielwboyce Jan 27, 2020
60da7fd
Split fifth unit test into two separate ones.
danielwboyce Jan 27, 2020
d29e887
* Began restructuring of unit testing of helper functions
danielwboyce Jan 27, 2020
679af4b
Reorganized results string
danielwboyce Jan 27, 2020
9e6258e
Added some test points, but should probably rethink them.
danielwboyce Jan 28, 2020
61ee5ec
* Change to intersect_line_with_segment so that fabs(detM)<=0 instead…
danielwboyce Jan 29, 2020
22b2703
Finalized point_in_prism test points for normal sidewall; all pass.
danielwboyce Jan 30, 2020
53585b0
Finalized point_in_prism test points for tapered sidewall; all pass.
danielwboyce Jan 30, 2020
a48dd78
Slight change to intersect_line_with_segment so that q0 that is withi…
danielwboyce Jan 31, 2020
8642953
Shift of relative_error definition location
danielwboyce Jan 31, 2020
0e60ea2
Change to how failing test results are presented
danielwboyce Feb 2, 2020
23ec85f
Tuning min_distance_to_prism_roof_or_ceiling for new sidewall scheme
danielwboyce Feb 4, 2020
311318b
Addition of test points for testing normal_to_prism
danielwboyce Feb 4, 2020
6ced328
Removed some extraneous comments
danielwboyce Feb 4, 2020
b690303
Draft version of intersect_line_with_prism where the vector equation …
danielwboyce Feb 5, 2020
fafc493
Typo in RHS definition in intersect_line_with_prism (had dp instead o…
danielwboyce Feb 5, 2020
de626f2
Update to intersect_line_with_prism so that num_intersections is pass…
danielwboyce Feb 6, 2020
4dba674
Commit backing up extraneous unit test.
danielwboyce Feb 6, 2020
fa248c0
Removing extra unit test.
danielwboyce Feb 6, 2020
9a49056
One test so far in test-prism for intersect_line_segment_with_prism
danielwboyce Feb 6, 2020
394b9b9
typo
danielwboyce Feb 6, 2020
6050f55
addition of more tests
danielwboyce Feb 7, 2020
b645db6
Additional of final test points, which now all pass.
danielwboyce Feb 9, 2020
3d5d42e
Change to init_prism so that it is no longer O(n^2)
danielwboyce Feb 10, 2020
74664f6
Add Daniel as a contributor
danielwboyce Feb 10, 2020
ec44c2c
Remove isnan check
danielwboyce Feb 10, 2020
629f02d
Change offset definition to be simpler
danielwboyce Feb 10, 2020
30ed679
Addition of make_slanted_prism_with_center to maintain ABI compatibility
danielwboyce Feb 10, 2020
2df3673
Fixed some typos
danielwboyce Feb 10, 2020
af95319
Didn't maintain ABI compatibility, should be now. User uses make_slan…
danielwboyce Feb 11, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ libctl was written by Steven G. Johnson (stevenj@alum.mit.edu) with contribution
M.T. Homer Reid
Christopher Hogan
Ardavan Oskooi
Daniel W. Boyce

The multidimensional integration routines in src/integrator.c were adapted
from the HIntlib Library by Rudolf Schuerer and from the GNU Scientific
Expand Down
9 changes: 9 additions & 0 deletions utils/ctlgeom.h
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,15 @@ GEOMETRIC_OBJECT make_prism_with_center(MATERIAL_TYPE material, vector3 center,
const vector3 *vertices, int num_vertices, double height,
vector3 axis);

// slanted prism with `center` field computed automatically from vertices, height, axis, sidewall_angle
GEOMETRIC_OBJECT make_slanted_prism(MATERIAL_TYPE material, const vector3 *vertices_bottom, int num_vertices,
double height, vector3 axis, double sidewall_angle);

// as make_slanted_prism, but with a rigid translation so that the prism is centered at center
GEOMETRIC_OBJECT make_slanted_prism_with_center(MATERIAL_TYPE material, vector3 center,
const vector3 *vertices_bottom, int num_vertices, double height,
vector3 axis, double sidewall_angle);

int vector3_nearly_equal(vector3 v1, vector3 v2, double tolerance);

/**************************************************************************/
Expand Down
Loading