Esempio n. 1
0
 //Constructors
 /// <summary>
 /// Creates an initialized instance
 /// </summary>
 /// <param name="name">Name of the neuron group</param>
 /// <param name="relShare">Specifies how big relative portion of pool's neurons is formed by this group of the neurons</param>
 /// <param name="activationCfg">Common activation function settings of the groupped neurons</param>
 /// <param name="homogenousExcitabilityCfg">Configuration of the neuron's homogenous excitability</param>
 /// <param name="biasCfg">Each neuron within the group receives constant input bias. Value of the neuron's bias is driven by this random settings</param>
 /// <param name="predictorsCfg">Configuration of the predictors</param>
 public SpikingNeuronGroupSettings(string name,
                                   double relShare,
                                   RCNetBaseSettings activationCfg,
                                   HomogenousExcitabilitySettings homogenousExcitabilityCfg = null,
                                   RandomValueSettings biasCfg      = null,
                                   PredictorsSettings predictorsCfg = null
                                   )
 {
     Name                      = name;
     RelShare                  = relShare;
     ActivationCfg             = activationCfg.DeepClone();
     HomogenousExcitabilityCfg = homogenousExcitabilityCfg == null ? new HomogenousExcitabilitySettings() : (HomogenousExcitabilitySettings)homogenousExcitabilityCfg.DeepClone();
     BiasCfg                   = biasCfg == null ? null : (RandomValueSettings)biasCfg.DeepClone();
     PredictorsCfg             = predictorsCfg == null ? null : (PredictorsSettings)predictorsCfg.DeepClone();
     Check();
     return;
 }
Esempio n. 2
0
 /// <summary>
 /// The deep copy constructor.
 /// </summary>
 /// <param name="source">The source instance.</param>
 public HomogenousExcitabilitySettings(HomogenousExcitabilitySettings source)
     : this(source.ExcitatoryStrength, source.InputRatio, source.InhibitoryRatio)
 {
     return;
 }