示例#1
0
 //Constructors
 /// <summary>
 /// Creates an initialized instance
 /// </summary>
 /// <param name="spectralRadius">Spectral radius</param>
 /// <param name="inputSynCfg">Input synapse settings</param>
 /// <param name="indifferentSynCfg">Indifferent synapse settings</param>
 public SynapseATSettings(double spectralRadius = DefaultSpectralRadiusNum,
                          SynapseATInputSettings inputSynCfg             = null,
                          SynapseATIndifferentSettings indifferentSynCfg = null
                          )
 {
     SpectralRadius    = spectralRadius;
     InputSynCfg       = inputSynCfg == null ? new SynapseATInputSettings() : (SynapseATInputSettings)inputSynCfg.DeepClone();
     IndifferentSynCfg = indifferentSynCfg == null ? new SynapseATIndifferentSettings() : (SynapseATIndifferentSettings)indifferentSynCfg.DeepClone();
     Check();
     return;
 }
示例#2
0
        /// <summary>
        /// Creates an initialized instance.
        /// </summary>
        /// <param name="elem">Xml element containing the initialization settings</param>
        public SynapseATSettings(XElement elem)
        {
            //Validation
            XElement settingsElem = Validate(elem, XsdTypeName);
            //Parsing
            string attrValue = settingsElem.Attribute("spectralRadius").Value;

            SpectralRadius = attrValue == NASpectralRadiusCode ? NASpectralRadiusNum : double.Parse(attrValue, CultureInfo.InvariantCulture);
            XElement inputSynElem = settingsElem.Elements("input").FirstOrDefault();

            InputSynCfg = inputSynElem == null ? new SynapseATInputSettings() : new SynapseATInputSettings(inputSynElem);
            XElement indifferentSynElem = settingsElem.Elements("indifferent").FirstOrDefault();

            IndifferentSynCfg = indifferentSynElem == null ? new SynapseATIndifferentSettings() : new SynapseATIndifferentSettings(indifferentSynElem);
            Check();
            return;
        }
示例#3
0
 /// <summary>
 /// The deep copy constructor
 /// </summary>
 /// <param name="source">Source instance</param>
 public SynapseATIndifferentSettings(SynapseATIndifferentSettings source)
     : this(source.DelayMethod, source.MaxDelay, source.AnalogSourceCfg, source.SpikingSourceCfg)
 {
     return;
 }