-
Notifications
You must be signed in to change notification settings - Fork 1
joy-kitson/joback
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
+--------------+ | Executable | +--------------+ joback * run with: ./joback $compound_file1 $compound_file2 ... * takes in a list of csv files, in which each row contains: (0) the chemical formula of a functional group (first value) (1) a series of pairs in the form $index-$bond_type, each representing a single bond where: ( ) index = the row number (starting at 0) in which the functional group at the other end of the bond is located ( i ) bond_type = { 1 : the bond is a single bond { 2 : the bond is a double bond { 3 : the bond is a triple bond (2) no extra 'blank' entries (i.e. commas without values between them) * outputs (for each file's compound): (0) normal boiling point : double, in Kelvin (1) normal freezing point : double, in Kelvin (2) critical temperature : double, in Kelvin (3) critical pressure : double, in bars (4) critical molar volume : double, in cm^3/mol (5) constant pressure heat capacity function : function(double temp, in Kelvin) -> double, in J/mol +----------+ | Source | +----------+ Joback.cpp * compiles to joback * compile with: g++ -std=c++11 -o joback * contains: (0) main method (1) control for calling auxillary functions (manages overall programme control/flow) (2) code for calculating chemically meaningful information from summed contributions ReadCSV.cpp * contains: (0) code for parsing CC_joback_contributions.csv to create the lookup table for contributions (1) code for parsing compound csv files and building a graph FunctGroup.cpp * contains: (0) definition of FunctGroup class (1) hashing function for FunctGroups (allows FunctGroups to be used as keys in lookup table) (2) cycle identification/graph traversal algorithm Graph.cpp * contains: (0) definition of Graph class ( ) template which takes data type to store at nodes ( i ) adjacency list representation with weighted edges (i i) includes Node and Edge member classes (iii) can print out Graph to screen (in adjacency list format) TestGraph.cpp * contains: (0) proof of functionality test for each of the components of the project +--------+ | Data | +--------+ compound0.csv compound_napth.csv * example compounds, which you can test joback on CC_joback_contributions.csv * the csv file read in to produce the lookup table * contains information on the contributions of various functional groups commonly found in organic compounds +----------------+ | Documenation | +----------------+ README.txt * you're here; you've done it * contains: (0) information on all of the other files (1) really, that's about it
About
CompSci 220 final project
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published