Matlab: Różnice pomiędzy wersjami

Z KdmWiki
Skocz do: nawigacji, wyszukiwania
(Uruchamianie na własnych komputerach)
 
(Nie pokazano 25 wersji utworzonych przez 9 użytkowników)
Linia 1: Linia 1:
 +
[[Plik:en.jpg|right|link={{PAGENAME}}/en]]
 
<small>< [[Podręcznik użytkownika KDM]] < [[Oprogramowanie KDM]] < [[Oprogramowanie naukowe]] < Matlab</small>
 
<small>< [[Podręcznik użytkownika KDM]] < [[Oprogramowanie KDM]] < [[Oprogramowanie naukowe]] < Matlab</small>
 
{{uwaga|'''Licencja WCSS jest przeznaczona dla użytkowników WCSS, do celów badawczych.''' Pracownicy i doktoranci PWr mogą korzystać z licencji badawczej Politechniki. Studenci i prowadzący zajęcia dydaktyczne na PWr powinni korzystać z licencji dydaktycznej Politechniki. W celu uzyskania licencji i nośników instalacyjnych należy kontaktować się z administratorami '''wydziałowymi''' lub Działem Informatyzacji PWr. WCSS nie dysponuje informacjami o administratorach wydziałowych.}}
 
{{uwaga|'''Licencja WCSS jest przeznaczona dla użytkowników WCSS, do celów badawczych.''' Pracownicy i doktoranci PWr mogą korzystać z licencji badawczej Politechniki. Studenci i prowadzący zajęcia dydaktyczne na PWr powinni korzystać z licencji dydaktycznej Politechniki. W celu uzyskania licencji i nośników instalacyjnych należy kontaktować się z administratorami '''wydziałowymi''' lub Działem Informatyzacji PWr. WCSS nie dysponuje informacjami o administratorach wydziałowych.}}
{{aplikacja|nazwa=Matlab|logo=[[Grafika:Matlab1.png]]|serwer=[[Supernova]]|wersja=R2013a|wersja2=R2012a|serwer2=[[Klaster kampusowy]]|wersja21=R2013a}}
+
{{aplikacja|nazwa=Matlab|logo=[[Grafika:Matlab1.png]]|serwer=[[Bem]]|wersja='''R2017b'''|wersja2=R2016a|serwer2=[[Klaster kampusowy]]|wersja21=R2015a}}
 
'''MATLAB''' jest środowiskiem obliczeniowym przeznaczonym dla inżynierów i naukowców, umożliwiającym przeprowadzanie obliczeń matematycznych, analizy numerycznej, wizualizacji otrzymanych wyników (2D, 3D), jak również tworzenie algorytmów i programów. Język MATLAB-a jest intuicyjny i wygodny w użyciu, co sprawia, że opracowanie algorytmów jest prostsze niż w przypadku takich języków programowania jak C czy Fortran.
 
'''MATLAB''' jest środowiskiem obliczeniowym przeznaczonym dla inżynierów i naukowców, umożliwiającym przeprowadzanie obliczeń matematycznych, analizy numerycznej, wizualizacji otrzymanych wyników (2D, 3D), jak również tworzenie algorytmów i programów. Język MATLAB-a jest intuicyjny i wygodny w użyciu, co sprawia, że opracowanie algorytmów jest prostsze niż w przypadku takich języków programowania jak C czy Fortran.
  
Linia 15: Linia 16:
  
 
== Licencja udostępniana przez WCSS ==
 
== Licencja udostępniana przez WCSS ==
Aktualnie dostępna wersja to '''R2013a''' dla systemów Linux (x86, x86_64), Mac (Intel) i Windows (Server 2008, Server 2008R2, XP SP3, Vista, 7). Prosimy o [[kontakt]] z administratorami w celu wypożyczenia płyt instalacyjnych (tylko DVD). Wymagania pakietu: http://www.mathworks.com/support/sysreq/
+
Aktualnie dostępna wersja to '''R2017b''' dla systemów Linux (x86, x86_64), Mac (Intel) i Windows (Server 2008, Server 2008R2, XP SP3, Vista, 7). Wymagania pakietu: http://www.mathworks.com/support/sysreq/
 +
Pliki instalacyjne można pobrać z [[Serwer_FTP|serwera FTP]].
  
 
W skład pakietu wchodzi szereg dodatkowych narzędzi rozszerzających jego możliwości, ukierunkowanych na rozwiązywanie zadań z danego obszaru. WCSS udostępnia licencję obejmującą szereg pakietów, są to:
 
W skład pakietu wchodzi szereg dodatkowych narzędzi rozszerzających jego możliwości, ukierunkowanych na rozwiązywanie zadań z danego obszaru. WCSS udostępnia licencję obejmującą szereg pakietów, są to:
Linia 40: Linia 42:
 
