Uniwersytet Warszawski, Wydział Fizyki - Centralny System Uwierzytelniania
Strona główna

Języki programowania wysokiego poziomu

Informacje ogólne

Kod przedmiotu: 1100-2BP20
Kod Erasmus / 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) Fizyka Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Języki programowania wysokiego poziomu
Jednostka: Wydział Fizyki
Grupy: ZFBM - Projektowanie molek. i bioinformatyka; przedmioty dla II roku
Punkty ECTS i inne: 5.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.

zobacz reguły punktacji
Język prowadzenia: polski
Kierunek podstawowy MISMaP:

informatyka
matematyka

Skrócony opis:

Na zajęciach zostną przekazane podstawy dwóch

języków wysokiego poziomu:

Mathematica,

R.

Pełny opis:

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

Zajęcia w cyklu "Semestr letni 2023/24" (w trakcie)

Okres: 2024-02-19 - 2024-06-16
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Ernest Bartnik
Prowadzący grup: Ernest Bartnik
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Warszawski, Wydział Fizyki.
ul. Pasteura 5, 02-093 Warszawa tel: +48 22 5532 000 https://www.fuw.edu.pl/ kontakt deklaracja dostępności USOSweb 7.0.3.0 (2024-03-22)