/// <summary>
        /// Create states
        /// </summary>
        /// <param name="method"></param>
        public override void CreateStates(IntegrationMethod method)
        {
            if (method == null)
            {
                throw new ArgumentNullException(nameof(method));
            }

            // We just need a history without integration here
            StateChargeBe = method.CreateDerivative();
            StateChargeBc = method.CreateDerivative();
            StateChargeCs = method.CreateDerivative();

            // Spice 3f5 does not include this state for LTE calculations
            StateChargeBx = method.CreateDerivative(false);

            StateExcessPhaseCurrentBc = method.CreateHistory();
        }
예제 #2
0
        /// <summary>
        /// Create states
        /// </summary>
        /// <param name="method"></param>
        public override void CreateStates(IntegrationMethod method)
        {
            if (method == null)
            {
                throw new ArgumentNullException(nameof(method));
            }

            _vgs   = method.CreateHistory();
            _vds   = method.CreateHistory();
            _vbs   = method.CreateHistory();
            _capgs = method.CreateHistory();
            _capgd = method.CreateHistory();
            _capgb = method.CreateHistory();
            _qgs   = method.CreateDerivative();
            _qgd   = method.CreateDerivative();
            _qgb   = method.CreateDerivative();
            _qbd   = method.CreateDerivative();
            _qbs   = method.CreateDerivative();
        }
예제 #3
0
        /// <summary>
        /// Create states
        /// </summary>
        /// <param name="method"></param>
        public override void CreateStates(IntegrationMethod method)
        {
            if (method == null)
            {
                throw new ArgumentNullException(nameof(method));
            }

            VoltageBs = method.CreateHistory();
            VoltageGs = method.CreateHistory();
            VoltageDs = method.CreateHistory();
            CapGs     = method.CreateHistory();
            CapGd     = method.CreateHistory();
            CapGb     = method.CreateHistory();
            ChargeGs  = method.CreateDerivative();
            ChargeGd  = method.CreateDerivative();
            ChargeGb  = method.CreateDerivative();
            ChargeBd  = method.CreateDerivative();
            ChargeBs  = method.CreateDerivative();
        }