{"action":"created","comment":{"url":"https://api.github.com/repos/nest/nest-simulator/pulls/comments/74796324","id":74796324,"diff_hunk":"@@ -0,0 +1,486 @@\n+/*\n+ *  gif_psc_exp.cpp\n+ *\n+ *  This file is part of NEST.\n+ *\n+ *  Copyright (C) 2004 The NEST Initiative\n+ *\n+ *  NEST is free software: you can redistribute it and/or modify\n+ *  it under the terms of the GNU General Public License as published by\n+ *  the Free Software Foundation, either version 2 of the License, or\n+ *  (at your option) any later version.\n+ *\n+ *  NEST is distributed in the hope that it will be useful,\n+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of\n+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n+ *  GNU General Public License for more details.\n+ *\n+ *  You should have received a copy of the GNU General Public License\n+ *  along with NEST.  If not, see <http://www.gnu.org/licenses/>.\n+ *\n+ */\n+\n+#include \"gif_psc_exp.h\"\n+\n+// C++ includes:\n+#include <limits>\n+\n+// Includes from nestkernel:\n+#include \"exceptions.h\"\n+#include \"kernel_manager.h\"\n+#include \"universal_data_logger_impl.h\"\n+\n+// Includes from sli:\n+#include \"dict.h\"\n+#include \"integerdatum.h\"\n+#include \"doubledatum.h\"\n+#include \"dictutils.h\"\n+\n+#include \"numerics.h\"\n+#include \"compose.hpp\"\n+#include \"propagator_stability.h\"\n+\n+namespace nest\n+{\n+/* ----------------------------------------------------------------\n+ * Recordables map\n+ * ---------------------------------------------------------------- */\n+\n+RecordablesMap< gif_psc_exp > gif_psc_exp::recordablesMap_;\n+\n+// Override the create() method with one call to RecordablesMap::insert_()\n+// for each quantity to be recorded.\n+template <>\n+void\n+RecordablesMap< gif_psc_exp >::create()\n+{\n+  // use standard names whereever you can for consistency!\n+  insert_( names::V_m, &gif_psc_exp::get_V_m_ );\n+  insert_( names::E_sfa, &gif_psc_exp::get_E_sfa_ );\n+  insert_( names::stc, &gif_psc_exp::get_stc_ );\n+  insert_( names::input_currents_ex, &gif_psc_exp::get_input_currents_ex_ );\n+  insert_( names::input_currents_in, &gif_psc_exp::get_input_currents_in_ );\n+}\n+\n+/* ----------------------------------------------------------------\n+ * Default constructors defining default parameters and state\n+ * ---------------------------------------------------------------- */\n+\n+nest::gif_psc_exp::Parameters_::Parameters_()\n+  : g_L_( 4.0 )        // nS\n+  , E_L_( -70.0 )      // mV\n+  , c_m_( 80.0 )       // pF\n+  , V_reset_( -55.0 )  // mV\n+  , Delta_V_( 0.5 )    // mV\n+  , V_T_star_( -35 )   // mV\n+  , lambda_0_( 0.001 ) // 1/ms\n+  , I_e_( 0.0 )        // pA\n+  , t_ref_( 4.0 )      // ms\n+  , tau_ex_( 2.0 )     // ms\n+  , tau_in_( 2.0 )     // ms\n+  , tau_sfa_()         // ms\n+  , q_sfa_()           // mV\n+  , tau_stc_()         // ms\n+  , q_stc_()           // nA\n+{\n+}\n+\n+\n+nest::gif_psc_exp::State_::State_()\n+  : y0_( 0.0 )\n+  , y3_( -70.0 )\n+  , sfa_( 0.0 )\n+  , r_ref_( 0 )\n+  , i_syn_ex_( 0.0 )\n+  , i_syn_in_( 0.0 )\n+  , sfa_stc_initialized_( false )\n+  , add_stc_sfa_( false )\n+  , sfa_elems_()\n+  , stc_elems_()\n+{\n+}\n+\n+/* ----------------------------------------------------------------\n+ * Parameter and state extractions and manipulation functions\n+ * ---------------------------------------------------------------- */\n+\n+void\n+nest::gif_psc_exp::Parameters_::get( DictionaryDatum& d ) const\n+{\n+  def< double >( d, names::I_e, I_e_ );\n+  def< double >( d, names::E_L, E_L_ );\n+  def< double >( d, names::g_L, g_L_ );\n+  def< double >( d, names::C_m, c_m_ );\n+  def< double >( d, names::V_reset, V_reset_ );\n+  def< double >( d, names::Delta_V, Delta_V_ );\n+  def< double >( d, names::V_T_star, V_T_star_ );\n+  def< double >( d, names::lambda_0, lambda_0_ * 1000.0 ); // convert to 1/s\n+  def< double >( d, names::t_ref, t_ref_ );\n+  def< double >( d, names::tau_syn_ex, tau_ex_ );\n+  def< double >( d, names::tau_syn_in, tau_in_ );\n+\n+  ArrayDatum tau_sfa_list_ad( tau_sfa_ );\n+  def< ArrayDatum >( d, names::tau_sfa, tau_sfa_list_ad );\n+\n+  ArrayDatum q_sfa_list_ad( q_sfa_ );\n+  def< ArrayDatum >( d, names::q_sfa, q_sfa_list_ad );\n+\n+  ArrayDatum tau_stc_list_ad( tau_stc_ );\n+  def< ArrayDatum >( d, names::tau_stc, tau_stc_list_ad );\n+\n+  ArrayDatum q_stc_list_ad( q_stc_ );\n+  def< ArrayDatum >( d, names::q_stc, q_stc_list_ad );\n+}\n+\n+void\n+nest::gif_psc_exp::Parameters_::set( const DictionaryDatum& d )\n+{\n+\n+  updateValue< double >( d, names::I_e, I_e_ );\n+  updateValue< double >( d, names::E_L, E_L_ );\n+  updateValue< double >( d, names::g_L, g_L_ );\n+  updateValue< double >( d, names::C_m, c_m_ );\n+  updateValue< double >( d, names::V_reset, V_reset_ );\n+  updateValue< double >( d, names::Delta_V, Delta_V_ );\n+  updateValue< double >( d, names::V_T_star, V_T_star_ );\n+\n+  if ( updateValue< double >( d, names::lambda_0, lambda_0_ ) )\n+  {\n+    lambda_0_ /= 1000.0; // convert to 1/ms\n+  }\n+\n+  updateValue< double >( d, names::t_ref, t_ref_ );\n+  updateValue< double >( d, names::tau_syn_ex, tau_ex_ );\n+  updateValue< double >( d, names::tau_syn_in, tau_in_ );\n+\n+  updateValue< std::vector< double > >( d, names::tau_sfa, tau_sfa_ );\n+  updateValue< std::vector< double > >( d, names::q_sfa, q_sfa_ );\n+  updateValue< std::vector< double > >( d, names::tau_stc, tau_stc_ );\n+  updateValue< std::vector< double > >( d, names::q_stc, q_stc_ );\n+\n+  if ( tau_sfa_.size() != q_sfa_.size() )\n+    throw BadProperty( String::compose(\n+      \"'tau_sfa' and 'q_sfa' need to have the same dimensions.\\nSize of \"\n+      \"tau_sfa: %1\\nSize of q_sfa: %2\",\n+      tau_sfa_.size(),\n+      q_sfa_.size() ) );\n+\n+  if ( tau_stc_.size() != q_stc_.size() )\n+    throw BadProperty( String::compose(\n+      \"'tau_stc' and 'q_stc' need to have the same dimensions.\\nSize of \"\n+      \"tau_stc: %1\\nSize of q_stc: %2\",\n+      tau_stc_.size(),\n+      q_stc_.size() ) );\n+\n+  if ( g_L_ <= 0 )\n+    throw BadProperty( \"Membrane conductance must be strictly positive.\" );\n+\n+  if ( Delta_V_ <= 0 )\n+    throw BadProperty( \"Delta_V must be strictly positive.\" );\n+\n+  if ( c_m_ <= 0 )\n+    throw BadProperty( \"Capacitance must be strictly positive.\" );\n+\n+  if ( t_ref_ < 0 )\n+    throw BadProperty( \"Refractory time must not be negative.\" );\n+\n+  if ( lambda_0_ < 0 )\n+    throw BadProperty( \"lambda_0 must not be negative.\" );\n+\n+  for ( size_t i = 0; i < tau_sfa_.size(); i++ )\n+    if ( tau_sfa_[ i ] <= 0 )\n+      throw BadProperty( \"All time constants must be strictly positive.\" );\n+\n+  for ( size_t i = 0; i < tau_stc_.size(); i++ )\n+    if ( tau_stc_[ i ] <= 0 )\n+      throw BadProperty( \"All time constants must be strictly positive.\" );\n+\n+\n+  if ( tau_ex_ <= 0 || tau_in_ <= 0 )\n+    throw BadProperty( \"Synapse time constants must be strictly positive.\" );\n+}\n+\n+void\n+nest::gif_psc_exp::State_::get( DictionaryDatum& d, const Parameters_& p ) const\n+{\n+  def< double >( d, names::V_m, y3_ );    // Membrane potential\n+  def< double >( d, names::E_sfa, sfa_ ); // Adaptive threshold potential\n+  def< double >( d, names::stc, stc_ );   // Spike triggered current\n+}\n+\n+void\n+nest::gif_psc_exp::State_::set( const DictionaryDatum& d, const Parameters_& p )\n+{\n+  updateValue< double >( d, names::V_m, y3_ );\n+  sfa_stc_initialized_ =\n+    false; // vectors of the state should be initialized with new parameter set.\n+}\n+\n+nest::gif_psc_exp::Buffers_::Buffers_( gif_psc_exp& n )\n+  : logger_( n )\n+{\n+}\n+\n+nest::gif_psc_exp::Buffers_::Buffers_( const Buffers_&, gif_psc_exp& n )\n+  : logger_( n )\n+{\n+}\n+\n+/* ----------------------------------------------------------------\n+ * Default and copy constructor for node\n+ * ---------------------------------------------------------------- */\n+\n+nest::gif_psc_exp::gif_psc_exp()\n+  : Archiving_Node()\n+  , P_()\n+  , S_()\n+  , B_( *this )\n+{\n+  recordablesMap_.create();\n+}\n+\n+nest::gif_psc_exp::gif_psc_exp( const gif_psc_exp& n )\n+  : Archiving_Node( n )\n+  , P_( n.P_ )\n+  , S_( n.S_ )\n+  , B_( n.B_, *this )\n+{\n+}\n+\n+/* ----------------------------------------------------------------\n+ * Node initialization functions\n+ * ---------------------------------------------------------------- */\n+\n+void\n+nest::gif_psc_exp::init_state_( const Node& proto )\n+{\n+  const gif_psc_exp& pr = downcast< gif_psc_exp >( proto );\n+  S_ = pr.S_;\n+}\n+\n+void\n+nest::gif_psc_exp::init_buffers_()\n+{\n+  B_.spikes_ex_.clear(); // includes resize\n+  B_.spikes_in_.clear(); // includes resize\n+  B_.currents_.clear();  //!< includes resize\n+  B_.logger_.reset();    //!< includes resize\n+  Archiving_Node::clear_history();\n+}\n+\n+void\n+nest::gif_psc_exp::calibrate()\n+{\n+\n+  B_.logger_.init();\n+\n+  double_t h = Time::get_resolution().get_ms();\n+  V_.rng_ = kernel().rng_manager.get_rng( get_thread() );\n+\n+  V_.P11ex_ = std::exp( -h / P_.tau_ex_ );\n+  V_.P11in_ = std::exp( -h / P_.tau_in_ );\n+\n+  double_t tau_m = P_.c_m_ / P_.g_L_;\n+\n+  // these are determined according to a numeric stability criterion\n+  V_.P21ex_ = propagator_32( P_.tau_ex_, tau_m, P_.c_m_, h );\n+  V_.P21in_ = propagator_32( P_.tau_in_, tau_m, P_.c_m_, h );\n+\n+\n+  V_.P33_ = std::exp( -h / tau_m );\n+  V_.P30_ = 1 / P_.c_m_ * ( 1 - V_.P33_ ) * tau_m;\n+  V_.P31_ = ( 1 - V_.P33_ );\n+\n+  V_.RefractoryCounts_ = Time( Time::ms( P_.t_ref_ ) ).get_steps();\n+  assert( V_.RefractoryCounts_\n+    >= 0 ); // since t_ref_ >= 0, this can only fail in error\n+\n+  // initializing internal state\n+  if ( !S_.sfa_stc_initialized_ )\n+  {\n+    V_.P_sfa_.clear();\n+    V_.P_stc_.clear();\n+    S_.sfa_elems_.clear();\n+    S_.stc_elems_.clear();\n+\n+    for ( size_t i = 0; i < P_.tau_sfa_.size(); i++ )\n+    {\n+      V_.P_sfa_.push_back( std::exp( -h / P_.tau_sfa_[ i ] ) );\n+      S_.sfa_elems_.push_back( 0.0 );\n+    }\n+\n+    for ( size_t i = 0; i < P_.tau_stc_.size(); i++ )\n+    {\n+      V_.P_stc_.push_back( std::exp( -h / P_.tau_stc_[ i ] ) );\n+      S_.stc_elems_.push_back( 0.0 );\n+    }\n+\n+    S_.sfa_stc_initialized_ = true;\n+  }\n+}\n+\n+/* ----------------------------------------------------------------\n+ * Update and spike handling functions\n+ */\n+\n+void\n+nest::gif_psc_exp::update( Time const& origin,\n+  const long_t from,\n+  const long_t to )\n+{\n+\n+  assert(\n+    to >= 0 && ( delay ) from < kernel().connection_manager.get_min_delay() );\n+  assert( from < to );\n+\n+  double_t q_temp_;\n+\n+  for ( long_t lag = from; lag < to; ++lag )\n+  {\n+\n+    // exponential decaying stc and sfa elements\n+    q_temp_ = 0;\n+    for ( size_t i = 0; i < S_.stc_elems_.size(); i++ )\n+    {\n+\n+      q_temp_ += S_.stc_elems_[ i ];\n+","path":"models/gif_psc_exp.cpp","position":347,"original_position":347,"commit_id":"b0796071ad15ec9be078196ea07464d8ccc529ec","original_commit_id":"b0796071ad15ec9be078196ea07464d8ccc529ec","user":{"login":"hesam-setareh","id":14923377,"avatar_url":"https://avatars.githubusercontent.com/u/14923377?v=3","gravatar_id":"","url":"https://api.github.com/users/hesam-setareh","html_url":"https://github.com/hesam-setareh","followers_url":"https://api.github.com/users/hesam-setareh/followers","following_url":"https://api.github.com/users/hesam-setareh/following{/other_user}","gists_url":"https://api.github.com/users/hesam-setareh/gists{/gist_id}","starred_url":"https://api.github.com/users/hesam-setareh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hesam-setareh/subscriptions","organizations_url":"https://api.github.com/users/hesam-setareh/orgs","repos_url":"https://api.github.com/users/hesam-setareh/repos","events_url":"https://api.github.com/users/hesam-setareh/events{/privacy}","received_events_url":"https://api.github.com/users/hesam-setareh/received_events","type":"User","site_admin":false},"body":"Removed.","created_at":"2016-08-15T17:15:04Z","updated_at":"2016-08-15T17:15:04Z","html_url":"https://github.com/nest/nest-simulator/pull/261#discussion_r74796324","pull_request_url":"https://api.github.com/repos/nest/nest-simulator/pulls/261","_links":{"self":{"href":"https://api.github.com/repos/nest/nest-simulator/pulls/comments/74796324"},"html":{"href":"https://github.com/nest/nest-simulator/pull/261#discussion_r74796324"},"pull_request":{"href":"https://api.github.com/repos/nest/nest-simulator/pulls/261"}}},"pull_request":{"url":"https://api.github.com/repos/nest/nest-simulator/pulls/261","id":61817042,"html_url":"https://github.com/nest/nest-simulator/pull/261","diff_url":"https://github.com/nest/nest-simulator/pull/261.diff","patch_url":"https://github.com/nest/nest-simulator/pull/261.patch","issue_url":"https://api.github.com/repos/nest/nest-simulator/issues/261","number":261,"state":"open","locked":false,"title":"Gif models","user":{"login":"hesam-setareh","id":14923377,"avatar_url":"https://avatars.githubusercontent.com/u/14923377?v=3","gravatar_id":"","url":"https://api.github.com/users/hesam-setareh","html_url":"https://github.com/hesam-setareh","followers_url":"https://api.github.com/users/hesam-setareh/followers","following_url":"https://api.github.com/users/hesam-setareh/following{/other_user}","gists_url":"https://api.github.com/users/hesam-setareh/gists{/gist_id}","starred_url":"https://api.github.com/users/hesam-setareh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hesam-setareh/subscriptions","organizations_url":"https://api.github.com/users/hesam-setareh/orgs","repos_url":"https://api.github.com/users/hesam-setareh/repos","events_url":"https://api.github.com/users/hesam-setareh/events{/privacy}","received_events_url":"https://api.github.com/users/hesam-setareh/received_events","type":"User","site_admin":false},"body":"Implementing generalized integrate-and-fire (GIF) neuron model for nest in four versions:\r\ngif_psc_exp\r\ngif_psc_exp_multisynapse\r\ngif_cond_exp\r\ngif_cond_exp_multisynapse\r\n\r\nAnd also a unittest for each version.","created_at":"2016-03-05T16:48:06Z","updated_at":"2016-08-15T17:15:04Z","closed_at":null,"merged_at":null,"merge_commit_sha":"81f2a627de27e7a8b9ed6618fc674570d6e4e904","assignee":{"login":"heplesser","id":1059644,"avatar_url":"https://avatars.githubusercontent.com/u/1059644?v=3","gravatar_id":"","url":"https://api.github.com/users/heplesser","html_url":"https://github.com/heplesser","followers_url":"https://api.github.com/users/heplesser/followers","following_url":"https://api.github.com/users/heplesser/following{/other_user}","gists_url":"https://api.github.com/users/heplesser/gists{/gist_id}","starred_url":"https://api.github.com/users/heplesser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/heplesser/subscriptions","organizations_url":"https://api.github.com/users/heplesser/orgs","repos_url":"https://api.github.com/users/heplesser/repos","events_url":"https://api.github.com/users/heplesser/events{/privacy}","received_events_url":"https://api.github.com/users/heplesser/received_events","type":"User","site_admin":false},"assignees":[{"login":"heplesser","id":1059644,"avatar_url":"https://avatars.githubusercontent.com/u/1059644?v=3","gravatar_id":"","url":"https://api.github.com/users/heplesser","html_url":"https://github.com/heplesser","followers_url":"https://api.github.com/users/heplesser/followers","following_url":"https://api.github.com/users/heplesser/following{/other_user}","gists_url":"https://api.github.com/users/heplesser/gists{/gist_id}","starred_url":"https://api.github.com/users/heplesser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/heplesser/subscriptions","organizations_url":"https://api.github.com/users/heplesser/orgs","repos_url":"https://api.github.com/users/heplesser/repos","events_url":"https://api.github.com/users/heplesser/events{/privacy}","received_events_url":"https://api.github.com/users/heplesser/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/nest/nest-simulator/pulls/261/commits","review_comments_url":"https://api.github.com/repos/nest/nest-simulator/pulls/261/comments","review_comment_url":"https://api.github.com/repos/nest/nest-simulator/pulls/comments{/number}","comments_url":"https://api.github.com/repos/nest/nest-simulator/issues/261/comments","statuses_url":"https://api.github.com/repos/nest/nest-simulator/statuses/b0796071ad15ec9be078196ea07464d8ccc529ec","head":{"label":"hesam-setareh:master","ref":"master","sha":"b0796071ad15ec9be078196ea07464d8ccc529ec","user":{"login":"hesam-setareh","id":14923377,"avatar_url":"https://avatars.githubusercontent.com/u/14923377?v=3","gravatar_id":"","url":"https://api.github.com/users/hesam-setareh","html_url":"https://github.com/hesam-setareh","followers_url":"https://api.github.com/users/hesam-setareh/followers","following_url":"https://api.github.com/users/hesam-setareh/following{/other_user}","gists_url":"https://api.github.com/users/hesam-setareh/gists{/gist_id}","starred_url":"https://api.github.com/users/hesam-setareh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hesam-setareh/subscriptions","organizations_url":"https://api.github.com/users/hesam-setareh/orgs","repos_url":"https://api.github.com/users/hesam-setareh/repos","events_url":"https://api.github.com/users/hesam-setareh/events{/privacy}","received_events_url":"https://api.github.com/users/hesam-setareh/received_events","type":"User","site_admin":false},"repo":{"id":53140643,"name":"nest-simulator","full_name":"hesam-setareh/nest-simulator","owner":{"login":"hesam-setareh","id":14923377,"avatar_url":"https://avatars.githubusercontent.com/u/14923377?v=3","gravatar_id":"","url":"https://api.github.com/users/hesam-setareh","html_url":"https://github.com/hesam-setareh","followers_url":"https://api.github.com/users/hesam-setareh/followers","following_url":"https://api.github.com/users/hesam-setareh/following{/other_user}","gists_url":"https://api.github.com/users/hesam-setareh/gists{/gist_id}","starred_url":"https://api.github.com/users/hesam-setareh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hesam-setareh/subscriptions","organizations_url":"https://api.github.com/users/hesam-setareh/orgs","repos_url":"https://api.github.com/users/hesam-setareh/repos","events_url":"https://api.github.com/users/hesam-setareh/events{/privacy}","received_events_url":"https://api.github.com/users/hesam-setareh/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/hesam-setareh/nest-simulator","description":"The NEST simulator","fork":true,"url":"https://api.github.com/repos/hesam-setareh/nest-simulator","forks_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/forks","keys_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/teams","hooks_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/hooks","issue_events_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/issues/events{/number}","events_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/events","assignees_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/assignees{/user}","branches_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/branches{/branch}","tags_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/tags","blobs_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/git/refs{/sha}","trees_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/statuses/{sha}","languages_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/languages","stargazers_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/stargazers","contributors_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/contributors","subscribers_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/subscribers","subscription_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/subscription","commits_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/commits{/sha}","git_commits_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/git/commits{/sha}","comments_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/comments{/number}","issue_comment_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/issues/comments{/number}","contents_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/contents/{+path}","compare_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/merges","archive_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/downloads","issues_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/issues{/number}","pulls_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/pulls{/number}","milestones_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/milestones{/number}","notifications_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/labels{/name}","releases_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/releases{/id}","deployments_url":"https://api.github.com/repos/hesam-setareh/nest-simulator/deployments","created_at":"2016-03-04T14:25:49Z","updated_at":"2016-03-04T14:25:53Z","pushed_at":"2016-08-05T10:14:07Z","git_url":"git://github.com/hesam-setareh/nest-simulator.git","ssh_url":"git@github.com:hesam-setareh/nest-simulator.git","clone_url":"https://github.com/hesam-setareh/nest-simulator.git","svn_url":"https://github.com/hesam-setareh/nest-simulator","homepage":null,"size":24120,"stargazers_count":0,"watchers_count":0,"language":"C++","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":"nest:master","ref":"master","sha":"ff3cffba8c0dafddcbeba2b662ec586cb4753afa","user":{"login":"nest","id":2377019,"avatar_url":"https://avatars.githubusercontent.com/u/2377019?v=3","gravatar_id":"","url":"https://api.github.com/users/nest","html_url":"https://github.com/nest","followers_url":"https://api.github.com/users/nest/followers","following_url":"https://api.github.com/users/nest/following{/other_user}","gists_url":"https://api.github.com/users/nest/gists{/gist_id}","starred_url":"https://api.github.com/users/nest/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nest/subscriptions","organizations_url":"https://api.github.com/users/nest/orgs","repos_url":"https://api.github.com/users/nest/repos","events_url":"https://api.github.com/users/nest/events{/privacy}","received_events_url":"https://api.github.com/users/nest/received_events","type":"Organization","site_admin":false},"repo":{"id":33933892,"name":"nest-simulator","full_name":"nest/nest-simulator","owner":{"login":"nest","id":2377019,"avatar_url":"https://avatars.githubusercontent.com/u/2377019?v=3","gravatar_id":"","url":"https://api.github.com/users/nest","html_url":"https://github.com/nest","followers_url":"https://api.github.com/users/nest/followers","following_url":"https://api.github.com/users/nest/following{/other_user}","gists_url":"https://api.github.com/users/nest/gists{/gist_id}","starred_url":"https://api.github.com/users/nest/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nest/subscriptions","organizations_url":"https://api.github.com/users/nest/orgs","repos_url":"https://api.github.com/users/nest/repos","events_url":"https://api.github.com/users/nest/events{/privacy}","received_events_url":"https://api.github.com/users/nest/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/nest/nest-simulator","description":"The NEST simulator","fork":false,"url":"https://api.github.com/repos/nest/nest-simulator","forks_url":"https://api.github.com/repos/nest/nest-simulator/forks","keys_url":"https://api.github.com/repos/nest/nest-simulator/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nest/nest-simulator/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nest/nest-simulator/teams","hooks_url":"https://api.github.com/repos/nest/nest-simulator/hooks","issue_events_url":"https://api.github.com/repos/nest/nest-simulator/issues/events{/number}","events_url":"https://api.github.com/repos/nest/nest-simulator/events","assignees_url":"https://api.github.com/repos/nest/nest-simulator/assignees{/user}","branches_url":"https://api.github.com/repos/nest/nest-simulator/branches{/branch}","tags_url":"https://api.github.com/repos/nest/nest-simulator/tags","blobs_url":"https://api.github.com/repos/nest/nest-simulator/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nest/nest-simulator/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nest/nest-simulator/git/refs{/sha}","trees_url":"https://api.github.com/repos/nest/nest-simulator/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nest/nest-simulator/statuses/{sha}","languages_url":"https://api.github.com/repos/nest/nest-simulator/languages","stargazers_url":"https://api.github.com/repos/nest/nest-simulator/stargazers","contributors_url":"https://api.github.com/repos/nest/nest-simulator/contributors","subscribers_url":"https://api.github.com/repos/nest/nest-simulator/subscribers","subscription_url":"https://api.github.com/repos/nest/nest-simulator/subscription","commits_url":"https://api.github.com/repos/nest/nest-simulator/commits{/sha}","git_commits_url":"https://api.github.com/repos/nest/nest-simulator/git/commits{/sha}","comments_url":"https://api.github.com/repos/nest/nest-simulator/comments{/number}","issue_comment_url":"https://api.github.com/repos/nest/nest-simulator/issues/comments{/number}","contents_url":"https://api.github.com/repos/nest/nest-simulator/contents/{+path}","compare_url":"https://api.github.com/repos/nest/nest-simulator/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nest/nest-simulator/merges","archive_url":"https://api.github.com/repos/nest/nest-simulator/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nest/nest-simulator/downloads","issues_url":"https://api.github.com/repos/nest/nest-simulator/issues{/number}","pulls_url":"https://api.github.com/repos/nest/nest-simulator/pulls{/number}","milestones_url":"https://api.github.com/repos/nest/nest-simulator/milestones{/number}","notifications_url":"https://api.github.com/repos/nest/nest-simulator/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nest/nest-simulator/labels{/name}","releases_url":"https://api.github.com/repos/nest/nest-simulator/releases{/id}","deployments_url":"https://api.github.com/repos/nest/nest-simulator/deployments","created_at":"2015-04-14T13:39:12Z","updated_at":"2016-08-05T14:06:36Z","pushed_at":"2016-08-15T15:02:40Z","git_url":"git://github.com/nest/nest-simulator.git","ssh_url":"git@github.com:nest/nest-simulator.git","clone_url":"https://github.com/nest/nest-simulator.git","svn_url":"https://github.com/nest/nest-simulator","homepage":null,"size":29100,"stargazers_count":83,"watchers_count":83,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":83,"mirror_url":null,"open_issues_count":143,"forks":83,"open_issues":143,"watchers":83,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/nest/nest-simulator/pulls/261"},"html":{"href":"https://github.com/nest/nest-simulator/pull/261"},"issue":{"href":"https://api.github.com/repos/nest/nest-simulator/issues/261"},"comments":{"href":"https://api.github.com/repos/nest/nest-simulator/issues/261/comments"},"review_comments":{"href":"https://api.github.com/repos/nest/nest-simulator/pulls/261/comments"},"review_comment":{"href":"https://api.github.com/repos/nest/nest-simulator/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/nest/nest-simulator/pulls/261/commits"},"statuses":{"href":"https://api.github.com/repos/nest/nest-simulator/statuses/b0796071ad15ec9be078196ea07464d8ccc529ec"}}}}
{"actor":{"display_login":"hesam-setareh"}}