48 std::stringstream oss;
59 double sparseness = 0.1;
67 double poisson_rate = 20.0e3;
83 po::options_description desc(
"Allowed options");
85 (
"help",
"produce help message")
86 (
"simtime", po::value<double>(),
"duration of simulation")
87 (
"gamma", po::value<double>(),
"gamma factor for inhibitory weight")
88 (
"lambda", po::value<double>(),
"learning rate")
89 (
"nu", po::value<double>(),
"the external firing rate nu")
90 (
"dir", po::value<string>(),
"dir from file")
91 (
"load", po::value<string>(),
"load from file")
92 (
"save", po::value<string>(),
"save to file")
93 (
"fee", po::value<string>(),
"file with EE connections")
94 (
"fei", po::value<string>(),
"file with EI connections")
95 (
"fie", po::value<string>(),
"file with IE connections")
96 (
"fii", po::value<string>(),
"file with II connections")
100 po::store(po::parse_command_line(ac, av, desc), vm);
103 if (vm.count(
"help")) {
104 std::cout << desc <<
"\n";
108 if (vm.count(
"simtime")) {
109 simtime = vm[
"simtime"].as<
double>();
112 if (vm.count(
"gamma")) {
113 gamma = vm[
"gamma"].as<
double>();
116 if (vm.count(
"lambda")) {
117 lambda = vm[
"lambda"].as<
double>();
120 if (vm.count(
"nu")) {
121 poisson_rate = vm[
"nu"].as<
double>();
124 if (vm.count(
"dir")) {
125 dir = vm[
"dir"].as<
string>();
128 if (vm.count(
"load")) {
129 load = vm[
"load"].as<
string>();
132 if (vm.count(
"save")) {
133 save = vm[
"save"].as<
string>();
136 if (vm.count(
"fee")) {
137 fwmat_ee = vm[
"fee"].as<
string>();
140 if (vm.count(
"fie")) {
141 fwmat_ie = vm[
"fie"].as<
string>();
144 if (vm.count(
"fei")) {
145 fwmat_ei = vm[
"fei"].as<
string>();
148 if (vm.count(
"fii")) {
149 fwmat_ii = vm[
"fii"].as<
string>();
152 catch(std::exception& e) {
153 std::cerr <<
"error: " << e.what() <<
"\n";
157 std::cerr <<
"Exception of unknown type!\n";
161 oss << dir <<
"/brunel." <<
sys->
mpi_rank() <<
".";
162 string outputfile = oss.str();
170 neurons_e->
thr = 20e-3;
177 neurons_i->
thr = 20e-3;
231 msg =
"Setting up monitors ...";
234 std::stringstream filename;
235 filename << outputfile <<
"e.ras";
240 filename << outputfile <<
"i.ras";
256 if ( !load.empty() ) {
277 if (!
sys->run(simtime,
true))
280 if ( !save.empty() ) {
AurynFloat thr
Definition: IafPscDeltaGroup.h:57
void auryn_free()
Cleanly shuts down Auryn simulation environment.
Definition: auryn_global.cpp:107
Current based synapse. Adds the transmitted quantity directly to membrane voltage.
Definition: auryn_definitions.h:143
Stimulator class to inject timeseries of currents NeuronGroups.
Definition: PoissonStimulator.h:47
void set_alpha(AurynWeight a)
Definition: STDPwdConnection.cpp:172
unsigned int mpi_rank()
Returns current rank.
Definition: System.cpp:1009
void load_network_state(std::string basename)
Loads network state from a netstate file.
Definition: System.cpp:812
void set_tau_ref(AurynFloat tau_ref)
Definition: IafPscDeltaGroup.cpp:64
A Checker class that tracks population firing rate as a moving average and breaks a run if it goes ou...
Definition: RateChecker.h:59
virtual bool load_from_complete_file(string filename)
Loads weight matrix from a single file.
Definition: SparseConnection.cpp:921
The base class to create sparse random connections.
Definition: SparseConnection.h:66
Logger * logger
Global pointer to instance of Logger which needs to be initialized in every simulation main program...
Definition: auryn_global.cpp:36
AurynFloat e_reset
Definition: IafPscDeltaGroup.h:57
The standard Monitor object to record spikes from a SpikingGroup and write them to a text file...
Definition: SpikeMonitor.h:52
void sanity_check()
Quick an dirty function that checks if all units on the local rank are connected. ...
Definition: SparseConnection.cpp:537
Conductance based neuron model with absolute refractoriness as used in Vogels and Abbott 2005...
Definition: IafPscDeltaGroup.h:38
void set_lambda(AurynWeight l)
Definition: STDPwdConnection.cpp:179
AurynFloat e_rest
Definition: IafPscDeltaGroup.h:57
void auryn_abort(int errcode)
Terminates Auryn simulation abnormally.
Definition: auryn_global.cpp:113
System * sys
Global pointer to instance of System which needs to be initialized in every simulation main program...
Definition: auryn_global.cpp:37
Doublet STDP All-to-All as implemented in NEST as stdp_synapse_hom.
Definition: STDPwdConnection.h:47
void auryn_init(int ac, char *av[], string dir, string simulation_name, string logfile_prefix, LogMessageType filelog_level, LogMessageType consolelog_level)
Initalizes MPI and the Auryn simulation environment.
Definition: auryn_global.cpp:84
void set_tau_mem(AurynFloat taum)
Definition: IafPscDeltaGroup.cpp:108
void msg(std::string text, LogMessageType type=NOTIFICATION, bool global=false, int line=-1, std::string srcfile="")
Definition: Logger.cpp:74
void set_max_weight(AurynWeight w)
Sets maximum weight (for plastic connections).
Definition: STDPwdConnection.cpp:200
void save_network_state(std::string basename)
Saves network state to a netstate file.
Definition: System.cpp:694
void set_transmitter(AurynStateVector *ptr)
Same as set_target.
unsigned int NeuronID
NeuronID is an unsigned integeger type used to index neurons in Auryn.
Definition: auryn_definitions.h:151
void set_name(std::string name)
Set name of connection.
Definition: Connection.cpp:82