@@ -60,7 +60,8 @@ void ReportHandler::create_report(double dt, double tstop, double delay) {
6060 register_custom_report (nt, m_report_config, vars_to_report);
6161 break ;
6262 case LFPReport:
63- mapinfo->_lfp .resize (12 );
63+ // 1 lfp value per gid
64+ mapinfo->_lfp .resize (nt.ncell );
6465 vars_to_report = get_lfp_vars_to_report (nt, m_report_config, mapinfo->_lfp .data ());
6566 is_soma_target = m_report_config.section_type == SectionType::Soma ||
6667 m_report_config.section_type == SectionType::Cell;
@@ -75,7 +76,8 @@ void ReportHandler::create_report(double dt, double tstop, double delay) {
7576 t,
7677 vars_to_report,
7778 m_report_config.output_path .data (),
78- m_report_config.report_dt );
79+ m_report_config.report_dt ,
80+ m_report_config.type );
7981 report_event->send (t, net_cvode_instance, &nt);
8082 m_report_events.push_back (std::move (report_event));
8183 }
@@ -353,25 +355,15 @@ VarsToReport ReportHandler::get_lfp_vars_to_report(const NrnThread& nt,
353355 ReportConfiguration& report,
354356 double * report_variable) const {
355357 VarsToReport vars_to_report;
356- /* const auto* mapinfo = static_cast<NrnThreadMappingInfo*>(nt.mapping);
357- if (!mapinfo) {
358- std::cerr << "[LFP] Error : mapping information is missing for a Cell group "
359- << nt.ncell << '\n';
360- nrn_abort(1);
361- }*/
362358 for (int i = 0 ; i < nt.ncell ; i++) {
363359 int gid = nt.presyns [i].gid_ ;
364360 if (report.target .find (gid) == report.target .end ()) {
365361 continue ;
366362 }
367363
368364 std::vector<VarWithMapping> to_report;
369- // Add all electrodes to the first gid for now
370- std::vector<int > electrode_ids = {0 };
371- for (const auto & electrode_id : electrode_ids) {
372- double * variable = report_variable + electrode_id;
373- to_report.push_back (VarWithMapping (electrode_id, variable));
374- }
365+ double * variable = report_variable + i;
366+ to_report.push_back (VarWithMapping (i, variable));
375367 vars_to_report[gid] = to_report;
376368 }
377369 return vars_to_report;
0 commit comments