getx0

Сопоставьте начальные условия от mechss возразите против sparss объект

    Описание

    пример

    x0 = getx0(sys,q0,dq0) вычисляет соответствующее начальное условие x0 для эквивалентной разреженной модели первого порядка с помощью начальных условий для смещения q0 и скорость dq0 с непрерывного времени разреженная модель sys второго порядка. Можно не использовать вторые и третьи входные параметры когда q0 и dq0 нуль. Выход, x0=[q0dq0]=[q(0)dqdt(0)] когда [sys.M;sys.G] матрицы не имеют никаких нулевых столбцов.

    В общем случае состояния sparss модель x=[qdq(jnz)] где jnz является индексами ненулевых столбцов [sys.M;sys.G]. Получившееся количество состояний nx nx=nq+numel(jnz)2nq где nq является количеством узлов в mechss объект sys.

    пример

    x0 = getx0(sys,q1,q2) вычисляет соответствующее начальное условие с помощью начальных значений q1 = q[k] и q2 = q[k+1] для систем дискретного времени. Вторые и третьи входные параметры могут быть не использованы когда q0 и dq0 нуль. Выход, x0=[q1q2]=[q[k]q[k+1]] когда M и G матрицы mechss модель sys не имеет никаких нулевых столбцов.

    Примеры

    свернуть все

    В данном примере считайте непрерывное время разреженной моделью второго порядка с 108 узлами. Векторы-строки q0 и dq0 начальные условия для смещения и скорости, соответственно. Векторы q0 и dq0 имейте тот же размер как количество узлов в sys.

    Загрузите данные в sparseSOC.mat и найдите начальные условия для эквивалентной разреженной модели первого порядка с помощью getx0.

    load('sparseSOC.mat','sys','q0','dq0');
    x0 = getx0(sys,q0,dq0);
    size(x0)
    ans = 1×2
    
       216     1
    
    

    В этом случае, векторный x0 содержит 216 состояний, с тех пор x0=[q0dq0]Формула условия начальной буквы непрерывного времени.

    В данном примере считайте дискретное время разреженной моделью второго порядка с 7 102 узлами. Векторы-строки q1 и q2 начальные условия для k и k+1 временные шаги, соответственно. Векторы q1 и q2 имейте тот же размер как количество узлов в sys.

    Загрузите данные в sparseSOD.mat и найдите начальные условия в течение эквивалентного дискретного времени разреженной моделью первого порядка с помощью getx0.

    load('sparseSOD.mat','sys','q1','q2');
    x0 = getx0(sys,q1,q2);
    size(x0)
    ans = 1×2
    
           14204           1
    
    

    В этом случае, векторный x0 содержит 14 204 состояния с тех пор x0=[q1q2]Формула условия начальной буквы непрерывного времени.

    Входные параметры

    свернуть все

    Непрерывное время или дискретное время разреженная модель второго порядка, которая будет преобразована в разреженную модель первого порядка в виде mechss объект модели.

    Для получения дополнительной информации смотрите mechss страница с описанием.

    Начальные значения вектора смещения в виде вектора-строки из длины Nq, где Nq количество состояний в непрерывное время разреженная модель sys второго порядка.

    Начальные значения вектора скорости в виде вектора-строки из длины Nq, где Nq количество состояний в непрерывное время разреженная модель sys второго порядка.

    Начальные значения вектора состояния в kВ виде вектора-строки из длины Nq, где Nq количество состояний в непрерывное время разреженная модель sys второго порядка. Другими словами, q1 = q[k].

    Начальные значения вектора состояния в kВ виде вектора-строки из длины Nq, где Nq количество состояний в непрерывное время разреженная модель sys второго порядка. Другими словами, q2 = q[k+1].

    Выходные аргументы

    свернуть все

    Сопоставленные начальные условия для эквивалентной разреженной модели первого порядка, возвращенной как массив типа double. Когда большая матрица M и скорость к выходной матрице G из mechss объект не содержит нулевых столбцов, затем:

    • x0=[q0dq0]=[q(0)dqdt(0)] для систем непрерывного времени.

    • x0=[q1q2]=[q[k]q[k+1]] для систем дискретного времени.

    Введенный в R2020b