Difference between revisions of "User:Crdueck"
(added markup, first patch info) |
|||
Line 5: | Line 5: | ||
==Contact Info== | ==Contact Info== | ||
− | email: crdueck@uwaterloo.ca | + | email: crdueck@uwaterloo.ca |
− | alt: cdueck93@gmail.ca | + | |
+ | alt: cdueck93@gmail.ca | ||
+ | |||
irc: crdueck (find me on freenode, i'll be in #brlcad) | irc: crdueck (find me on freenode, i'll be in #brlcad) | ||
Line 12: | Line 14: | ||
I have experience with C (as well as Scheme and Python), and would be more than happy to have an | I have experience with C (as well as Scheme and Python), and would be more than happy to have an | ||
− | opportunity to learn C++ while working on my project. | + | opportunity to learn some C++ while working on my project. |
Most of my experience so far has come from school assignments, projecteuler.net (programming challenges with a mathematical twist, | Most of my experience so far has come from school assignments, projecteuler.net (programming challenges with a mathematical twist, | ||
Line 26: | Line 28: | ||
Currently, most primitives in BRLCAD do not have volume, centroid, or surface area functions. My goal is to | Currently, most primitives in BRLCAD do not have volume, centroid, or surface area functions. My goal is to | ||
implement volume and centroid functions for at least: | implement volume and centroid functions for at least: | ||
− | *- ell (sph) | + | *- ell (and sph) |
*- tor | *- tor | ||
*- rec | *- rec | ||
Line 70: | Line 72: | ||
**- test implementation for correctness | **- test implementation for correctness | ||
− | *Week 8 | + | *Week 8 (July 2nd - 8th) |
**- time to review code, more testing | **- time to review code, more testing | ||
− | *Week | + | *Week 9 (July 9th - 13th) |
**- midterm evaluation | **- midterm evaluation | ||
− | *Week | + | *Week 10 (July 14th - 22nd) |
**- ??? | **- ??? | ||
**- implement surface area functions for choice functions? | **- implement surface area functions for choice functions? | ||
Line 94: | Line 96: | ||
enough in my skills to be able to meaningfully contribute. If accepted, I plan on continuing my involvement with BRLCAD | enough in my skills to be able to meaningfully contribute. If accepted, I plan on continuing my involvement with BRLCAD | ||
after GSoC ends, moving on to more challenging tasks. Having already invested some time familiarizing myself with | after GSoC ends, moving on to more challenging tasks. Having already invested some time familiarizing myself with | ||
− | BRLCAD's source library, | + | BRLCAD's source library, I'm considering completing some of my proposed goals this summer even if my application is |
already unsuccessful. | already unsuccessful. | ||
Line 100: | Line 102: | ||
As a warm up to gain knowledge about the internals of BRLCAD, I decided to implement a volume function for a simple primitive. | As a warm up to gain knowledge about the internals of BRLCAD, I decided to implement a volume function for a simple primitive. | ||
After some discussion on #brlcad, I chose a sph for its simplicity. You can find my patch notes here: | After some discussion on #brlcad, I chose a sph for its simplicity. You can find my patch notes here: | ||
+ | |||
https://sourceforge.net/tracker/?func=detail&aid=3513421&group_id=105292&atid=640804 | https://sourceforge.net/tracker/?func=detail&aid=3513421&group_id=105292&atid=640804 | ||
+ | |||
If you have any comments on this patch please let me know :) | If you have any comments on this patch please let me know :) |
Revision as of 12:37, 1 April 2012
Contents
Personal Info
Hello, my name is Chris. I'm a first year mathematics student at the University of Waterloo (Canada) with a strong interest in computer science and programming.
Contact Info
email: crdueck@uwaterloo.ca
alt: cdueck93@gmail.ca
irc: crdueck (find me on freenode, i'll be in #brlcad)
Programming Experience
I have experience with C (as well as Scheme and Python), and would be more than happy to have an opportunity to learn some C++ while working on my project.
Most of my experience so far has come from school assignments, projecteuler.net (programming challenges with a mathematical twist, check it out if you haven't heard of it before), and small personal pet projects.
I have knowledge of data structures and algorithms from my courses at school.
I have a solid foundation in basic university level mathematics (one of my primary reasons for wanting to participate⋅ in the GSoC is to further my mathematical knowledge in the subject of computer generated models)
Project Summary
Currently, most primitives in BRLCAD do not have volume, centroid, or surface area functions. My goal is to implement volume and centroid functions for at least:
- - ell (and sph)
- - tor
- - rec
- - rcc
- - hyp
- - arb8
- - arbn
- - pipe
These primitives are mostly simple solids of revolution or other simple shapes and thus it will be easy to construct explicit formulas for their volumes and centroids.
Proposal
~WIP~
Timeline
- Present - May 21
- - compile BRLCAD from SVN source, ensure build environment is working
- - become familiar with submitting patches to SVN
- - become familiar with source code for my targeted primitives
- - get comfortable with using mged to generate primitives for testing
- - participate with the BRLCAD community on irc, mailing list etc
- Week 1 (May 22nd to 27th)
- - implement a volume and centroid function for ell
- - test implementation for correctness
- Week 2 (May 28th to June 3rd)
- - implement a volume and centroid function for tor
- - test implementation for correctness
- Week 3 (June 4th to 10th)
- - implement a volume and centroid function for rec and rcc
- - test implementation for correctness
- Week 4/5 (June 11th to 24th)
- - implement a volume and centroid function for arb8 and arbn
- - test implementation for correctness
- Week 6/7 (June 25th to July 1st)
- - implement a volume and centroid function for pipe (lin_pipe and bend_pipe)
- - test implementation for correctness
- Week 8 (July 2nd - 8th)
- - time to review code, more testing
- Week 9 (July 9th - 13th)
- - midterm evaluation
- Week 10 (July 14th - 22nd)
- - ???
- - implement surface area functions for choice functions?
- - project might need more content
Me && GSoC
I want to participate in GSoC 2012 for many reasons. Firstly, to develop a stronger understanding of how⋅ mathematics is implemented by computers in the real world. My courses at school consist of a lot of theory, and I haven't seen much of the application side of things yet. When searching for a potential organization to apply to, I knew i wanted to work on mathematics related software, BRL-CAD caught my eye right away.
I also hope to greatly expand my programming skills in a real world development setting. I feel that i can improve myself as a programmer by leaps and bounds this summer by working with the devs at BRL-CAD. This is also a great chance to get involved with the open-source community. As an avid user of open-source software, contributing back to an open-source project has been something I have wished to pursue for a while now, but am just recently confident enough in my skills to be able to meaningfully contribute. If accepted, I plan on continuing my involvement with BRLCAD after GSoC ends, moving on to more challenging tasks. Having already invested some time familiarizing myself with BRLCAD's source library, I'm considering completing some of my proposed goals this summer even if my application is already unsuccessful.
My Initial Patch
As a warm up to gain knowledge about the internals of BRLCAD, I decided to implement a volume function for a simple primitive. After some discussion on #brlcad, I chose a sph for its simplicity. You can find my patch notes here:
https://sourceforge.net/tracker/?func=detail&aid=3513421&group_id=105292&atid=640804
If you have any comments on this patch please let me know :)