Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2009
Тип роботи:
Звіт
Предмет:
Алгоритми та методи обчислень

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” КАФЕДРА ЕОМ  Звіт по лабораторній роботі №1 з курсу “ АЛГОРИТМИ ТА МЕТОДИ ОБЧИСЛЕНЬ ” Підготував: ст. гр. Прийняв: Львів-2009 ТЕМА: Ознайомлення з пакетом математичного моделювання Scilab-5.0.3. МЕТА: Освоїти синтаксис та команди пакету Scilab. Уміти практично використовувати дані команди для побудови графіків, діаграм та розв’язування лінійних і нелінійних рівнянь. Короткі теоретичні відомості про пакет Scilab-5.0.3: Scilab — пакет наукових програм для чисельних обчислень, що надає потужне відкрите оточення для інженерних і наукових розрахунків. З 1994 року розповсюджується у вигляді джерельних кодів через Інтернет. Тепер Scilab підтримується компанією Scilab Consortium, створеною в 2003 році. У ній зараз 25 учасників, зокрема Mandriva, INRIA та ENPC (Франція). Scilab містить сотні математичних функцій з можливістю додавання нових, написаних на різних мовах (C, C++, Fortran …). Так само є різноманітні структури даних (списки, поліноми, раціональні функції, лінійні системи), інтерпретатор і мова високого рівня. Scilab був спроектований так, щоб бути відкритою системою, де користувачі можуть додавати свої типи даних і операції над цими даними шляхом перевантаження. У системі доступно безліч інструментів: 2d і 3d графіки, анімація Лінійна алгебра, розріджені матриці (sparse matrices) Поліноміальні та раціональні функції Інтерполяція, апроксимація Симуляція: рішення ОДУ і ДУ Scicos: гібрид системи моделювання динамічних систем і симуляції Диференціальні і не диференціальні оптимізації Обробка сигналів Паралельна робота Статистика Робота з КА Інтерфейс до Fortran, Tcl/Tk, C, C++, Java, LabVIEW Scilab має схожу з MATLAB мову програмування, в складі є утиліта, що дозволяє конвертувати документи Matlab → Scilab. Scilab дозволяє працювати з елементарними і великим числом спеціальних функцій (Бесселя, Неймана, інтегральні функції), має могутні засоби роботи з матрицями, поліномами (у тому числі і символьний), проводити чисельні обчислення (наприклад чисельна інтеграція) і вирішення завдань лінійної алгебри, оптимізації і симуляції, могутні статистичні функції, а також засіб для побудови і роботи з графіками. Для чисельних розрахунків використовуються бібліотеки Lapack, LINPACK, ODEPACK , Atlas та інші.[1] До складу пакету також входить Scicos інструмент для редагування блокових діаграм і симуляції (аналог simulink в пакеті — MATLAB). Є можливість спільної роботи Scilab з програмою LabVIEW. Програма доступна для різних операційних систем, включаючи GNU/Linux та Microsoft Windows. Є можливість розширення можливостей програми зовнішніми програмами і модулями, написаними на різних мовах програмування. Програма має відкритий початковий код, дозволяючи в т.ч. вільне комерційне використання і розповсюдження незмінених версій, а також некомерційне (для кому. необхідне узгодження з INRIA) розповсюдження змінених версій, які повинні включати джерельний код. Наступна версія програми за попередніми даними розповсюджуватиметься під сумісною з GPL ліцензією CeCILL license. Відмінності від деяких комерційних програм: Безкоштовність Маленький розмір (дистрибутив займає менш 20мб проти більш ніж двохгігабайтного пакету MATLAB) Можливість запуску в консолі без використання графічного інтерфейсу. Це дозволяє проводити автоматизовані обчислення, є пакетний режим. Приклади: Прості обчислення Код, що задає матрицю і обраховує визначник: M=[1 6 8; 7 8 8; 1 6 0] det(M) Побудова простого графіка функції // x initialisation x=[0:0.1:2*%pi]'; //simple plot plot2d(sin(x)) Складніший графік функції:  Графік, намальований з допомогою Scilab set("figure_style","new") //create a figure subplot(211) a=gca() //get the current axes a.box="off"; t=-%pi:0.3:%pi;plot3d(t,t,sin(t)'*cos(t),80,50,'X@Y@Z',[5,2,4]); subplot(212) plot2d(); //simple plot a=gca(); //get the current axes a.box="off";a.x_location="middle"; ЗАВДАННЯ: Вивести на екран два графіки функцій в одній системі координат. Вибір функцій (таблиця 1.)( ): – ша функція: згідно варіанту; – га: номер Вашого варіанту + 5 (напр. Ваш варіант №3, результатом буде варіант №8)( ); x=-6.28:0.02:6.28; y=x^3-0.1*x^2+0.4*x-1.5; z=cos(x^2)-cos(x)*3-1; plot(x,y,x,z)  Теоретичні відомості по 2 пункту завдання : Знаки ! замінюють зображення круглих дужок для матриць. Вектор-рядок ->v=[1,-3%i,7] v = ! 1. - 3. i 7. ! Зауваження: v=[1+3] є число 4, а то ж саме, але з пропуском перед "+" v=[1 +3] - вже вектор-рядок. Якщо ж пропуск був після знаку "+", то це знову число. Задана операція транспонування: <вектор-строка>'' Приклад. b=v' Результат: b = ! 1. ! ! 4. ! ! 8. ! Вектор-стовпець: елементи мають бути розділені за допомогою крапки з комою. -->v=[4;3+%i;3.33] v = ! 4.     ! ! 3. + i ! ! 3.33   ! Аналогічний вектор-рядок має бути закінчена знаком ''. -->v=[4;3+%i;3.33]' v = ! 4. 3. - i 3.33 ! Для вектора (сроки) x[n], где x[0]=xmin, x[n]=xmax, а x[i]=x[i-1]+delta, допустимо следующее задание данных: x=[xmin:delta:xmax], где xmax, xmin и delta могут быть арифметическимими выражениями. Пример. x=[0:0.1:2*%pi] В Scilab определены арифметические операции над векторами. Як створити двовимірну матрицю? Спосіб 1. Прямое задание матрицы. Пример. b=[11 22 33;21 22 23;31 32 33] Результат: b = ! 11. 22. 33. ! ! 21. 22. 23. ! ! 31. 32. 33. ! Спосіб 2. Cоставлені матриці з декількох підматриць. Приклад. a=[1 2;3 4] а = ! 1. 2. ! ! 3. 4. ! b=[5 5;7 8] b = ! 5. 5. ! ! 7. 8. ! c=[9 10;11 12] з = ! 9. 10. ! ! 11. 12. ! d=[а,b,c] d = ! 1. 2. 5. 5. 9. 10. ! ! 3. 4. 7. 8. 11. 12. ! Спосіб 3. У Scilab існує тип змінних "розріджена матриця" (sparse). Розріджена матриця - це матриця, більшість елементів якої рівні 0. Використання такого типа змінних для великих матриць економить машинну пам'ять і підвищує швидкодію. Для завдання матриць такого типа служить команда sparse. Щоб конвертувати розріджену матрицю в звичний вигляд служить команда full. Наприклад sp=sparse([1,2;4,5;3,10],[1,2,3]) sp = ( 4, 10) sparse matrix ( 1,  2) 1. ( 3, 10) 3. ( 4,  5) 2. r=full(sp) r = ! 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. ! ! 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. ! ! 0. 0. 0. 0. 0. 0. 0. 0. 0. 3. ! ! 0. 0. 0. 0. 2. 0. 0. 0. 0. 0. ! Які операції можна виконати над числовими матрицями? У Scilab визначені основні операції над матрицями: А+В додавання,А-В віднімання, c*A множення на число, A*B множення матриці на матрию, A' Транспонування (поміняти місцями рядки і стовпці). matrix Перетворення вектора або матриці в матрицю (вектор) іншого розміру. Існують і інші операції. Синтаксис таких операцій дивитеся в описі, але дія таких операцій на перший погляд мало зрозуміло, і, ймовірно, не варто на них зупинятися. Можливо, є ще якісь нестандартні операції. ВИСНОВОК: У даній лабораторній роботі я вивчив основні поняття про пакет SciLab.
Антиботан аватар за замовчуванням

19.11.2013 20:11-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!