* '''Matlab Coder''' (1)  
 
* '''Matlab Coder''' (1)  
 
* '''Matlab Compiler''' (1)
 
* '''Matlab Compiler''' (1)
 +
* '''Matlab Compiler SDK''' (1)
 
* '''Statistics Toolbox''' (1)
 
* '''Statistics Toolbox''' (1)
 
* '''Wavelet Toolbox''' (1)
 
* '''Wavelet Toolbox''' (1)
Linia 48: Linia 51:
 
* '''Communications Blockset''' (5) - rozszerza pakiet Simulink o bibliotekę elementów konstrukcyjnych służących do budowy i symulacji fizycznej warstwy systemów i komponentów komunikacji.
 
* '''Communications Blockset''' (5) - rozszerza pakiet Simulink o bibliotekę elementów konstrukcyjnych służących do budowy i symulacji fizycznej warstwy systemów i komponentów komunikacji.
 
* '''Filter Design Toolbox''' (1)
 
* '''Filter Design Toolbox''' (1)
 +
=== Informacje o wykorzystaniu ===
 +
{{Podziękowanie_WCSS}}
  
== Uruchamianie na maszynach KDM WCSS ==
+
== Uruchamianie na klastrze Bem ==
MATLAB dostępny jest na klastrze [[Supernova]] w wersji R2010b i R2011a (katalog instalacji odpowiednio: /usr/local/matlab-R2010b oraz /usr/local/matlab_R2011a).  
+
MATLAB dostępny jest na klastrze [[Bem]] (katalog instalacji odpowiednio: /usr/local/matlab/WERSJA).  
  
