University of Warsaw - Central Authentication System
Strona główna

High-level programming languages

General data

Course ID: 1100-2BP20
Erasmus code / ISCED: 13.2 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (0533) Physics The ISCED (International Standard Classification of Education) code has been designed by UNESCO.
Course title: High-level programming languages
Name in Polish: Języki programowania wysokiego poziomu
Organizational unit: Faculty of Physics
Course groups: APBM - Molecular Modelling and Bioinformatics; 2nd year courses
ECTS credit allocation (and other scores): 5.00 Basic information on ECTS credits allocation principles:
  • the annual hourly workload of the student’s work required to achieve the expected learning outcomes for a given stage is 1500-1800h, corresponding to 60 ECTS;
  • the student’s weekly hourly workload is 45 h;
  • 1 ECTS point corresponds to 25-30 hours of student work needed to achieve the assumed learning outcomes;
  • weekly student workload necessary to achieve the assumed learning outcomes allows to obtain 1.5 ECTS;
  • work required to pass the course, which has been assigned 3 ECTS, constitutes 10% of the semester student load.

view allocation of credits
Language: Polish
Main fields of studies for MISMaP:

computer science
mathematics

Short description: (in Polish)

Na zajęciach zostną przekazane podstawy dwóch

języków wysokiego poziomu:

Mathematica,

R.

Full description: (in Polish)

Wykład 1

Informacje o językach programowania - niski i wysoki poziom

Część I - Mathematica:

Wykład 2

Środowisko

wszystko w M-ce to wyrażenie

Front-End i Kernel

Polecenie Head, typy zmiennych (Real, Integer, List, …), typ podstawowy: Symbol, nazwy funkcji

Informacje o symbolach (Definition, Information)

Praca z Notebookiem: komórki (hierarchia, łączenie), style (dokumentu, komórek, środowiska)

Przegląd poleceń interfejsu

Uwagi o chronologii wykonywania obliczeń.
Ćwiczenia

Mathematica jako kalkulator (cw ad hoc).


Podstawy

substytucje i proste wzorce {x,y}/.x_Integer->3

rozwiązywanie równań: polecenie Solve

polecenie Plot (podstawy)

dostęp do elementów listy [[ . ]]

Wykład 3

Funkcje

definiowanie własnych funkcji

funkcje przeciążone

atrybut Listable

wywoływanie funkcji [], Map /@, Apply @@, oraz //

funkcje czyste

Definicja operatorów (tutorial/OperatorsWithoutBuiltInMeanings)


Listy

tworzenie Table, PrependTo, ConstantArray

listy wielowymiarowe, macierze matematyczne

charakterystyka Length, Dimensions,

elementy list: Part, Select, Cases, Positions

operacje na listach: Join, Partition, Sort, Flatten, Ordering,

operacje na listach z elementami liczbowymi:

proste: Total, Counts, Differences

macierzowe: Det, Eigenvalues, Tr, Inverse

Wykład 4

Instrukcje sterujące i warunkowe

For, Do

If, Switch

Wizualizacja danych

Plot - możliwości i opcje

Typy obiektów grafiki

Opisywanie wykresów

Układ współrzędnych

Paleta kolorów

Inne polecenia do wykresów.

Zapis, rozdzielczość

Wykład 5

Rozszerzanie funkcjonalności

Dynamic, Manipulate

Wolfram Free Form Linguistic

Wolfram Alpha, Entity

Narzędzia programistyczne

Konteksty, Pakiety, Moduły

Wykład 6

Rachunek różniczkowy i algebra liniowa

Całkowanie, Różniczkowanie

DSolve, NDSolve, (+ opcja Value)

Podgląd operacji numerycznych - Reap i Sow

Podstawienie opóźnione

Wykresy fazowe

Zagadnienie własne

Wykład 7

Statystyka

Podstawowe pojęcia statystyki: dystrybucje, histogramy, estymatory

Fitowanie funkcji

Testy statystyczne

Wykład 8

Wydajność liniowa i Programowanie współbieżne

Wydajność Liniowa

Master Kernel + Workers

SPMD

Pamięć współdzielona

Pamięć rozproszona

Wykład 9

Uczenie maszynowe

analiza skupień - uczenie bez nadzoru

proste klasyfikatory - regresja liniowa (i logistyczna)

drzewa binarne

klasyfikatory zaawansowane: RF, NN, SVN

wbudowane zbiory danych

Część II - język R

Wykład 10

Wprowadzenie do R i RStudio

Pomoc języka R

Katalog/przestrzeń robocza

getwd(), ls(), setwd() history()

pliki nazwa.RData nazwa.RHistory

save.image() - zapisuje bieżący stan śr. do .RData

save(object_list,file=“nazwa.RData”), /odczytanie load(“”)/

q() - quit R

Historia, Autorzy, charakterystyka(dialekt języka S):

case sensitive

mod interaktywny

mod wsadowy: source(“myfile.R”)

mod batch: R CMP BATCH [options] my_script.R [outfile]

Wykład 11

Pakiety w R

instalacja: z poziomu R: install.packages(“nazwa”) # nazwa pakietu jest unikalna w repozytoriumu CRAN

warto ustawić opcje dependences=TRUE

RGUI - pracujemy na RStudio, są jeszcze (RCommander, i inne)

Polecenia

polecenie(wart_arg1) lub polecenie(arg1=wart_arg1, arg2=wart_arg2).

Wykład 12

Typy danych

wektor, ramka danych, macierze

konstruktor:

c(lista elementów po przecinku)

selektor:

v[index], v[wektor_indeksów], v[wektor wartości logicznych]

konstrkuktor:

ustawienie atrybutów

Wykład 13

Analiza danych i grafika

braki danych

Analiza sieci

Wykład 14

Powłoki Linux’a: BASH, TCSH oraz AWK

Classes in period "Summer semester 2023/24" (in progress)

Time span: 2024-02-19 - 2024-06-16
Selected timetable range:
Navigate to timetable
Type of class:
Classes, 30 hours more information
Lecture, 30 hours more information
Coordinators: Ernest Bartnik
Group instructors: Ernest Bartnik
Students list: (inaccessible to you)
Examination: Examination
Course descriptions are protected by copyright.
Copyright by University of Warsaw.
Krakowskie Przedmieście 26/28
00-927 Warszawa
tel: +48 22 55 20 000 https://uw.edu.pl/
contact accessibility statement USOSweb 7.0.3.0 (2024-03-22)