{"action":"created","comment":{"url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/comments/23840307","id":23840307,"diff_hunk":"@@ -1518,3 +1619,230 @@ Material* Material::clone(){\n \n   return clone;\n }\n+\n+\n+/* ************************************************************************** */\n+\n+\n+/**\n+ * @brief Constructor sets the ID and unique ID for the Material.\n+ * @param id the user-specified optional Material ID\n+ * @param name the user-specified optional Material name\n+ */\n+IsoMaterial::IsoMaterial(int id, const char* name) : Material(id,name) {\n+    \n+  _material_type = ISO_MATERIAL;\n+  \n+  _num_isotopes = 0;\n+  \n+  return;\n+}\n+\n+\n+/**\n+ * @brief Destructor: clears dynamically allocated memory.\n+ */\n+IsoMaterial::~IsoMaterial() {\n+  \n+  _isotopes.clear();\n+  _num_dens.clear();\n+  \n+  return;\n+}\n+\n+\n+/**\n+ * @brief Add an isotope to the Material.\n+ * @details Add the isotope's contributions to the stored cross sections\n+ * @param isotope Pointer to the Isotope to be added\n+ * @param number_density the number density of the Isotope in the Material\n+ */  \n+void IsoMaterial:: addIsotope(Isotope* isotope, FP_PRECISION number_density) {\n+  int num_groups = isotope->getNumEnergyGroups();\n+  bool chi_set = false;\n+  \n+  if (_num_groups==0) {\n+    setNumEnergyGroups(num_groups);\n+    _chi_set = false;\n+  }\n+  if (num_groups != _num_groups)\n+    log_printf(ERROR,\"Cannot add Isotope %d because it has %d energy groups \"\n+               \"and other isotopes in Material have %d.\", isotope->getId(),\n+               num_groups, _num_groups);\n+  \n+  _isotopes.push_back(isotope);\n+  _num_dens.push_back(number_density);\n+  \n+  for (int g=0; g<_num_groups; g++) {\n+    _sigma_t[g] += isotope->getSigmaTByGroup(g+1)*number_density;\n+    _sigma_a[g] += isotope->getSigmaAByGroup(g+1)*number_density;\n+    _sigma_f[g] += isotope->getSigmaFByGroup(g+1)*number_density;\n+    _nu_sigma_f[g] += isotope->getNuSigmaFByGroup(g+1)*number_density;\n+    if (not _chi_set) {\n+      _chi[g] = isotope->getChiByGroup(g+1);\n+      if (_chi[g] > 0) chi_set = true;\n+    }\n+  }\n+  \n+  if (chi_set) _chi_set = true;\n+  \n+  if (isotope->isFissionable())\n+    _fissionable = true;\n+  \n+  _num_isotopes++;\n+}\n+\n+\n+/**\n+ * @brief Get specific number density from Material\n+ * @param index The index of the material to be retrieved\n+ * @return the number density\n+ */\n+FP_PRECISION IsoMaterial::getNumberDensity(int index) {\n+  if (index > _num_isotopes-1)\n+    log_printf(ERROR,\"Cannot return Isotope with index %d because there are \"\n+               \"only %d isotopes in the Material.\", index,\n+               _num_isotopes);\n+\n+  return _num_dens[index];\n+}\n+\n+\n+/**\n+ * @brief Get vector of number densities from Material\n+ * @return vector of number densities\n+ */\n+std::vector<FP_PRECISION> IsoMaterial::getNumberDensities() {\n+  return _num_dens;\n+}\n+\n+\n+/**\n+ * @brief Get specific Isotope from Material\n+ * @param index The index of the material to be retrieved\n+ * @return Pointer to the isotope requested\n+ */\n+Isotope* IsoMaterial::getIsotope(int index) {\n+  if (index > _num_isotopes-1)\n+    log_printf(ERROR,\"Cannot return Isotope with index %d because there are \"\n+               \"only %d isotopes in the Material.\", index,\n+               _num_isotopes);\n+\n+  return _isotopes[index];\n+}\n+\n+\n+/**\n+ * @brief Get vector of Isotopes from Material\n+ * @return vector of Isotopes\n+ */\n+std::vector<Isotope*> IsoMaterial::getIsotopes() {\n+  return _isotopes;\n+}\n+  \n+  \n+  \n+/**\n+ * @brief Checks if the total cross-section for this Material is equal to the\n+ *        absorption plus scattering cross-sections for all energy groups.\n+ * @details If the total cross-section does not equal the absorption plus\n+ *          scattering cross-section within SIGMA_T_THRESH then this method\n+ *          exits OpenMOC.\n+ */\n+void IsoMaterial::checkSigmaT() {\n+  if (_num_groups == 0)\n+    log_printf(ERROR, \"Unable to verify Material %d's total cross-section \"\n+              \"since the number of energy groups has not been set\", _id);\n+              \n+  if (_num_isotopes == 0)\n+    log_printf(ERROR, \"Unable to verify Material %d's total cross-section \"\n+              \"since no isotopes have been added.\", _id);\n+\n+  FP_PRECISION calc_sigma_t;\n+\n+  /* Loop over all energy groups */\n+  for (int i=0; i < _num_groups; i++) {\n+\n+    /* Initialize the calculated total xs to the absorption xs */\n+    calc_sigma_t = _sigma_a[i];\n+\n+    /* Increment calculated total xs by scatter xs for each energy group */\n+    for (int j=0; j < _num_groups; j++)\n+      calc_sigma_t += getSigmaSByGroup(i+1,j+1);\n+\n+    /* Check if the calculated and total match up to certain threshold */\n+    if (fabs(calc_sigma_t - _sigma_t[i]) > SIGMA_T_THRESH) {\n+      log_printf(ERROR, \"Material id = %d has a different total cross-section \"\n+                 \"than the sum of its scattering and absorption cross-sections \"\n+                 \"for group %d: sigma_t = %f, calc_sigma_t = %f\",\n+                 _id, i+1, _sigma_t[i], calc_sigma_t);\n+    }\n+  }\n+  \n+  return;\n+}\n+  \n+  \n+/**\n+ * @brief Get the group to group scatter cross section for given groups\n+ * @details Sums the contribution from each isotope\n+ * @param origin the column index of the scattering matrix\n+ * @param destination the row index of the scatteirng matrix\n+ * @return the group to group scatter cross section\n+ */     \n+FP_PRECISION IsoMaterial::getScatterSource(int group, FP_PRECISION* flux) {\n+  FP_PRECISION Q = 0;\n+  \n+  /* sum scatter source for each isotope */\n+  for (int i=0; i < _num_isotopes; i++)\n+      Q += _isotopes[i]->getScatterSource(group,flux)*_num_dens[i];\n+  \n+  return Q;\n+}\n+\n+\n+/**\n+ * @brief Get the group to group scatter cross section for given groups\n+ * @details Sums the contribution from each isotope\n+ * @param origin the column index of the scattering matrix\n+ * @param destination the row index of the scatteirng matrix\n+ * @return the group to group scatter cross section\n+ */  \n+FP_PRECISION IsoMaterial::getSigmaSByGroup(int origin, int destination) {\n+  FP_PRECISION xs = 0;\n+\n+  /* sum scatter xs for each isotope */\n+  for (int i=0; i < _num_isotopes; i++)\n+      xs += _isotopes[i]->getSigmaSByGroup(origin,destination)*_num_dens[i];\n+  \n+  return xs;\n+}\n+\n+\n+/**\n+ * @brief Get the number of isotopes in the Material.\n+ * @return the number of isotopes\n+ */    \n+int IsoMaterial::getNumIsotopes() {\n+  return _num_isotopes;\n+}\n+\n+\n+/**\n+ * @brief Create a duplicate of the IsoMaterial.\n+ * @return a pointer to the clone\n+ */    \n+IsoMaterial* IsoMaterial::clone() {\n+  IsoMaterial* clone = new IsoMaterial(getId(),getName());\n+  \n+  /* Add each isotope in original Material to cloned Material */","path":"src/Material.cpp","position":1505,"original_position":1505,"commit_id":"ab56b8ee4a6ca759289dd447665e305604d2c3ff","original_commit_id":"ab56b8ee4a6ca759289dd447665e305604d2c3ff","user":{"login":"wbinventor","id":209492,"avatar_url":"https://avatars.githubusercontent.com/u/209492?v=3","gravatar_id":"","url":"https://api.github.com/users/wbinventor","html_url":"https://github.com/wbinventor","followers_url":"https://api.github.com/users/wbinventor/followers","following_url":"https://api.github.com/users/wbinventor/following{/other_user}","gists_url":"https://api.github.com/users/wbinventor/gists{/gist_id}","starred_url":"https://api.github.com/users/wbinventor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wbinventor/subscriptions","organizations_url":"https://api.github.com/users/wbinventor/orgs","repos_url":"https://api.github.com/users/wbinventor/repos","events_url":"https://api.github.com/users/wbinventor/events{/privacy}","received_events_url":"https://api.github.com/users/wbinventor/received_events","type":"User","site_admin":false},"body":"The ``IsoMaterial`` inherits a number of items from ``Material``. Why are they not cloned here?","created_at":"2015-01-30T12:54:22Z","updated_at":"2015-01-30T12:54:22Z","html_url":"https://github.com/mit-crpg/OpenMOC/pull/121#discussion_r23840307","pull_request_url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/121","_links":{"self":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/comments/23840307"},"html":{"href":"https://github.com/mit-crpg/OpenMOC/pull/121#discussion_r23840307"},"pull_request":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/121"}}},"pull_request":{"url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/121","id":28225363,"html_url":"https://github.com/mit-crpg/OpenMOC/pull/121","diff_url":"https://github.com/mit-crpg/OpenMOC/pull/121.diff","patch_url":"https://github.com/mit-crpg/OpenMOC/pull/121.patch","issue_url":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/121","number":121,"state":"open","locked":false,"title":"Isotopes","user":{"login":"PrezNattyGibbs","id":1434947,"avatar_url":"https://avatars.githubusercontent.com/u/1434947?v=3","gravatar_id":"","url":"https://api.github.com/users/PrezNattyGibbs","html_url":"https://github.com/PrezNattyGibbs","followers_url":"https://api.github.com/users/PrezNattyGibbs/followers","following_url":"https://api.github.com/users/PrezNattyGibbs/following{/other_user}","gists_url":"https://api.github.com/users/PrezNattyGibbs/gists{/gist_id}","starred_url":"https://api.github.com/users/PrezNattyGibbs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PrezNattyGibbs/subscriptions","organizations_url":"https://api.github.com/users/PrezNattyGibbs/orgs","repos_url":"https://api.github.com/users/PrezNattyGibbs/repos","events_url":"https://api.github.com/users/PrezNattyGibbs/events{/privacy}","received_events_url":"https://api.github.com/users/PrezNattyGibbs/received_events","type":"User","site_admin":false},"body":"This PR splits the `Material` class into two subclasses, `MacroMaterial` and `IsoMaterial`.  The `Material` class is now an abstract class.\r\n\r\n- `MacroMaterial` contains all the same functionality as the previous `Material` class\r\n- `IsoMaterial` defines a `Material` as a set of `Isotopes`\r\n- `Isotopes` are introduced, which contain microscopic cross sections\r\n- Only major change to old functionality is `getSigmaS` has been removed from `Material`\r\n- You should now use `getSigmaSByGroup` and the new `getScatterSource` methods instead\r\n\r\nThis PR allows the definition of `Materials` to be defined on an isotopic basis, which enables self-shielding methods to be implemented and could even make comparisons to Monte Carlo easier.  Note that `Isotope` is intended to be subclassed in the future for various self-shielding implementations and scattering physics.","created_at":"2015-01-28T20:12:31Z","updated_at":"2015-01-30T12:54:22Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ea887f5cf01225dd961c03b069ceb005817708fc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/121/commits","review_comments_url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/121/comments","review_comment_url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/comments/{number}","comments_url":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/121/comments","statuses_url":"https://api.github.com/repos/mit-crpg/OpenMOC/statuses/ab56b8ee4a6ca759289dd447665e305604d2c3ff","head":{"label":"PrezNattyGibbs:isotope","ref":"isotope","sha":"ab56b8ee4a6ca759289dd447665e305604d2c3ff","user":{"login":"PrezNattyGibbs","id":1434947,"avatar_url":"https://avatars.githubusercontent.com/u/1434947?v=3","gravatar_id":"","url":"https://api.github.com/users/PrezNattyGibbs","html_url":"https://github.com/PrezNattyGibbs","followers_url":"https://api.github.com/users/PrezNattyGibbs/followers","following_url":"https://api.github.com/users/PrezNattyGibbs/following{/other_user}","gists_url":"https://api.github.com/users/PrezNattyGibbs/gists{/gist_id}","starred_url":"https://api.github.com/users/PrezNattyGibbs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PrezNattyGibbs/subscriptions","organizations_url":"https://api.github.com/users/PrezNattyGibbs/orgs","repos_url":"https://api.github.com/users/PrezNattyGibbs/repos","events_url":"https://api.github.com/users/PrezNattyGibbs/events{/privacy}","received_events_url":"https://api.github.com/users/PrezNattyGibbs/received_events","type":"User","site_admin":false},"repo":{"id":17916779,"name":"OpenMOC","full_name":"PrezNattyGibbs/OpenMOC","owner":{"login":"PrezNattyGibbs","id":1434947,"avatar_url":"https://avatars.githubusercontent.com/u/1434947?v=3","gravatar_id":"","url":"https://api.github.com/users/PrezNattyGibbs","html_url":"https://github.com/PrezNattyGibbs","followers_url":"https://api.github.com/users/PrezNattyGibbs/followers","following_url":"https://api.github.com/users/PrezNattyGibbs/following{/other_user}","gists_url":"https://api.github.com/users/PrezNattyGibbs/gists{/gist_id}","starred_url":"https://api.github.com/users/PrezNattyGibbs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PrezNattyGibbs/subscriptions","organizations_url":"https://api.github.com/users/PrezNattyGibbs/orgs","repos_url":"https://api.github.com/users/PrezNattyGibbs/repos","events_url":"https://api.github.com/users/PrezNattyGibbs/events{/privacy}","received_events_url":"https://api.github.com/users/PrezNattyGibbs/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/PrezNattyGibbs/OpenMOC","description":"A method of characteristics code for nuclear reactor physics calculations.","fork":true,"url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC","forks_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/forks","keys_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/teams","hooks_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/hooks","issue_events_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/issues/events{/number}","events_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/events","assignees_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/assignees{/user}","branches_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/branches{/branch}","tags_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/tags","blobs_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/git/refs{/sha}","trees_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/statuses/{sha}","languages_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/languages","stargazers_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/stargazers","contributors_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/contributors","subscribers_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/subscribers","subscription_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/subscription","commits_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/commits{/sha}","git_commits_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/git/commits{/sha}","comments_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/comments{/number}","issue_comment_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/issues/comments/{number}","contents_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/contents/{+path}","compare_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/merges","archive_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/downloads","issues_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/issues{/number}","pulls_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/pulls{/number}","milestones_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/milestones{/number}","notifications_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/labels{/name}","releases_url":"https://api.github.com/repos/PrezNattyGibbs/OpenMOC/releases{/id}","created_at":"2014-03-19T19:07:14Z","updated_at":"2015-01-15T00:29:07Z","pushed_at":"2015-01-28T20:04:31Z","git_url":"git://github.com/PrezNattyGibbs/OpenMOC.git","ssh_url":"git@github.com:PrezNattyGibbs/OpenMOC.git","clone_url":"https://github.com/PrezNattyGibbs/OpenMOC.git","svn_url":"https://github.com/PrezNattyGibbs/OpenMOC","homepage":"https://mit-crpg.github.io/OpenMOC/","size":72752,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"mit-crpg:develop","ref":"develop","sha":"a192736b58141ef508d77167ed281f2d599ca9e9","user":{"login":"mit-crpg","id":1247634,"avatar_url":"https://avatars.githubusercontent.com/u/1247634?v=3","gravatar_id":"","url":"https://api.github.com/users/mit-crpg","html_url":"https://github.com/mit-crpg","followers_url":"https://api.github.com/users/mit-crpg/followers","following_url":"https://api.github.com/users/mit-crpg/following{/other_user}","gists_url":"https://api.github.com/users/mit-crpg/gists{/gist_id}","starred_url":"https://api.github.com/users/mit-crpg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mit-crpg/subscriptions","organizations_url":"https://api.github.com/users/mit-crpg/orgs","repos_url":"https://api.github.com/users/mit-crpg/repos","events_url":"https://api.github.com/users/mit-crpg/events{/privacy}","received_events_url":"https://api.github.com/users/mit-crpg/received_events","type":"Organization","site_admin":false},"repo":{"id":8780988,"name":"OpenMOC","full_name":"mit-crpg/OpenMOC","owner":{"login":"mit-crpg","id":1247634,"avatar_url":"https://avatars.githubusercontent.com/u/1247634?v=3","gravatar_id":"","url":"https://api.github.com/users/mit-crpg","html_url":"https://github.com/mit-crpg","followers_url":"https://api.github.com/users/mit-crpg/followers","following_url":"https://api.github.com/users/mit-crpg/following{/other_user}","gists_url":"https://api.github.com/users/mit-crpg/gists{/gist_id}","starred_url":"https://api.github.com/users/mit-crpg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mit-crpg/subscriptions","organizations_url":"https://api.github.com/users/mit-crpg/orgs","repos_url":"https://api.github.com/users/mit-crpg/repos","events_url":"https://api.github.com/users/mit-crpg/events{/privacy}","received_events_url":"https://api.github.com/users/mit-crpg/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mit-crpg/OpenMOC","description":"A method of characteristics code for nuclear reactor physics calculations.","fork":false,"url":"https://api.github.com/repos/mit-crpg/OpenMOC","forks_url":"https://api.github.com/repos/mit-crpg/OpenMOC/forks","keys_url":"https://api.github.com/repos/mit-crpg/OpenMOC/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mit-crpg/OpenMOC/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mit-crpg/OpenMOC/teams","hooks_url":"https://api.github.com/repos/mit-crpg/OpenMOC/hooks","issue_events_url":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/events{/number}","events_url":"https://api.github.com/repos/mit-crpg/OpenMOC/events","assignees_url":"https://api.github.com/repos/mit-crpg/OpenMOC/assignees{/user}","branches_url":"https://api.github.com/repos/mit-crpg/OpenMOC/branches{/branch}","tags_url":"https://api.github.com/repos/mit-crpg/OpenMOC/tags","blobs_url":"https://api.github.com/repos/mit-crpg/OpenMOC/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mit-crpg/OpenMOC/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mit-crpg/OpenMOC/git/refs{/sha}","trees_url":"https://api.github.com/repos/mit-crpg/OpenMOC/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mit-crpg/OpenMOC/statuses/{sha}","languages_url":"https://api.github.com/repos/mit-crpg/OpenMOC/languages","stargazers_url":"https://api.github.com/repos/mit-crpg/OpenMOC/stargazers","contributors_url":"https://api.github.com/repos/mit-crpg/OpenMOC/contributors","subscribers_url":"https://api.github.com/repos/mit-crpg/OpenMOC/subscribers","subscription_url":"https://api.github.com/repos/mit-crpg/OpenMOC/subscription","commits_url":"https://api.github.com/repos/mit-crpg/OpenMOC/commits{/sha}","git_commits_url":"https://api.github.com/repos/mit-crpg/OpenMOC/git/commits{/sha}","comments_url":"https://api.github.com/repos/mit-crpg/OpenMOC/comments{/number}","issue_comment_url":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/comments/{number}","contents_url":"https://api.github.com/repos/mit-crpg/OpenMOC/contents/{+path}","compare_url":"https://api.github.com/repos/mit-crpg/OpenMOC/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mit-crpg/OpenMOC/merges","archive_url":"https://api.github.com/repos/mit-crpg/OpenMOC/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mit-crpg/OpenMOC/downloads","issues_url":"https://api.github.com/repos/mit-crpg/OpenMOC/issues{/number}","pulls_url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls{/number}","milestones_url":"https://api.github.com/repos/mit-crpg/OpenMOC/milestones{/number}","notifications_url":"https://api.github.com/repos/mit-crpg/OpenMOC/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mit-crpg/OpenMOC/labels{/name}","releases_url":"https://api.github.com/repos/mit-crpg/OpenMOC/releases{/id}","created_at":"2013-03-14T17:19:26Z","updated_at":"2015-01-02T02:15:16Z","pushed_at":"2015-01-22T04:05:03Z","git_url":"git://github.com/mit-crpg/OpenMOC.git","ssh_url":"git@github.com:mit-crpg/OpenMOC.git","clone_url":"https://github.com/mit-crpg/OpenMOC.git","svn_url":"https://github.com/mit-crpg/OpenMOC","homepage":"https://mit-crpg.github.io/OpenMOC/","size":102784,"stargazers_count":9,"watchers_count":9,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":17,"mirror_url":null,"open_issues_count":25,"forks":17,"open_issues":25,"watchers":9,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/121"},"html":{"href":"https://github.com/mit-crpg/OpenMOC/pull/121"},"issue":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/121"},"comments":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/121/comments"},"review_comments":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/121/comments"},"review_comment":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/121/commits"},"statuses":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/statuses/ab56b8ee4a6ca759289dd447665e305604d2c3ff"}}}}