=== Praca interaktywna ===
+
=== Praca interaktywna na klastrze ===
Przed zdalnym uruchomieniem aplikacji w trybie graficznym należy pamiętać o [[Przekierowanie wyświetlania|przekierowaniu wyświetlania]]. W celu pracy interaktywnej z aplikacją należy uruchomić zadanie interaktywne w kolejce, np.:
+
*Przed zdalnym uruchomieniem aplikacji w trybie graficznym należy połączyć się ze zdalnym pulpitem za pomocą programu NoMachine [http://kdm.wcss.wroc.pl/wiki/Jak_korzysta%C4%87_z_NoMachine Instrukcja]
  
  > '''qsub -I -X -q short6h'''
+
*Następnie w celu pracy interaktywnej z aplikacją należy uruchomić zadanie interaktywne w kolejce, z opcją <code>-X</code>, np.:
 +
 
 +
  > '''qsub -I -X -l walltime=6:00:00'''
  
 
;Środowisko aplikacji
 
;Środowisko aplikacji
  
MATLAB pobiera ustawienia środowiska z pliku <code>.matlab7rc.sh</code>. Przed uruchomieniem pobiera plik z pierwszej lokalizacji, kolejno przeszukuje: <code>./</code> (kat. bieżący), <code>$HOME</code> (kat. domowy użytkownika), <code>$MATLAB/bin</code> (kat. domyślny). Wzorcowy plik <code>.matlabXrc.sh</code> znajduje się w katalogu instalacji danej wersji MATLAB-a <code>$MATLAB/bin/</code>. Użytkownik może skopiować ten plik do swojego katalogu domowego i zmienić w razie potrzeby ustawione wartości zmiennych: <code>ARCH, LD_LIBRARY_PATH, LM_LICENCE_FILE, MATLAB</code> (wskazuje na katalog instalacji) i kilku innych.
+
MATLAB pobiera ustawienia środowiska z pliku <code>.matlab7rc.sh</code>. Przed uruchomieniem pobiera plik z pierwszej lokalizacji, kolejno przeszukuje: <code>./</code> (kat. bieżący), <code>$HOME</code> (kat. domowy użytkownika), <code>$MATLAB/bin</code> (kat. domyślny). Wzorcowy plik <code>.matlabXrc.sh</code> znajduje się w katalogu instalacji danej wersji MATLAB-a <code>$MATLAB_TOP/bin/</code>. Użytkownik może skopiować ten plik do swojego katalogu domowego i zmienić w razie potrzeby ustawione wartości zmiennych: <code>ARCH, LD_LIBRARY_PATH, LM_LICENCE_FILE, MATLAB</code> (wskazuje na katalog instalacji) i kilku innych.
  
 
Przed użyciem MATLABa należy załadować odpowiedni moduł.
 
Przed użyciem MATLABa należy załadować odpowiedni moduł.
Linia 65: Linia 72:
 
  > '''module load matlab'''
 
  > '''module load matlab'''
  
wczyta najnowszą wersję (R2011b). Można też wybrać starszą poleceniem:
+
Powyższe polecenie wczyta domyślną wersję. Można też wybrać konkretną wersję modułu wydając polecenie:
  
  > '''module load matlab/R2011a'''
+
  > '''module load matlab/R2015a'''
 +
> '''module load matlab/R2014b'''
  
 
Aby sprawdzić ustawienia przesyłane do MATLAB-a podczas uruchamiania wystarczy wydać polecenie:
 
Aby sprawdzić ustawienia przesyłane do MATLAB-a podczas uruchamiania wystarczy wydać polecenie:
Linia 81: Linia 89:
 
  > '''matlab'''
 
  > '''matlab'''
  
 +
=== Wstawianie zadań wsadowych do kolejki ===
  
;Wstawianie zadań wsadowych do kolejki
+
Aby wstawić zadanie MATLAB-a do kolejki PBS na klastrze Bem należy [[kopiowanie|przesłać na klaster]] pliki wejściowe zadania (lub przygotować je na klastrze pracując interaktywnie, jak opisane powyżej), [[logowanie|zalogować się na klaster]] i następnie posłużyć poleceniem '''<code>qsub</code>''' lub skorzystać z gotowego skryptu sub-matlab (uruchamia domyślną wersję programu)
  
Aby wstawić zadanie MATLAB-a do kolejek [[PBS]] na klastrze Supernova należy posłużyć się poleceniem '''<code>qsub</code>''' lub skorzystać ze skryptu:
+
Uruchomienie skryptu bez podania argumentów wyświetli podpowiedź jak należy te argumenty specyfikować:
  
  > '''sub-matlab''' <plik_wej.inp>
+
  > sub-matlab
 +
Usage: /usr/local/bin/sub-matlab input_file [parameters]
 +
Parameters:
 +
-q queue (default - main)
 +
-p cores (default - 1)
 +
-m memory (in MB, default - 2000)
 +
-w walltime (in hours, default - 504)
  
=== Uruchamianie zadań z lokalnego komputera na klastrze Supernova ===
 
Aby zlecić zadanie korzystając z interfejsu Matlaba należy wcześniej wykonać odpowiednią konfigurację:
 
* pobrać plik [[http://kdm.wcss.wroc.pl/w/images/matlab_wcss.zip zip]] i rozpakować w lokalizacji przeszukiwanej przez Matlaba (listę tych miejsc można znaleźć klikając przycisk '''Set Path''' w polu '''Environment''')
 
* pobrać plik [[http://kdm.wcss.wroc.pl/w/images/Supernova.zip zip]] i rozpakować w dowolnej lokalizacji (plik '''Supernova.settings''', który jest w archiwum będzie potrzebny w następnym kroku)
 
* w polu '''Environment''' kliknąć na przycisk '''Parallel''' i wybrać pozycję '''Manage Cluster Profiles'''
 
* w oknie które się pojawi kliknąć na przycisk '''Add''' i wybrać pozycję '''Import'''
 
* wskazać lokalizację pliku '''Supernova.settings''' wypakowanego z archiwum
 
* zaznaczyć pozycję '''Supernova''' na liście '''Cluster Profile''' i kliknąć przycisk '''Edit'''
 
* w części SubmitFunctions należy zmienić 3. parametr funkcji ('''/home/tyciu'''), tak aby wskazywał lokalizację własnego katalogu domowego
 
* po kliknięciu na przycisk '''Done''' można już korzystać ze zdalnego zlecania zadań
 
  
== Uruchamianie na własnych komputerach ==
+
Na przykład
KDM WCSS umożliwia uruchamianie Matlaba na własnych komputerach. Wymaga to zainstalowania Matlaba w trybie [http://www.mathworks.com/access/helpdesk/help/base/install/pc/ch2_con4.html network installation] z wykorzystaniem serwera licencji zainstalowanego w KDM WCSS. Dostęp do serwera licencji możliwy jest z adresów klasy B '''<code>156.17.0.0/16</code>'''. Inne adresy/klasy dodawane są po indywidualnych konsultacjach z [[Administratorzy KDM|administratorami KDM]] WCSS.
+
  
W celu uzyskania płyt instalacyjnych należy zgłosić się do [[Administratorzy KDM|kierownika]] działu KDM.
+
> sub-matlab test.inp -q main -p 2 -m 4000 -w 2
  
==== Instalacja na systemach z rodziny Windows ====
+
Zadanie uruchomione zostanie na 2 rdzeniach (w obrębie jednego węzła), wymaga 4000 MB RAM  (po 2000 MB na proces), walltime zadania jest równy 2 godziny.
Przed instalacją należy zgłosić się do WCSS po pobranie kodu PLP wymaganego do instalacji. Następnie należy utworzyć i zapisać na dysku plik licencji o dowolnej nazwie i zawierający wiersze:
+
  
'''SERVER menkar.wcss.pl 0007e905907d 27002'''
 
'''USE_SERVER'''
 
  
Następnie należy uruchomić instalację i podać kod PLP oraz ścieżkę do pliku licencji na kolejnych etapach instalacji.
+
'''Uwaga'''
  
==== Instalacja na systemach z rodziny Linux/UNIX ====
+
Na klastrze Bem zadania należy zlecać do kolejki main. Jest to kolejka przekierowująca - na podstawie podanego limitu czasu (walltime) zadania będą przenoszone do odpowiednich kolejek (np. normal, infinity).
Przed instalacją należy zgłosić się do WCSS po pobranie kodu PLP wymaganego do instalacji. Przed uruchomieniem aplikacji należy ustawić zmienną środowiskową <code>LM_LICENSE_FILE</code> na wartość <code>"27002@menkar.wcss.pl"</code>:
+
  
Shell typu csh (csh, tcsh):
+
'''Zobacz też:''' [[Jak korzystać z kolejek PBS]]?
> '''setenv LM_LICENSE_FILE "27002@menkar.wcss.pl" '''
+
  
Shell typu sh (sh, bsh, bash, ksh, ...):
+
== Uruchamianie na infrastrukturze PLATON-U3 ==
> '''export LM_LICENSE_FILE="27002@menkar.wcss.pl"'''
+
Chcąc pracować interaktywnie z MATLAB-em można skorzystać z infrastruktury PLATON-U3 ([[klaster kampusowy]]). Należy w tym celu zarejestrować się w portalu usługi jako użytkownik w WCSS (https://wcss.cloud.pionier.net.pl) i następnie założyć w portalu odpowiednią rezerwację na maszynę wirtualną z zainstalowanym MATLAB-em (szczegółowe instrukcje na stronie usługi).
  
Rodzaj shella sprawdzamy przez:
+
== Uruchamianie na własnych komputerach ==
> '''echo $SHELL'''
+
  
Ewentualny test licencji:
+
KDM WCSS umożliwia uruchamianie Matlaba na własnych komputerach przy zdalnym wykorzystaniu licencji udostępnianej przez WCSS. Pliki instalacyjne można pobrać z [[Serwer_FTP|serwera FTP]].
> '''scieżka/do/katalogu/instalacji/matlab/etc/lmstat -a -c 27002@menkar.wcss.pl'''
+
Dostęp do serwera licencji możliwy jest poprzez system [[Korzystanie z VPN|VPN]].
  
== Pierwsze kroki ==
+
Przed uruchomieniem instalacji należy stworzyć tekstowy plik licencji o dowolnej nazwie i zawartości:
Przed rozpoczęciem pracy z Matlabem należy zweryfikować, czy aplikacja działa poprawnie.
+
  
=== Weryfikacja ===
+
SERVER menkar.wcss.pl 0007e905907d 27002
W celu przeprowadzenia weryfikacji trzeba wykonać kilka, wymienionych poniżej, kroków:
+
USE_SERVER
#W zakładce ENVIRONMENT > Set Path sprawdzić listę ścieżek. Ścieżka rozpoczynająca się od '\\wcss-sts' znajduje się na dysku Z.
+
#W pasku wyboru ścieżki wybrać katalog znajdujący się na dysku Z, w którym zapisywane będą pliki związane ze zleceniami.
+
#W zakładce ENVIRONMENT > Parallel > Manage Cluster Profiles > Cluster Profile wybrać profil Supernova.
+
#W profilu Supernova wybrać zakładkę Validation Results, a następnie przeprowadzić weryfikację poprawności działania za pomocą przycisku Validate.
+
  
=== Tworzenie nowego skryptu ===
+
==== Instalacja na systemach z rodziny Windows ====
Nowy skrypt Matlaba tworzy się za pomocą przycisku New Script:
+
#W pasku wyboru ścieżki wybrać katalog znajdujący się na dysku Z, w którym zapisywane będą pliki związane ze zleceniami:
+
#W menu, w zakładce HOME użyć przycisku New Script.
+
#Po podaniu programowi poleceń w postaci skryptu, należy owy skrypt zapisać w katalogu wybranym w podpunkcie 1.
+
#W celu uruchomienia skryptu należy kliknąć na niego (powinien być widoczny w polu Current Folder) prawym przyciskiem myszy (PPM), a następnie użyć polecenia Run.
+
  
=== Testowanie poprawności zlecania zadań ===
+
Przed instalacją należy zgłosić się do WCSS po pobranie kodu PLP wymaganego do instalacji.
W celu przetestowania poprawności działania zlecania własnych skryptów należy:
+
 
#Otworzyć nowy skrypt przyciskiem New Script.
+
Następnie należy uruchomić instalację i podać kod PLP oraz ścieżkę do pliku licencji na kolejnych etapach instalacji.
#Wkleić poniższy kod (*).
+
 
#Zapisać skrypt pod dowolną nazwą w wybranym katalogu znajdującym się w ścieżkach Matlaba.
+
W trakcie instalacji, na etapie wyboru pakietów, warto jest zaznaczyć pakiet "License Manager". Pozwala to przetestować dostępność serwera licencji.
#Zlecić zadanie za pomocą PPM > Run.
+
 
(*):
+
==== Instalacja na systemach z rodziny Linux/UNIX ====
'''c = parcluster('Supernova');'''
+
 
'''job1 = createJob(c);'''
+
Przed instalacją należy zgłosić się do WCSS po pobranie kodu PLP wymaganego do instalacji. Przed uruchomieniem aplikacji należy ustawić zmienną środowiskową <code>LM_LICENSE_FILE</code> na wartość <code>"27002@menkar.wcss.pl"</code>:
'''createTask(job1, @rand, 1, {3,3});'''
+
  '''createTask(job1, @rand, 1, {3,3});'''
+
'''createTask(job1, @rand, 1, {3,3});'''
+
'''createTask(job1, @rand, 1, {3,3});'''
+
'''createTask(job1, @rand, 1, {3,3});'''
+
'''submit(job1);'''
+
'''wait(job1);'''
+
'''results = fetchOutputs(job1);'''
+
'''results{1:5};'''
+
  
Kod zleca wygenerowanie 5 macierzy 3 na 3  zawierających losowe liczby zmiennoprzecinkowe o wartościach zawierających się między 0 a 1 - każda macierz generowana jest w osobnym tasku.
+
Powłoka (shell) typu csh (csh, tcsh):
Polecenie 'parcluster' służy do wyboru profilu z listy znajdującej się w ENVIRONMENT > Parallel > Manage Cluster Profiles > Cluster Profile.
+
setenv LM_LICENSE_FILE "27002@menkar.wcss.pl"
Polecenie 'createJob' tworzy zadanie, a polecenie 'createTask' - podzadanie. Polecenie 'submit' zleca zadanie do schedulera (PBS) na klastrze zdefiniowanym w profilu,
+
a polecenie 'wait' wymusza oczekiwanie na zakończenie zadania przed kontynuowaniem postępowania zawartego w skrypcie.
+
  
W celu sprawdzenia wyników należy w oknie Command Window wprowadzić kolejno następujące komendy:
+
Powłoka typu sh (sh, bsh, bash, ksh, ...):
 +
export LM_LICENSE_FILE="27002@menkar.wcss.pl"
  
'''c = parcluster('Supernova')'''
+
Rodzaj powłoki można sprawdzić poleceniem:
  '''finished_jobs = findJob(c,'State','finished')'''
+
  echo $SHELL
  
Wyświetli się lista zakończonych zadań na profilu Supernova. Należy wybrać zadanie, którego wyniki chcemy przejrzeć (np. 5) i postępować według poniższych kroków:
+
W trakcie instalacji program może poprosić o przygotowany wcześniej plik licencji.
  
  '''finished_jobs = findJob(c,'State','finished', 'ID', 5)'''
+
Ewentualny test licencji po zakończonej instalacji:
'''results = fetchOutputs(finished_jobs)'''
+
  /ścieżka/do/katalogu/instalacji/matlab/etc/glnxa64/lmstat -a -c 27002@menkar.wcss.pl
'''results{1:numel(results)}'''
+
W przypadku Ubuntu 18.04 lub innych dystrybucji linuksa, może być konieczne doinstalowanie pakietu '''lsb'''.
  
 
== Dokumentacja ==
 
== Dokumentacja ==
Linia 209: Linia 187:
 
;MATLAB w sieci
 
;MATLAB w sieci
 
* [http://www.mathworks.com/products/matlab/ Strona domowa MATLABa]
 
* [http://www.mathworks.com/products/matlab/ Strona domowa MATLABa]
* [http://vistula.wis.pk.edu.pl/~sciezor/matlab.pdff Podstawy programowania w języku Matlab]
 
 
* [http://www.mathworks.com/company/newsletters/articles/gpu-programming-in-matlab.html?s_v1=48010423_1-AUVSR GPU Programming in MATLAB]
 
* [http://www.mathworks.com/company/newsletters/articles/gpu-programming-in-matlab.html?s_v1=48010423_1-AUVSR GPU Programming in MATLAB]
  

Aktualna wersja na dzień 13:53, 22 cze 2018

en.jpg

< Podręcznik użytkownika KDM < Oprogramowanie KDM < Oprogramowanie naukowe < Matlab

Matlab
Matlab1.png
Serwer Wersja
Bem R2017b
R2016a
Klaster kampusowy R2015a
Kontakt
kdm@wcss.pl

MATLAB jest środowiskiem obliczeniowym przeznaczonym dla inżynierów i naukowców, umożliwiającym przeprowadzanie obliczeń matematycznych, analizy numerycznej, wizualizacji otrzymanych wyników (2D, 3D), jak również tworzenie algorytmów i programów. Język MATLAB-a jest intuicyjny i wygodny w użyciu, co sprawia, że opracowanie algorytmów jest prostsze niż w przypadku takich języków programowania jak C czy Fortran.

Informacje ogólne

Główne funkcjonalności MATLAB-a:

  • obliczenia numeryczne do szybkiego generowania wyników
  • grafika do wizualizacji i analizy danych
  • interaktywny język i środowisko programistyczne
  • narzędzia do budowy własnego GUI
  • integracja z zewnętrznymi aplikacjami składającymi się z komponentów C, C++, Fortran, Java, COM, Excel.
  • import danych z plików i urządzeń zewnętrznych (dodatkowo dostęp do baz danych i kolejnych urządzeń)
  • konwersja aplikacji MATLAB-a na C i C++ przy użyciu kompilatora.

Licencja udostępniana przez WCSS

Aktualnie dostępna wersja to R2017b dla systemów Linux (x86, x86_64), Mac (Intel) i Windows (Server 2008, Server 2008R2, XP SP3, Vista, 7). Wymagania pakietu: http://www.mathworks.com/support/sysreq/ Pliki instalacyjne można pobrać z serwera FTP.

W skład pakietu wchodzi szereg dodatkowych narzędzi rozszerzających jego możliwości, ukierunkowanych na rozwiązywanie zadań z danego obszaru. WCSS udostępnia licencję obejmującą szereg pakietów, są to:

  • Matlab (30) - pakiet główny
  • Bioinformatics Toolbox (1)
  • Communications System Toolbox (5) - rozszerza środowisko Matlab o funkcje, wykresy i graficzny interfejs użytkownika stosowane do badania, projektowania, analizy i symulacji algorytmów warstwy fizycznej systemów komunikacji (np. systemy wireless, wireline). Stosowany głównie do pre- i post-processingu.
  • Curve Fitting Toolbox (1) - poprzez interfejs graficzny i command-line udostępnia funkcje dla różnych aplikacji typu curve-fitting.
  • Data Acquisition Toolbox (1) - zestaw funkcji M-file i dynamicznych bibliotek (DLL) MEX-file napisanych w oparciu o środowisko obliczeniowe MATLABa.
  • Spreadsheet Link EX (2) - pakiet pozwala na integrację Matlaba z programem Microsoft Excel.
  • Filter Design HDL Coder (1)
  • Fixed-Point Toolbox (1)
  • Fuzzy Logic Toolbox (1) - rozszerza środowisko MATLABa o narzędzia do projektowania systemów opartych o logikę rozmytą.
  • Global Optimization Toolbox (1)
  • Image Processing Toolbox (1) - przetwarzanie obrazów
  • Neural Network Toolbox (10) - projektowanie i symulacja sieci neuronowych
  • Optimization Toolbox (10) - rozszerza środowisko Matlaba o narzędzia i algorytmy do optymalizacji.
  • Signal Processing Toolbox (10) - przetwarzanie sygnałów
  • DSP System Toolbox (6)- symulacja procesów cyfrowej obróbki sygnałów
  • Simulink (30) - interaktywne środowisko przeznaczone do modelowania, symulacji i analizy dynamicznych systemów.
    • Simulink Design Optimization (1) - zawiera także Simulink Response Optimization, interfejs graficzny (GUI) do dostrajania i optymalizowania systemów sterowania i fizycznych.
    • Simulink Fixed-Point (1)
  • HDL Coder, dawniej Simulink HDL Coder (1)
  • Matlab Coder (1)
  • Matlab Compiler (1)
  • Matlab Compiler SDK (1)
  • Statistics Toolbox (1)
  • Wavelet Toolbox (1)
  • Parallel Computing Toolbox (5)
  • Distributed Computing Engine (32)

Licencje zdezaktualizowane:

  • Communications Blockset (5) - rozszerza pakiet Simulink o bibliotekę elementów konstrukcyjnych służących do budowy i symulacji fizycznej warstwy systemów i komponentów komunikacji.
  • Filter Design Toolbox (1)

Informacje o wykorzystaniu

Wszelkie publikacje, (w tym prace doktorskie i dyplomowe) wykorzystujące wyniki obliczeń wykonanych na komputerach WCSS, powinny zawierać podziękowania postaci (odpowiednio do języka publikacji):

"Obliczenia wykonano na komputerach Wrocławskiego Centrum Sieciowo-Superkomputerowego (http://www.wcss.pl), grant obliczeniowy Nr ... "

"Calculations have been carried out in Wroclaw Centre for Networking and Supercomputing (http://www.wcss.pl), grant No. ..."

Uruchamianie na klastrze Bem

MATLAB dostępny jest na klastrze Bem (katalog instalacji odpowiednio: /usr/local/matlab/WERSJA).

Praca interaktywna na klastrze

  • Przed zdalnym uruchomieniem aplikacji w trybie graficznym należy połączyć się ze zdalnym pulpitem za pomocą programu NoMachine Instrukcja
  • Następnie w celu pracy interaktywnej z aplikacją należy uruchomić zadanie interaktywne w kolejce, z opcją -X, np.:
> qsub -I -X -l walltime=6:00:00
Środowisko aplikacji

MATLAB pobiera ustawienia środowiska z pliku .matlab7rc.sh. Przed uruchomieniem pobiera plik z pierwszej lokalizacji, kolejno przeszukuje: ./ (kat. bieżący), $HOME (kat. domowy użytkownika), $MATLAB/bin (kat. domyślny). Wzorcowy plik .matlabXrc.sh znajduje się w katalogu instalacji danej wersji MATLAB-a $MATLAB_TOP/bin/. Użytkownik może skopiować ten plik do swojego katalogu domowego i zmienić w razie potrzeby ustawione wartości zmiennych: ARCH, LD_LIBRARY_PATH, LM_LICENCE_FILE, MATLAB (wskazuje na katalog instalacji) i kilku innych.

Przed użyciem MATLABa należy załadować odpowiedni moduł.

> module load matlab

Powyższe polecenie wczyta domyślną wersję. Można też wybrać konkretną wersję modułu wydając polecenie:

> module load matlab/R2015a
> module load matlab/R2014b

Aby sprawdzić ustawienia przesyłane do MATLAB-a podczas uruchamiania wystarczy wydać polecenie:

> matlab -n

Aplikacja nie zostanie przy tym uruchomiona.

Uruchamianie aplikacji

Do uruchamiania programu służy polecenie:

> matlab

Wstawianie zadań wsadowych do kolejki

Aby wstawić zadanie MATLAB-a do kolejki PBS na klastrze Bem należy przesłać na klaster pliki wejściowe zadania (lub przygotować je na klastrze pracując interaktywnie, jak opisane powyżej), zalogować się na klaster i następnie posłużyć poleceniem qsub lub skorzystać z gotowego skryptu sub-matlab (uruchamia domyślną wersję programu)

Uruchomienie skryptu bez podania argumentów wyświetli podpowiedź jak należy te argumenty specyfikować:

> sub-matlab
Usage: /usr/local/bin/sub-matlab input_file [parameters]
Parameters:
-q queue (default - main)
-p cores (default - 1)
-m memory (in MB, default - 2000)
-w walltime (in hours, default - 504)


Na przykład

> sub-matlab test.inp -q main -p 2 -m 4000 -w 2 

Zadanie uruchomione zostanie na 2 rdzeniach (w obrębie jednego węzła), wymaga 4000 MB RAM (po 2000 MB na proces), walltime zadania jest równy 2 godziny.


Uwaga

Na klastrze Bem zadania należy zlecać do kolejki main. Jest to kolejka przekierowująca - na podstawie podanego limitu czasu (walltime) zadania będą przenoszone do odpowiednich kolejek (np. normal, infinity).

Zobacz też: Jak korzystać z kolejek PBS?

Uruchamianie na infrastrukturze PLATON-U3

Chcąc pracować interaktywnie z MATLAB-em można skorzystać z infrastruktury PLATON-U3 (klaster kampusowy). Należy w tym celu zarejestrować się w portalu usługi jako użytkownik w WCSS (https://wcss.cloud.pionier.net.pl) i następnie założyć w portalu odpowiednią rezerwację na maszynę wirtualną z zainstalowanym MATLAB-em (szczegółowe instrukcje na stronie usługi).

Uruchamianie na własnych komputerach

KDM WCSS umożliwia uruchamianie Matlaba na własnych komputerach przy zdalnym wykorzystaniu licencji udostępnianej przez WCSS. Pliki instalacyjne można pobrać z serwera FTP. Dostęp do serwera licencji możliwy jest poprzez system VPN.

Przed uruchomieniem instalacji należy stworzyć tekstowy plik licencji o dowolnej nazwie i zawartości:

SERVER menkar.wcss.pl 0007e905907d 27002
USE_SERVER

Instalacja na systemach z rodziny Windows

Przed instalacją należy zgłosić się do WCSS po pobranie kodu PLP wymaganego do instalacji.

Następnie należy uruchomić instalację i podać kod PLP oraz ścieżkę do pliku licencji na kolejnych etapach instalacji.

W trakcie instalacji, na etapie wyboru pakietów, warto jest zaznaczyć pakiet "License Manager". Pozwala to przetestować dostępność serwera licencji.

Instalacja na systemach z rodziny Linux/UNIX

Przed instalacją należy zgłosić się do WCSS po pobranie kodu PLP wymaganego do instalacji. Przed uruchomieniem aplikacji należy ustawić zmienną środowiskową LM_LICENSE_FILE na wartość "27002@menkar.wcss.pl":

Powłoka (shell) typu csh (csh, tcsh):

setenv LM_LICENSE_FILE "27002@menkar.wcss.pl"

Powłoka typu sh (sh, bsh, bash, ksh, ...):

export LM_LICENSE_FILE="27002@menkar.wcss.pl"

Rodzaj powłoki można sprawdzić poleceniem:

echo $SHELL

W trakcie instalacji program może poprosić o przygotowany wcześniej plik licencji.

Ewentualny test licencji po zakończonej instalacji:

/ścieżka/do/katalogu/instalacji/matlab/etc/glnxa64/lmstat -a -c 27002@menkar.wcss.pl

W przypadku Ubuntu 18.04 lub innych dystrybucji linuksa, może być konieczne doinstalowanie pakietu lsb.

Dokumentacja

  • Dokumentacja on-line dostępna jest lokalnie po zalogowaniu się na klastrze i Nova i wydaniu polecenia doc z poziomu MATLAB-a.
  • "Komputerowa symulacja układów automatycznej regulacji w środowisku MATLAB/SIMULINK" s.132 rw.2005, Łysakowska B., Mzyk G., ISBN: 83-7085-854-6, Oficyna Wydawnicza PWr (Cena: 17,90)
    W książce rozważa się zagadnienie symulacji komputerowej liniowych systemów dynamicznych z czasem ciągłym i czasem dyskretnym. Analizuje się właściwości Układów Automatycznej Regulacji, podając jednocześnie przykłady praktycznych zastosowań. Badania prowadzone są z użyciem pakietu Control System Toolbox programu Matlab w środowisku graficznym Simulink. Prezentowane są również podstawy identyfikacji liniowych systemów dynamicznych w warunkach losowych. Podręcznik jest przeznaczony dla studentów uczelni technicznych na kierunkach automatyka i robotyka, elektronika i telekomunikacja oraz informatyka, a także dla wszystkich zainteresowanych zastosowaniami środowiska Matlab w obliczeniach inżynierskich w automatyce.
  • "Programowanie w Matlabie dla elektryków" s.215,rw. 2005, Sobierajski M., Łabuzek M., Oficyna Wydawnicza PWr (Cena: 22,00)
    Celem autorów jest nauczenie elektryków posługiwania się Matlabem do rozwiązywania praktycznych zadań inżynierskich. Główną uwagę skoncentrowano na skondensowanym wykorzystaniu Matlaba do rozwiązywania praktycznych zadań elektrotechnicznych i elektroenergetycznych.
    Spis treści
    Wstęp
    1. Pierwsze kroki w Matlabie
    2. Podstawowe operacje macierzowe i tablicowe
    3. Tworzenie skryptów i współpraca z plikami danych
    4. Tworzenie plików funkcyjnych
    5. Wykresy w Matlabie
    6. Interfejs graficzny użytkownika
    7. Rozwiązywanie zadań opisanych równaniami różniczkowymi
    8. Współpraca z plikami zewnętrznymi
    9. Rozwiązywanie zadań optymalizacji
    10. Analiza statystyczna pomiarów
    11. Analiza harmonicznych
    12. Równania różniczkowe
    13. Analiza stabilności lokalnej i globalnej
    14. Rozwiązywanie równań różniczkowych z elementami nieliniowymi
    15. Wprowadzenie do Simulinka
    16. Modelowanie równania różniczkowego
    17. Modelowanie układu równań różniczkowych
    18. Grupowanie i maskowanie bloków
    Literatura
MATLAB w sieci

Zobacz też: Oprogramowanie KDM