{"action":"created","comment":{"url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/comments/30863999","id":30863999,"diff_hunk":"@@ -226,48 +145,29 @@ void CPUSolver::initializeFluxArrays() {\n void CPUSolver::initializeSourceArrays() {\n \n   /* Delete old sources arrays if they exist */\n-  if (_fission_sources != NULL)\n-    delete [] _fission_sources;\n-\n-  if (_scatter_sources != NULL)\n-    delete [] _scatter_sources;\n-\n-  if (_old_fission_sources != NULL)\n-    delete [] _old_fission_sources;\n-\n   if (_reduced_sources != NULL)\n     delete [] _reduced_sources;\n \n-  if (_source_residuals != NULL)\n-    delete [] _source_residuals;\n-\n-  int size;\n-\n   /* Allocate memory for all source arrays */\n   try{\n-\n-    size = _num_FSRs * _num_groups;\n-    _fission_sources = new FP_PRECISION[size];\n+    int size = _num_FSRs * _num_groups;\n     _reduced_sources = new FP_PRECISION[size];\n \n-    size = _num_threads * _num_groups;\n-    _scatter_sources = new FP_PRECISION[size];\n-\n-    size = _num_FSRs;\n-    _old_fission_sources = new FP_PRECISION[size];\n-    _source_residuals = new FP_PRECISION[size];\n-\n+    /* If no fixed sources were assigned, use a zeroes array */\n+    if (_fixed_sources == NULL) {\n+      _fixed_sources = new FP_PRECISION[size];\n+      memset(_fixed_sources, 0.0, sizeof(FP_PRECISION) * size);\n+    }","path":"src/CPUSolver.cpp","position":257,"original_position":253,"commit_id":"546fdceacb9a838d8ce8c705e39d68fd3a399685","original_commit_id":"a20e8718c4ca2e8600ce09a424be97d31ab92448","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":"You don't like the creation of fixed source arrays regardless of the type of calculation? I can see this, but since it takes no time and negligible memory (compared to everything else), I like the simplicity of having the initialization modularized like this. Do you see any particular reason that this might break some calculations?","created_at":"2015-05-22T01:36:25Z","updated_at":"2015-05-22T01:36:25Z","html_url":"https://github.com/mit-crpg/OpenMOC/pull/142#discussion_r30863999","pull_request_url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/142","_links":{"self":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/comments/30863999"},"html":{"href":"https://github.com/mit-crpg/OpenMOC/pull/142#discussion_r30863999"},"pull_request":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/142"}}},"pull_request":{"url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/142","id":33608813,"html_url":"https://github.com/mit-crpg/OpenMOC/pull/142","diff_url":"https://github.com/mit-crpg/OpenMOC/pull/142.diff","patch_url":"https://github.com/mit-crpg/OpenMOC/pull/142.patch","issue_url":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/142","number":142,"state":"open","locked":false,"title":"Refactored solvers for eigenvalue, sub-criticality and fixed source calculations","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":"This PR refactors the ``Solver`` and its subclasses to permit eigenvalue, sub-criticality and fixed source calculations. This PR builds upon the revisions introduced in PRs #136, #137, #139, and #141 and should be reviewed after they are finalized.\r\n\r\n**External source API**\r\nA number of new routines are introduced to the ``Solver`` to permit easy assignment of fixed external sources to particular flat source regions (FSRs). This fixed source assignment API was initially created by @PrezNattyGibbs and extended in this PR. The user may assign fixed groupwise volume-averaged sources by ``Cell``, ``Material`` or FSR ID to the ``Solver`` through the following routines exposed through the OpenMOC Python API:\r\n\r\n* ``Solver::setFixedSourceByCell(cell, group, source)``\r\n* ``Solver::setFixedSourceByMaterial(material, group, source)``\r\n* ``Solver::setFixedSourceByFSR(fsr_id, group, source)``\r\n\r\nThe first two routines which set sources by ``Cell`` and ``Material`` will assign the same fixed source to each FSR filled by the corresponding ``Cell`` or ``Material``. \r\n\r\n**Simulation modes**\r\nThis PR makes large scale modifications to the overall structure and program flow of the ``Solver`` and its subclasses. These changes were made to facilitate modular code reuse for several types of neutron transport simulations. The current release of OpenMOC only provides support for eigenvalue calculations. This PR provides routines to compute the flux, source and eigenvalue:\r\n\r\n* ``Solver::computeFlux(...)`` - compute flux distribution for fixed sources\r\n* ``Solver::computeSource(...)`` - compute source distribution from fixed, scatter and fission sources\r\n* ``Solver::computeEigenvalue(...)`` - compute eigenvalue and source distribution\r\n\r\nThe final eigenvalue simulation mode is equivalent to the functionality provided in the current release, but the program flow had been significantly modified and abstracted into general purpose routines which the other modes may leverage. Each of these simulation modes will use any fixed sources defined by the user as described above.\r\n\r\n**Various convergence criteria**\r\nThe current release of OpenMOC uses the total volume and energy integrated fission source to determine the convergence of a simulation. This PR makes it easy for the user to select from three different types of convergence criterion to apply to any of the simulation modes described above:\r\n\r\n* ``SCALAR_FLUX`` - average relative groupwise scalar flux change in each FSR\r\n* ``FISSION_SOURCE`` - average relative energy-integrated fission source change in each FSR\r\n* ``TOTAL_SOURCE`` - average relative groupwise total source change in each FSR\r\n\r\nDefault convergence criteria are applied for each of the different simulation modes described above.\r\n\r\n**Full support for CPUs and GPUs**\r\nAll of the features and modifications in this PR has been verified for the ``CPUSolver``, ``VectorizedSolver`` and ``GPUSolver`` in both parallel and sequential modes.\r\n\r\n**Reduced memory footprint**\r\nThe number of class attributes for the ``Solver`` and its subclasses has been greatly reduced to minimize the memory footprint on both CPUs and GPUs. This is also intended to make the code for each of the different ``Solver`` subclasses to be more digestible for the reader. As a result of some of these changes, some items are computed on the fly (*e.g.*, the fission source) when needed rather than stored in a class attribute. It is important to note that this decreases the memory footprint at the expense of a large flop count for eigenvalue calculations (~1-2% depending on energy group structure).\r\n\r\n**New sample input files**\r\nTwo new sample input files were introduced to illustrate the new fixed source API and simulation modes:\r\n\r\n* ``sample-input/point-source`` - computes the flux for a fixed point source\r\n* ``sample-input/subcritical`` - computes the source for a fixed point source next to a 2D slab of UO2","created_at":"2015-04-18T21:07:04Z","updated_at":"2015-05-22T01:36:25Z","closed_at":null,"merged_at":null,"merge_commit_sha":"faa1afb6dcd7c3065351412a9bc0a01b172c45bc","assignee":{"login":"samuelshaner","id":1244537,"avatar_url":"https://avatars.githubusercontent.com/u/1244537?v=3","gravatar_id":"","url":"https://api.github.com/users/samuelshaner","html_url":"https://github.com/samuelshaner","followers_url":"https://api.github.com/users/samuelshaner/followers","following_url":"https://api.github.com/users/samuelshaner/following{/other_user}","gists_url":"https://api.github.com/users/samuelshaner/gists{/gist_id}","starred_url":"https://api.github.com/users/samuelshaner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/samuelshaner/subscriptions","organizations_url":"https://api.github.com/users/samuelshaner/orgs","repos_url":"https://api.github.com/users/samuelshaner/repos","events_url":"https://api.github.com/users/samuelshaner/events{/privacy}","received_events_url":"https://api.github.com/users/samuelshaner/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/mit-crpg/OpenMOC/milestones/3","html_url":"https://github.com/mit-crpg/OpenMOC/milestones/v0.1.5","labels_url":"https://api.github.com/repos/mit-crpg/OpenMOC/milestones/3/labels","id":980734,"number":3,"title":"v0.1.5","description":"","creator":{"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},"open_issues":8,"closed_issues":11,"state":"open","created_at":"2015-02-16T04:36:42Z","updated_at":"2015-05-21T06:57:44Z","due_on":"2015-05-31T04:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/142/commits","review_comments_url":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/142/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/142/comments","statuses_url":"https://api.github.com/repos/mit-crpg/OpenMOC/statuses/546fdceacb9a838d8ce8c705e39d68fd3a399685","head":{"label":"wbinventor:fixed-source","ref":"fixed-source","sha":"546fdceacb9a838d8ce8c705e39d68fd3a399685","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},"repo":{"id":17987110,"name":"OpenMOC","full_name":"wbinventor/OpenMOC","owner":{"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},"private":false,"html_url":"https://github.com/wbinventor/OpenMOC","description":"A method of characteristics code for nuclear reactor physics calculations.","fork":true,"url":"https://api.github.com/repos/wbinventor/OpenMOC","forks_url":"https://api.github.com/repos/wbinventor/OpenMOC/forks","keys_url":"https://api.github.com/repos/wbinventor/OpenMOC/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wbinventor/OpenMOC/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wbinventor/OpenMOC/teams","hooks_url":"https://api.github.com/repos/wbinventor/OpenMOC/hooks","issue_events_url":"https://api.github.com/repos/wbinventor/OpenMOC/issues/events{/number}","events_url":"https://api.github.com/repos/wbinventor/OpenMOC/events","assignees_url":"https://api.github.com/repos/wbinventor/OpenMOC/assignees{/user}","branches_url":"https://api.github.com/repos/wbinventor/OpenMOC/branches{/branch}","tags_url":"https://api.github.com/repos/wbinventor/OpenMOC/tags","blobs_url":"https://api.github.com/repos/wbinventor/OpenMOC/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wbinventor/OpenMOC/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wbinventor/OpenMOC/git/refs{/sha}","trees_url":"https://api.github.com/repos/wbinventor/OpenMOC/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wbinventor/OpenMOC/statuses/{sha}","languages_url":"https://api.github.com/repos/wbinventor/OpenMOC/languages","stargazers_url":"https://api.github.com/repos/wbinventor/OpenMOC/stargazers","contributors_url":"https://api.github.com/repos/wbinventor/OpenMOC/contributors","subscribers_url":"https://api.github.com/repos/wbinventor/OpenMOC/subscribers","subscription_url":"https://api.github.com/repos/wbinventor/OpenMOC/subscription","commits_url":"https://api.github.com/repos/wbinventor/OpenMOC/commits{/sha}","git_commits_url":"https://api.github.com/repos/wbinventor/OpenMOC/git/commits{/sha}","comments_url":"https://api.github.com/repos/wbinventor/OpenMOC/comments{/number}","issue_comment_url":"https://api.github.com/repos/wbinventor/OpenMOC/issues/comments{/number}","contents_url":"https://api.github.com/repos/wbinventor/OpenMOC/contents/{+path}","compare_url":"https://api.github.com/repos/wbinventor/OpenMOC/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wbinventor/OpenMOC/merges","archive_url":"https://api.github.com/repos/wbinventor/OpenMOC/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wbinventor/OpenMOC/downloads","issues_url":"https://api.github.com/repos/wbinventor/OpenMOC/issues{/number}","pulls_url":"https://api.github.com/repos/wbinventor/OpenMOC/pulls{/number}","milestones_url":"https://api.github.com/repos/wbinventor/OpenMOC/milestones{/number}","notifications_url":"https://api.github.com/repos/wbinventor/OpenMOC/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wbinventor/OpenMOC/labels{/name}","releases_url":"https://api.github.com/repos/wbinventor/OpenMOC/releases{/id}","created_at":"2014-03-21T16:55:16Z","updated_at":"2014-12-03T14:21:53Z","pushed_at":"2015-05-22T01:27:11Z","git_url":"git://github.com/wbinventor/OpenMOC.git","ssh_url":"git@github.com:wbinventor/OpenMOC.git","clone_url":"https://github.com/wbinventor/OpenMOC.git","svn_url":"https://github.com/wbinventor/OpenMOC","homepage":"https://mit-crpg.github.io/OpenMOC/","size":73646,"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":"af371acba194156f1611572618f6232edcaa398a","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-05-07T03:55:11Z","pushed_at":"2015-05-22T01:26:58Z","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":111238,"stargazers_count":12,"watchers_count":12,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":19,"mirror_url":null,"open_issues_count":26,"forks":19,"open_issues":26,"watchers":12,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/142"},"html":{"href":"https://github.com/mit-crpg/OpenMOC/pull/142"},"issue":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/142"},"comments":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/issues/142/comments"},"review_comments":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/pulls/142/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/142/commits"},"statuses":{"href":"https://api.github.com/repos/mit-crpg/OpenMOC/statuses/546fdceacb9a838d8ce8c705e39d68fd3a399685"}}}}