Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Математики SCILAB






SCILAB – это система компьютерной математики, которая предназначена для выполнения инженерных и научных вычислений, таких как:

- решение нелинейных уравнений и систем;

- решение задач линейной алгебры;

- решение задач оптимизации;

- дифференцирование и интегрирование;

- задачи обработка экспериментальных данных (интерполяция и аппроксимация,

- метод наименьших квадратов);

- решение обыкновенных дифференциальных уравнений и систем.

Кроме того, SCILAB предоставляет широкие возможности по созданию и редактированию различных видов графиков и поверхностей. Не смотря на то, что система SCILAB содержит достаточное количество встроенных команд, операторов и функций, отличительная ее черта это гибкость. Пользователь может создать любую новую команду или функцию, а затем использовать ее наравне со встроенными. К тому же, система имеет достаточно мощный собственный язык программирования высокого уровня, что говорит о возможности решения новых задач.

Рекомендуемый порядок работы с системой SCILAB:

1) запуск системы с помощью файла WScilex.exe (результат – отображение основного окна системы);

2) запуск редактора с помощью пункта меню Editor основного окна системы (результат – отображение окна редактора);

3) ввод и редактирование SCILAB программы в окне редактора (результат – текст программы в окне редактора);

4) выполнение SCILAB программы с помощью пункта меню редактора Execute, подпункт Load into SCILAB (результат отображается в основном окне системы);

5) Сохранение SCILAB программы с помощью пункта меню редактора File (результат – файл с расширением .sce).

Рассмотрим примеры решения математических задач, наиболее часто встречающихся при математическом моделировании электронных схем.

Пример решения системы линейных уравнений с помощью системы SCILAB.

Дано: система линейных алгебраических уравнений вида:

 

Требуется: найти корни системы уравнений.

Решение: для решениязадачи с помощьюSCILABнеобходимо преобразовать исходную систему уравнений в матричную форму AX=B:

 

.

 

Определение корней системы линейных уравнений вSCILABвозможно различными способами:

а) воспользоваться встроенной функцией решения систем линейных алгебраических уравнений LinSolve(A, B), которая возвращает вектор корней уравнения;

б) применить формальный метод решения с помощью обратной матрицы X = A-1 B, который в SCILAB будет иметь следующий вид: X=inv(A)*B, где inv – встроенная функция вычисления обратной матрицы.

Текст SCILABпрограммы для решения задачи, который необходимо ввести в окне редактора:

 

// Ввод матрицы A

a11 = 0.3; a12 = 0.2; a13 = 6.6; a14 = -1.1;

a21 = 4.5; a22 = -1.8; a23 = -0.3; a24 = 6.5;

a31 = -7.3; a32 = 9.7; a33 = 10.9; a34 = -4.1;

a41 = 8.1; a42 = -2.7; a43 = 8.7; a44 = -8.7;

A = [a11 a12 a13 a14; a21 a22 a23 a24; a31 a32 a33 a34; a41 a42 a43 a44; ];

// Ввод вектора B

b1 = 1; b2 = 6.5; b3 = -4.1; b4 = 8.9;

B = [b1; b2; b3; b4];

// Решение системы уравнений формальным методом

X=inv(A)*B;

// Решение системы уравнений с помощью встроенной функции

X=inv(A)*B;

X=LinSolve(A, B);

// Вывод решения

X

Для получения результата рения необходимо выполнить программу с помощью пункта меню редактора Execute, подпункт Load into SCILAB. Результат отобразится в основном окне системы:

X =

- 1.4039333

- 0.6028857

- 0.1027208

- 0.1997401

Пример решения системы нелинейных алгебраических уравнений с помощью системы SCILAB.

Дано: система нелинейных алгебраических уравнений вида:

Требуется: найти корни системы уравнений.

Решение:

особенностью решения нелинейных алгебраических уравнений является применение численных (итерационных) методов, для которых требуется назначение начальных приближений корней. В SCILABдля решения данной задачи используется встроенная функция fsolve([x1, … xn], fun), где x1, … xn – начальные приближения корней, fun – подпрограмма функция, в которой описана решаемая система уравнений. Пред применением исходная система уравнений должна быть представлена в следующей в форме:

Текст SCILABпрограммы для решения задачи, который необходимо ввести в окне редактора имеет следующий вид:

//Описание системы

function[y] = fun(x)

y(1) = 2*x(1)+x(2)-5+2*x(3)^2;

y(2) = x(2)^3 + x(3) - 4;

y(3)=x(1)*x(2)+x(3)-%e^x(3);

endfunction;

// Численное решение

[x]=fsolve([0.5 0.6 1], fun);

// вывод решения

x

Для получения результата рения необходимо выполнить программу с помощью пункта меню редактора Execute, подпункт Load into SCILAB. Результат отобразится в основном окне системы:

x = 1.0271746 1.4642447 0.8606410.

На основе вышеприведенных программ возможно построение более сложных процедур для выполнения всестороннего анализа электронных схем.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.