simulation-metrics
Use this skill when calculating control system performance metrics such as rise time, overshoot percentage, steady-state error, or settling time for evaluating simulation results.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Use this skill when calculating control system performance metrics such as rise time, overshoot percentage, steady-state error, or settling time for evaluating simulation results.
How to use
Przygotuj dane wyjściowe z symulacji w postaci listy słowników, gdzie każdy wiersz zawiera klucze 'time' (czas) i 'value' (wartość zmierzona). Upewnij się, że masz również zdefiniowaną wartość docelową (target), do której system powinien dążyć.
Zaimportuj funkcje metryki z tego skilla: rise_time, overshoot_percent, steady_state_error oraz settling_time. Każda funkcja przyjmuje listy czasów i wartości oraz wartość docelową.
Aby obliczyć czas narastania, wywołaj rise_time(times, values, target), gdzie times to lista czasów, values to lista wartości, a target to wartość docelowa. Funkcja zwróci czas przejścia od 10% do 90% wartości docelowej.
Aby uzyskać przekroczenie procentowe, użyj overshoot_percent(values, target). Funkcja porówna maksymalną wartość w danych z wartością docelową i zwróci procentowe przekroczenie.
Do pomiaru błędu stanu ustalonego wywołaj steady_state_error(values, target), która oblicza średnią z ostatniej 10% danych i porównuje ją z wartością docelową. Zwraca bezwzględną różnicę.
Na koniec oblicz czas ustalania się za pomocą settling_time(times, values, target, tolerance), gdzie tolerance to domyślnie 0.02 (2% pasmo). Funkcja zwróci czas, w którym system po raz ostatni opuszcza pasmo tolerancji wokół wartości docelowej.