/// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            provider.ThrowIfNull(nameof(provider));

            // Get parameters
            BaseParameters  = provider.GetParameterSet <BaseParameters>();
            ModelParameters = provider.GetParameterSet <ModelBaseParameters>("model");

            // Get behaviors
            ModelTemperature = provider.GetBehavior <ModelTemperatureBehavior>("model");
        }
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            base.Setup(simulation, provider);
            provider.ThrowIfNull(nameof(provider));

            // Get parameters
            _bp = provider.GetParameterSet <BaseParameters>();

            // Get behaviors
            _base = provider.GetBehavior <BiasingBehavior>();
        }
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            _bp  = provider.GetParameterSet <BaseParameters>();
            _mbp = provider.GetParameterSet <ModelBaseParameters>("model");

            // Get behaviors
            _temp      = provider.GetBehavior <TemperatureBehavior>();
            _load      = provider.GetBehavior <LoadBehavior>();
            _modeltemp = provider.GetBehavior <ModelTemperatureBehavior>("model");

            if (simulation is TimeSimulation ts)
            {
                _method = ts.Method;
            }
        }
Beispiel #4
0
        /// <summary>
        /// Setup the behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            _bp = provider.GetParameterSet <BaseParameters>();

            // Get behaviors
            _vsrcload = provider.GetBehavior <VoltageSourceBehaviors.LoadBehavior>("control");
        }
Beispiel #5
0
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            BaseParameters = provider.GetParameterSet <BaseParameters>();

            // Get behaviors (0 = CCCS behaviors, 1 = VSRC behaviors)
            VoltageLoad = provider.GetBehavior <VoltageSourceBehaviors.BiasingBehavior>("control");
        }
Beispiel #6
0
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="provider">Data provider</param>
        public override void Setup(SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            _bp = provider.GetParameterSet <BaseParameters>("entity");

            // Get behaviors
            _load = provider.GetBehavior <LoadBehavior>("entity");
        }
Beispiel #7
0
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get configurations
            _baseConfig = simulation.Configurations.Get <BaseConfiguration>();

            // Get parameters
            _bp  = provider.GetParameterSet <BaseParameters>();
            _mbp = provider.GetParameterSet <ModelBaseParameters>("model");

            // Get behaviors
            _temp      = provider.GetBehavior <TemperatureBehavior>();
            _modeltemp = provider.GetBehavior <ModelTemperatureBehavior>("model");

            // Reset
            SaturationVoltageDs = 0.0;
            Von = 0.0;
        }
        /// <summary>
        /// Setup the behavior for the specified simulation.
        /// </summary>
        /// <param name="simulation">The simulation.</param>
        /// <param name="provider">The provider.</param>
        /// <exception cref="ArgumentNullException">provider</exception>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            BaseParameters  = provider.GetParameterSet <BaseParameters>();
            ModelParameters = provider.GetParameterSet <ModelBaseParameters>("model");

            // Get behaviors
            ModelTemperature = provider.GetBehavior <ModelTemperatureBehavior>("model");
        }
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            base.Setup(simulation, provider);
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            _bp = provider.GetParameterSet <BaseParameters>();

            // Get behaviors
            _base = provider.GetBehavior <BiasingBehavior>();
        }
Beispiel #10
0
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="provider">Data provider</param>
        public override void Setup(SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            _bp  = provider.GetParameterSet <BaseParameters>("entity");
            _mbp = provider.GetParameterSet <ModelBaseParameters>("model");

            // Get behaviors
            _modeltemp = provider.GetBehavior <ModelTemperatureBehavior>("model");
        }
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            _bp  = provider.GetParameterSet <BaseParameters>();
            _mbp = provider.GetParameterSet <ModelBaseParameters>("model");

            // Get behaviors
            _modelload = provider.GetBehavior <ModelLoadBehavior>("model");
        }
Beispiel #12
0
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="provider">Provider</param>
        public override void Setup(SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            _bp  = provider.GetParameterSet <BaseParameters>("entity");
            _mbp = provider.GetParameterSet <ModelBaseParameters>("model");

            // TODO: This should be part of the parameter...
            _mbp.Hysteresis.RawValue = Math.Abs(_mbp.Hysteresis.RawValue);

            // Get behaviors
            _modelload = provider.GetBehavior <ModelLoadBehavior>("model");
        }
        /// <summary>
        /// Setup the behavior
        /// </summary>
        /// <param name="simulation">Simulation</param>
        /// <param name="provider">Data provider</param>
        public override void Setup(Simulation simulation, SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            var ap = provider.GetParameterSet <FrequencyParameters>();

            // Calculate AC vector
            var radians = ap.AcPhase * Math.PI / 180.0;

            Ac = new Complex(ap.AcMagnitude * Math.Cos(radians), ap.AcMagnitude * Math.Sin(radians));

            // Get behaviors
            var load = provider.GetBehavior <LoadBehavior>();

            _branchEq = load.BranchEq;
        }
Beispiel #14
0
        /// <summary>
        /// Setup behavior
        /// </summary>
        /// <param name="provider">Data provider</param>
        public override void Setup(SetupDataProvider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            // Get parameters
            _bp = provider.GetParameterSet <BaseParameters>("entity");

            // Get behaviors
            _load = provider.GetBehavior <LoadBehavior>("entity");

            // Clear all events
            if (UpdateFlux != null)
            {
                foreach (var inv in UpdateFlux.GetInvocationList())
                {
                    UpdateFlux -= (EventHandler <UpdateFluxEventArgs>)inv;
                }
            }
        }