User:Jacksixb/Proposal

From BRL-CAD
Revision as of 09:44, 10 December 2012 by Jacksixb (talk | contribs) (Intial make)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Molecular Graphics Programming for Import and Visualization

Academic Focus Areas:

Computer Science, Biology, Chemistry

Summary:

The study endeavors to learn fundamentals of computer programming and computer science concepts in order to import and visualize molecular structures within an engineering context. The study requires learning numerous computer science fundamentals including concepts of data management, pointer manipulation, data structures, object-oriented design, procedural workflows, file input/output, and 3D visualization. It also requires learning several applied scientific concepts involving molecular graphics, molecular engineering, biological molecular structures, chemical structures, and common data formats. In order to demonstrate the academic objectives, computer programming source code will be implemented to read molecular data from public repository Protein Data Bank (PDB) files. The PDB data will be converted into 3D geometry inside of BRL-CAD and subsequently visualized via ray tracing.

Goals:

  1. Finish Calc Class (10/18)
  2. Gain fundamental understanding of File I/O in C/C++ (10/31)
  3. Gain fundamental understanding of data structures in C/C++
  4. Gain fundamental understanding of protein structures and molecular graphics
  5. Gain fundamental understanding of 3D geometry and rendering

Assignments:

  1. Data structures program: pointer fundamentals and data abstraction (10/26)
  2. File I/O program: methods for reading text and binary (11/2)
  3. Recursion program: procedurally generated geometry
  4. Software design: object-oriented and procedural workflow analysis
  5. Midterm report (1/18)
  6. Parse PDB file into a data structure
  7. Create simple molecular geometry from PDB data
  8. Putting it all together: “pdb-g: PDB to BRL-CAD importer”
  9. Molecular structures visualization survey
  10. Visualization of molecular geometry, ray tracing
  11. Molecular geometry engineering analysis
  12. Final report (5/31)

Schedule:

Aug: Finish up Calculus independent study (will cut into September and October)
Sep: Continued from August
Oct: Study fundamentals of file I/O in C w/ program that outputs an array to a file and inputs an array from that file
Nov: Study fundamentals of data structures and pointers
Dec: Parse PDB file into a data structure via pdb-g tool
Jan: Procedurally create geometry of atom structure of a protein from PDB data structure and midyear report
Feb: Study features of molecular graphics, scope extension that calculate a protein properties, including: surface properties, Molecular Lipophilic Potential, and Electrostatic Potential
Mar: Implement extension to calculate properties
Apr: Procedurally create geometry for molecular surface and other molecular graphics of a protein from PDB data structure
May: Integrate code and final report (includes midyear report)