{"action":"created","comment":{"url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/comments/66891846","id":66891846,"diff_hunk":"@@ -32,90 +38,155 @@ V = num.asarray(M.ao_potential())\n #Store Hamiltonian.\n H = T + V\n \n+\n #A = S^(1/2)\n eigval, eigvec = num.linalg.eigh(S)\n eigval **= -0.5\n A = num.dot(eigvec*eigval,eigvec.T)\n-\n-#Size check for two-electron integrals\n-orbs = S.shape[0]\n-#Gb of data for two-electron integrals\n-size = (orbs**4)*8/1.e9\n ndocc = wfn.nalpha()\n-if size > 1:\n-    raise Exception(\"G tensor is too big!\")\n \n-g = num.asarray(M.ao_eri())\n \n #Diagonalize F and Produce Density Matrix\n Fp = num.dot(A.T,H).dot(A)\n eigval, eigvec = num.linalg.eigh(Fp)\n-C = np.dot(A,eigvec) \n+C = np.dot(A,eigvec)\n Cocc = C[:,:ndocc]\n D = np.dot(Cocc,Cocc.T)\n+c = np.shape(Cocc)\n+\n+\n+#Size check for two-electron integrals\n+orbs = S.shape[0]\n+#Gb of data for two-electron integrals\n+size = (orbs**4)*8/1.e9\n+if size > 14:\n+    raise Exception(\"G tensor is too big!\")\n+\n+\n+#Build the density fitted version\n+scf_e, scf_wfn = energy('SCF', return_wfn=True)\n+dfobj = DFTensor(scf_wfn, \"DF_BASIS_SCF\")\n+Qpq = np.asarray(dfobj.Qso())\n+s = np.shape(Qpq)\n+\n+#Build the 4D tensor if DF is not selected\n+if DF != 1:\n+    Idf = np.einsum('Qpq,Qrs->pqrs',Qpq,Qpq)\n+\n \n #Apply variational method which knows when to stop.\n SCFE = 0\n SCFE_old = 1\n count = 0\n+ztime = 0\n \n #Initiate set of trial vectors, error vectors.\n trials = []\n errors = []\n \n-while abs(SCFE - SCFE_old)> 1e-8:\n-\n+itstart = time.time()\n+while SCFE_old - SCFE > conv_tol:\n+    \n     if count > 99:\n-        raise Exception(\"Calculation Exceeds 100 Iterations\")\n+        raise Exception(\"Calculation Exceeds 100 Iterations!\")\n \n     #Construct Fock Matrix and append to trials\n-    J = 2*num.einsum('pqrs,rs->pq',g,D)\n-    K =   num.einsum('prqs,rs->pq',g,D)\n-    F = H + J - K\n-    trials.append(F)\n-\n-    #Obtain DIIS error\n-    r = num.dot(A.T,(num.dot(F,D).dot(S)-num.dot(S,D).dot(F))).dot(A)    \n-    errors.append(r)    \n-\n-    #Build B\n-    size = len(errors)+1\n-    B = num.zeros((size,size))\n-    B[-1] = -1\n-    B[:,-1] = -1\n-    B[-1,-1] = 0\n-    for i in range(size-1):\n-        for j in range(size-1):\n-                B[i,j] = sum(sum(errors[i]*errors[j]))\n+    if DF != 1:\n+        #O(n^5) in both cases\n+        J = num.einsum('pqrs,rs->pq',Idf,D)\n+        K = num.einsum('prqs,rs->pq',Idf,D)\n+    if DF == 1:\n+        if BLAS != 1:\n+            #J Construction O(N^3) using einsum\n+            tmp = num.einsum('Qrs,rs->Q',Qpq,D)\n+            J = num.einsum('Qpq,Q->pq',Qpq,tmp)\n+                        \n+            #K Construction: O(N^4) using einsum\n+            #tmp = num.einsum('Qqs,rs->Qqr',Qpq,D)\n+            #K = num.einsum('Qqr,Qrp->pq',tmp,Qpq)\n+\n+            #K Construction: O(pN^2Naux) using orbital matrix and einsum\n+            Z1 = np.einsum('Qrs,sq->Qrq',Qpq,Cocc)\n+            K = np.einsum('Qpq,Qrq->pr',Z1,Z1)\n+            \n+        else:\n+            #BLAS\n+          \n+            #J Construction: O(N^3)\n+            tmp = np.dot(Qpq.reshape(s[0],s[1]*s[2]),D.reshape(s[1]*s[2]))\n+            J = np.dot(tmp,Qpq.reshape(s[0],s[1]*s[2])).reshape(s[1],s[2])\n+\n+            #K Construction: O(N^4)\n+            #tmp = np.dot(Qpq.reshape(s[0]*s[1],s[2]),D.T).reshape(s)\n+            #tmp = np.einsum('Qqr->Qrq',tmp)\n+            #K = np.dot(Qpq.reshape(s[0]*s[1],s[2]).T,tmp.reshape(-1,s[2]))\n+             \n+            #K Construction: O(pN^2Naux) using orbital matrix\n+            if Zconstruction == 1:    \n+                stime = time.time()\n+                Z1 = np.dot(Qpq.reshape(s[0]*s[1],s[2]),Cocc).reshape(s[0],s[1],-1)\n+                ztime += (time.time() - stime)   \n+                Z1 = np.einsum('Qpi -> Qip',Z1)\n+                K = np.dot(Z1.reshape(s[0]*c[1],s[1]).T,Z1.reshape(s[0]*c[1],s[1]))\n+            else:\n+                stime = time.time()\n+                Z_1 = np.dot(Cocc.T, Qpq.reshape(s[0] * s[1], s[1]).T)    \n+                ztime += (time.time() - stime)\n+                K = np.dot(Z_1.reshape(-1, s[1]).T, Z_1.reshape(-1, s[1])).reshape(s[1], s[1])\n+            \n+\n+    F = H + 2*J - K \n+    #Compute Energy\n+    Eelec = num.einsum('qr,qr->',F + H,D)\n+    Enuc = mol.nuclear_repulsion_energy()\n+    SCFE_old = SCFE\n+    SCFE = Eelec + Enuc\n+    print (\"dE: %6.12f\" % (SCFE_old - SCFE))\n     \n-    #Solve for Cn\n-    vec = num.zeros(size)\n-    vec[-1] = -1\n-    inverse = num.linalg.inv(B)\n-    Cn = num.dot(inverse,vec)\n+    if DIIS == 1:\n+        trials.append(F)\n+\n+        #Obtain DIIS error\n+        r = num.dot(A.T,(num.dot(F,D).dot(S)-num.dot(S,D).dot(F))).dot(A)    \n+        if len(errors) > DIIS_size: #only keep the DIIS_size most recent guesses for use.\n+            del errors[0]\n+            del trials[0]\n+        errors.append(r)    \n         \n-    #Rebuild Fock Matrix according to Cn\n-    Fdiis = num.zeros_like(F)\n-    for i in range(len(Cn)-1):\n-        Fdiis += Cn[i]*trials[i]\n-\n+        #Build B\n+        size = len(errors)+1\n+        B = num.zeros((size,size))\n+        B[-1] = -1\n+        B[:,-1] = -1\n+        B[-1,-1] = 0\n+        for i in range(size-1):\n+            for j in range(size-1):\n+                B[i,j] = num.sum(errors[i]*errors[j])\n+    \n+        #Solve for Cn\n+        vec = num.zeros(size)\n+        vec[-1] = -1\n+        inverse = num.linalg.inv(B)\n+        Cn = num.linalg.solve(B,vec)","path":"SCF/SCF_Matt.dat","position":210,"original_position":210,"commit_id":"0f5a133d7f4f4fb3de3423d0f5994f3f07f95444","original_commit_id":"0f5a133d7f4f4fb3de3423d0f5994f3f07f95444","user":{"login":"dgasmith","id":1769841,"avatar_url":"https://avatars.githubusercontent.com/u/1769841?v=3","gravatar_id":"","url":"https://api.github.com/users/dgasmith","html_url":"https://github.com/dgasmith","followers_url":"https://api.github.com/users/dgasmith/followers","following_url":"https://api.github.com/users/dgasmith/following{/other_user}","gists_url":"https://api.github.com/users/dgasmith/gists{/gist_id}","starred_url":"https://api.github.com/users/dgasmith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgasmith/subscriptions","organizations_url":"https://api.github.com/users/dgasmith/orgs","repos_url":"https://api.github.com/users/dgasmith/repos","events_url":"https://api.github.com/users/dgasmith/events{/privacy}","received_events_url":"https://api.github.com/users/dgasmith/received_events","type":"User","site_admin":false},"body":"Looks like you are doubling up here, id pick one or the other.","created_at":"2016-06-14T00:23:08Z","updated_at":"2016-06-14T00:23:08Z","html_url":"https://github.com/dgasmith/CDSG_SoC_2016/pull/24#discussion_r66891846","pull_request_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/24","_links":{"self":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/comments/66891846"},"html":{"href":"https://github.com/dgasmith/CDSG_SoC_2016/pull/24#discussion_r66891846"},"pull_request":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/24"}}},"pull_request":{"url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/24","id":73609487,"html_url":"https://github.com/dgasmith/CDSG_SoC_2016/pull/24","diff_url":"https://github.com/dgasmith/CDSG_SoC_2016/pull/24.diff","patch_url":"https://github.com/dgasmith/CDSG_SoC_2016/pull/24.patch","issue_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/issues/24","number":24,"state":"open","locked":false,"title":"Added DF with options","user":{"login":"schiebermc","id":19575820,"avatar_url":"https://avatars.githubusercontent.com/u/19575820?v=3","gravatar_id":"","url":"https://api.github.com/users/schiebermc","html_url":"https://github.com/schiebermc","followers_url":"https://api.github.com/users/schiebermc/followers","following_url":"https://api.github.com/users/schiebermc/following{/other_user}","gists_url":"https://api.github.com/users/schiebermc/gists{/gist_id}","starred_url":"https://api.github.com/users/schiebermc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schiebermc/subscriptions","organizations_url":"https://api.github.com/users/schiebermc/orgs","repos_url":"https://api.github.com/users/schiebermc/repos","events_url":"https://api.github.com/users/schiebermc/events{/privacy}","received_events_url":"https://api.github.com/users/schiebermc/received_events","type":"User","site_admin":false},"body":"Added DF with options, including turning DIIS, DF, and BLAS on.  Also added convergence tolerance and Zeta construction options.","created_at":"2016-06-13T17:02:04Z","updated_at":"2016-06-14T00:23:08Z","closed_at":null,"merged_at":null,"merge_commit_sha":"cb59c16f973d27455d7aded320d6bfef1e4ff756","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/24/commits","review_comments_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/24/comments","review_comment_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/comments{/number}","comments_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/issues/24/comments","statuses_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/statuses/0f5a133d7f4f4fb3de3423d0f5994f3f07f95444","head":{"label":"schiebermc:master","ref":"master","sha":"0f5a133d7f4f4fb3de3423d0f5994f3f07f95444","user":{"login":"schiebermc","id":19575820,"avatar_url":"https://avatars.githubusercontent.com/u/19575820?v=3","gravatar_id":"","url":"https://api.github.com/users/schiebermc","html_url":"https://github.com/schiebermc","followers_url":"https://api.github.com/users/schiebermc/followers","following_url":"https://api.github.com/users/schiebermc/following{/other_user}","gists_url":"https://api.github.com/users/schiebermc/gists{/gist_id}","starred_url":"https://api.github.com/users/schiebermc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schiebermc/subscriptions","organizations_url":"https://api.github.com/users/schiebermc/orgs","repos_url":"https://api.github.com/users/schiebermc/repos","events_url":"https://api.github.com/users/schiebermc/events{/privacy}","received_events_url":"https://api.github.com/users/schiebermc/received_events","type":"User","site_admin":false},"repo":{"id":59777137,"name":"CDSG_SoC_2016","full_name":"schiebermc/CDSG_SoC_2016","owner":{"login":"schiebermc","id":19575820,"avatar_url":"https://avatars.githubusercontent.com/u/19575820?v=3","gravatar_id":"","url":"https://api.github.com/users/schiebermc","html_url":"https://github.com/schiebermc","followers_url":"https://api.github.com/users/schiebermc/followers","following_url":"https://api.github.com/users/schiebermc/following{/other_user}","gists_url":"https://api.github.com/users/schiebermc/gists{/gist_id}","starred_url":"https://api.github.com/users/schiebermc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schiebermc/subscriptions","organizations_url":"https://api.github.com/users/schiebermc/orgs","repos_url":"https://api.github.com/users/schiebermc/repos","events_url":"https://api.github.com/users/schiebermc/events{/privacy}","received_events_url":"https://api.github.com/users/schiebermc/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/schiebermc/CDSG_SoC_2016","description":"Welcome to the CDS Group's Summer of Code 2015!","fork":true,"url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016","forks_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/forks","keys_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/keys{/key_id}","collaborators_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/teams","hooks_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/hooks","issue_events_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/issues/events{/number}","events_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/events","assignees_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/assignees{/user}","branches_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/branches{/branch}","tags_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/tags","blobs_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/git/refs{/sha}","trees_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/git/trees{/sha}","statuses_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/statuses/{sha}","languages_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/languages","stargazers_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/stargazers","contributors_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/contributors","subscribers_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/subscribers","subscription_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/subscription","commits_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/commits{/sha}","git_commits_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/git/commits{/sha}","comments_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/comments{/number}","issue_comment_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/issues/comments{/number}","contents_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/contents/{+path}","compare_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/compare/{base}...{head}","merges_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/merges","archive_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/downloads","issues_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/issues{/number}","pulls_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/pulls{/number}","milestones_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/milestones{/number}","notifications_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/labels{/name}","releases_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/releases{/id}","deployments_url":"https://api.github.com/repos/schiebermc/CDSG_SoC_2016/deployments","created_at":"2016-05-26T19:21:29Z","updated_at":"2016-05-26T19:21:29Z","pushed_at":"2016-06-13T17:00:41Z","git_url":"git://github.com/schiebermc/CDSG_SoC_2016.git","ssh_url":"git@github.com:schiebermc/CDSG_SoC_2016.git","clone_url":"https://github.com/schiebermc/CDSG_SoC_2016.git","svn_url":"https://github.com/schiebermc/CDSG_SoC_2016","homepage":null,"size":6176,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"dgasmith:master","ref":"master","sha":"dcfec1dd5369f7e37369a460ab3539b53beb9625","user":{"login":"dgasmith","id":1769841,"avatar_url":"https://avatars.githubusercontent.com/u/1769841?v=3","gravatar_id":"","url":"https://api.github.com/users/dgasmith","html_url":"https://github.com/dgasmith","followers_url":"https://api.github.com/users/dgasmith/followers","following_url":"https://api.github.com/users/dgasmith/following{/other_user}","gists_url":"https://api.github.com/users/dgasmith/gists{/gist_id}","starred_url":"https://api.github.com/users/dgasmith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgasmith/subscriptions","organizations_url":"https://api.github.com/users/dgasmith/orgs","repos_url":"https://api.github.com/users/dgasmith/repos","events_url":"https://api.github.com/users/dgasmith/events{/privacy}","received_events_url":"https://api.github.com/users/dgasmith/received_events","type":"User","site_admin":false},"repo":{"id":59527209,"name":"CDSG_SoC_2016","full_name":"dgasmith/CDSG_SoC_2016","owner":{"login":"dgasmith","id":1769841,"avatar_url":"https://avatars.githubusercontent.com/u/1769841?v=3","gravatar_id":"","url":"https://api.github.com/users/dgasmith","html_url":"https://github.com/dgasmith","followers_url":"https://api.github.com/users/dgasmith/followers","following_url":"https://api.github.com/users/dgasmith/following{/other_user}","gists_url":"https://api.github.com/users/dgasmith/gists{/gist_id}","starred_url":"https://api.github.com/users/dgasmith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgasmith/subscriptions","organizations_url":"https://api.github.com/users/dgasmith/orgs","repos_url":"https://api.github.com/users/dgasmith/repos","events_url":"https://api.github.com/users/dgasmith/events{/privacy}","received_events_url":"https://api.github.com/users/dgasmith/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dgasmith/CDSG_SoC_2016","description":"Welcome to the CDS Group's Summer of Code 2015!","fork":false,"url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016","forks_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/forks","keys_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/teams","hooks_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/hooks","issue_events_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/issues/events{/number}","events_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/events","assignees_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/assignees{/user}","branches_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/branches{/branch}","tags_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/tags","blobs_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/git/refs{/sha}","trees_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/statuses/{sha}","languages_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/languages","stargazers_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/stargazers","contributors_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/contributors","subscribers_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/subscribers","subscription_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/subscription","commits_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/commits{/sha}","git_commits_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/git/commits{/sha}","comments_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/comments{/number}","issue_comment_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/issues/comments{/number}","contents_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/contents/{+path}","compare_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/merges","archive_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/downloads","issues_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/issues{/number}","pulls_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls{/number}","milestones_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/milestones{/number}","notifications_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/labels{/name}","releases_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/releases{/id}","deployments_url":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/deployments","created_at":"2016-05-24T00:17:40Z","updated_at":"2016-05-26T18:52:04Z","pushed_at":"2016-06-13T21:32:27Z","git_url":"git://github.com/dgasmith/CDSG_SoC_2016.git","ssh_url":"git@github.com:dgasmith/CDSG_SoC_2016.git","clone_url":"https://github.com/dgasmith/CDSG_SoC_2016.git","svn_url":"https://github.com/dgasmith/CDSG_SoC_2016","homepage":null,"size":6174,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"open_issues_count":3,"forks":6,"open_issues":3,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/24"},"html":{"href":"https://github.com/dgasmith/CDSG_SoC_2016/pull/24"},"issue":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/issues/24"},"comments":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/issues/24/comments"},"review_comments":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/24/comments"},"review_comment":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/pulls/24/commits"},"statuses":{"href":"https://api.github.com/repos/dgasmith/CDSG_SoC_2016/statuses/0f5a133d7f4f4fb3de3423d0f5994f3f07f95444"}}}}
{"actor":{"display_login":"dgasmith"}}