Programy

Tu uvedené programy sú väčšinou štandardnou súčasťou Linuxových distribúcií, ale veľa z nich je skompilovaných aj pre Windows. Ak používate Linux, skúste najprv pohľadať v svojej databáze balíčkov, inak musíte kompilovať sami. Väčšinou to nie je ťažké, stačí si prečítať súbory INSTALL a README, prípadne ešte prezrieť možnosti vypísané príkazom ./configure --help.

Wget (aj pre Windows) - vynikajúci program na sťahovanie väčšieho počtu súborov a mirrorovanie stránok. Stačí zadať textový súbor s linkami, prípadne názov stránky (+ zapnúť rekurzívny download).

OpenOffice.org a LibreOffice - open-source alternatíva k drahým a nešikovným MS Office produktom. Natívny export do pdf, výborný systém na matematické vzorce. Ak sa Vám nepáči, skúste LaTeX (nižšie).

StarDict (a novšie náhrady) - univerzálny slovník. Je potrebné stiahnúť príslušné databázy, ktoré chcete používať, napr. SK-EN, EN-SK, ďalšie.

k8-msr (frequency/voltage scaling on Athlon 64) - zdroják programu na zmenu frekvencie a napätia na Athone 64 a Semprone pre Linux. Skompilujete príkazom gcc k8-msr.c -o k8-msr a spustíte ./k8-msr ako root. Podobné programy pre Intel Core 2 Duo: c2d-msr a Sandy Bridge: i5-msr

k10-msr (frequency/voltage scaling + P-state tuning on AMD 10h-16h) - zdroják programu na zmenu frekvencie a napätia na procesoroch a APU architektúry K10 (Phenom), Bulldozer/Piledriver/Steamroller/Excavator a Jaguar pre Linux. Umožňuje navyše meniť tabuľku P-stavov v procesore, takže frekvencia a napätie sa potom môžu prepínať automaticky. Pri troche šťastia vypíše aj teplotu a parametre RAM. Skompilujete príkazom gcc k10-msr.c -o k10-msr a spustíte ./k10-msr ako root. Podobné programy od iných autorov: amdmsrt (Linux) a AmdMsrTweaker (Windows)

zen-msr - pre AMD Ryzen - je to len testovacia verzia, ktorá mi moc dobre nefunguje (procesor si aj tak robí po svojom - najmä napätia vôbec neberie do úvahy). Zrejme sa tu neoplatí babrať s MSR registrami (maximálne tak na úpravu niektorej P-state frekvencie) a používať radšej priamo linuxové sysfs rozhranie, napr. vypnutie boostu, nastavenie frekvencie (presnejšie P-stavu): for i in 0 1 2 3 4 5 6 7; do echo 0 > /sys/devices/system/cpu/cpufreq/policy$i/cpb; done for i in 0 1 2 3 4 5 6 7; do echo 2200000 > /sys/devices/system/cpu/cpufreq/policy$i/scaling_setspeed; done a pre APU (resp. AMD GPU) sa zíde aj rocm-smi, kde sa napr. dá podtaktovať GPU a RAM (je to pythonový skript, ktorý komunikuje s kernelovým amdgpu driverom).

Audio/video

MPlayer - prehrávač audia/videa v akomkoľvek formáte (drvivú väčšinu súborov prehráva bez kodekov). Súčasťou je aj enkóder videa (pre x264 a XviD treba kodeky, pozri nižšie). Možete s ním ripovať DVD, ukladať streamy z internetu atď.

VideoLAN (VLC) - prehrávač a streamovací server audia/videa. Vhodný na ukladanie streamov a enkódovanie do iných kontainerov ako AVI.

Avidemux - na strihanie videa, je tam schovaná aj funkcia na prevod DVD titulkov do SRT (nezabudnite si predtým uložiť IFO súbor z DVD). Osvedčil sa pri ukladaní videa v x264+MP3 v kontajneri MP4 (momentálne asi najpraktickejšia možnosť pre zachovanie rozumnej kompatibility).

x264, XviD, Vorbis, LAME - najužitočnejšie kodeky. Najvyššiu kvalitu má Vorbis a x264 (na počítače <1GHz použite radšej XviD).

AV1, Opus - najnovšie open-source kodeky pre fajnšmekrov, ktorí nad tými vyššie ohŕňajú nos.

Matroska (MKV) - univerzálny kontainer na video (myslí sa tým spôsob zmiešania video a audio stôp, ako je napr. AVI, ASF, MOV, VOB). Dá sa do toho uložiť viacero stôp paralelne aj sériovo + titulky.

Astronómia

Celestia - OpenGL prehliadač slnečnej sústavy a vesmíru celkovo. Ak sa naučíte klávesové skratky, môžete sa zahrať na kapitána vesmírnej lode :-)

Stellarium - planetárium s antialiasingom, plynulým zväčšovaním; príjemný vzhľad.

Chémia

EasyChem, XDrawChem, BKChem (pre inštaláciu v Gentoo pozri BKChem python2.7 Gentoo hack) - kreslenie molekúl.

Grafika a dokumenty

LaTeX (číta sa latech; návod, matematické špeciality) - Už ste naštvaní z MS Wordu a iných kancelárskych aplikácií? Skúste zmenu. Vhodné najmä pre matematikov a iných vedecky a prakticky zameraných ľudí. Pre priame vytvorenie PDF treba použiť príkaz pdflatex (pre vytvorenie obsahu odporúčam \usepackage[pdftex,unicode]{hyperref} a špeciálne znaky v nadpisoch spracovať takto: \texorpdfstring{$\delta$}{δ}).
 Pre motivovaných jedincov so silnými nervami odporúčam vyskúšať aj MetaPost (natívna vektorová grafika do LaTeXu) - momentálne ale koliduje so slovenskou verziou babel, treba použiť takéto parametre: \usepackage[slovak,math=normal,shorthands="'-]{babel} (t.j. medzi aktívnymi znakmi sa má vynechať ^ a v matematickom móde sa celkom vypnú aktívne znaky).

Inkscape - program pre vektorovú grafiku aj do LaTeX-u (ako EPS). Dokáže importovať DXF.

LibreCad - program na technické kreslenie v 2D, výkresy ukladá v DXF. Do EPS exportuje len bitmapovo, pre vektorový výstup treba použiť obchádzku cez Inkscape. Často ale stačí aj bitmapový PNG. Do praktika som tým kreslil aj elektrické obvody (po čiarach).

LabPlot - vytváranie grafov (aj 3D), regresia s výpočtom odchýliek s ľubovoľnou funkciou. Grafické ovládanie. Skúšal som len starú verziu, ktorá často padala. Export aj do EPS.

gnuplot - vytváranie grafov (aj 3D), regresia s výpočtom odchýliek s ľubovoľnou funkciou (od verzie 5 je dosť nešikovný). Ovládanie cez príkazový riadok alebo pomocou skriptu. Výstup na obrazovku, do PNG, LaTeX kódu (čísla štýlov), atď. Ak funkcie kreslí príliš zubato, treba použiť set samples 1000. Najlepšiu grafickú kvalitu má výstup do MetaPostu (čísla štýlov, farebne), ktorý sa nastaví pomocou set terminal mp psnfss prologues 2 a4paper amstex, z vytvoreného *.mp súboru sa vytvorí EPS (zvyčajne s príponou 0, 1, 2 atď.) pomocou mpost --tex=latex subor.mp a z toho PDF (na priloženie do LaTeXu): epstopdf subor.0 V prípade, že nekreslí správne niektorý znak, ktorý je nutne potrebný, treba v MP súbore zmeniť \usepackage{courier} na \usepackage{lmodern}. Pre vytvorenie EPS a PDF so zabudovanými fontmi treba použiť v gnuplote prologues 3.

POV-Ray (Persistence of Vision Raytracer) - vytváranie 3D scén na základe textového zdrojáku (niečo ako programovanie, musíte si vypočítať súradnice).

Xpdf - prehliadač PDF súborov. Obsahuje aj zopár užitočných utilít na prácu s PDF súbormi.

JPdfBookmarks - program v Jave na ručné (klikacie) pridávanie obsahu do PDF súborov. Občas mrzne, preto si dáta priebežne ukladajte.

pdftk (linuxová utilita je pod názvom PDFtk Server; recenzia) - program na spájanie PDF súborov, výber a prehadzovanie strán. Je možné aj vypisovať a meniť metadáta, napríklad príkazmi: pdftk subor.pdf dump_data_utf8 | grep -v Page >info.txt ... potom ručne upraviť súbor info.txt: autora, názov, predmet ... pdftk subor.pdf update_info_utf8 info.txt output opraveny.pdf

PSUtils - kolekcia programov na manipuláciu s postscriptovými dokumentmi (zmena veľkosti, otáčanie, vytváranie brožúriek...). Napríklad na vytvorenie A5 knihy z A4 predlohy možno použiť: pstops 4:0R@.7\(0cm,14.85cm\)+3R@.7\(0cm,29.7cm\),1L@.7\(21cm,0cm\)+2L@.7\(21cm,14.85cm\) input.ps output.ps Kvôli odstráneniu bielych okrajov sa zíde použitie väčšieho pomeru, napr. pstops 4:0R@.8\(-1.4cm,15.85cm\)+3R@.8\(-1.4cm,30.7cm\),1L@.8\(22.4cm,-1cm\)+2L@.8\(22.4cm,13.85cm\) in.ps out.ps pstops 4:0R@.9\(-2.86cm,16.88cm\)+3R@.9\(-2.86cm,31.72cm\),1L@.9\(23.86cm,-2.02cm\)+2L@.9\(23.86cm,12.82cm\) in.ps out.ps Pri konverzii do PDF treba dodať osobitný príkaz, aby strany nepootáčalo naležato: ps2pdf -dAutoRotatePages=/None output.ps Vytlačené obojstranné A4 potom treba jednotlivo zložiť na polovicu, poukladať k sebe, stlačiť a natrieť okraj Chemoprénom.

Netpbm, DjVuLibre, LibTIFF, ImageMagick, sam2p - rôzne utility na prevod medzi grafickými formátmi pnm, djvu, tiff (a pdf) atď. Vhodné najmä pre použitie do skriptov na spracovanie skenovaných kníh, veľkých obrázkov a podobne (na jednotlivé obrázky je samozrejme pohodlnejšie použiť GIMP). Napríklad na konverziu TIFF súborov v odtieňoch sivej (predpokladal som príponu tif) na čiernobielo (tým som dal príponu tiff): for i in *.tif; do tifftopnm $i | pgmtopbm -threshold -value 0.7 | pnmtotiff -g4 >${i%tif}tiff; done Následný prevod do PDF: tiffcp *.tiff out.tiff; tiff2pdf -oout.pdf out.tiff alebo do DjVu: for i in *.tiff; do cjb2 -dpi 300 $i ${i%tiff}djvu; done; djvm -c out.djvu *.djvu Ak vám niekto naskenoval knihu len pri 150 dpi a ešte k tomu do jpg, oplatí sa predtým "zvýšiť rozlíšenie": for i in *.jpg; do jpegtopnm $i | ppmtopgm | pnmscale 2 | pnmsmooth | pgmtopbm -threshold -value 0.7 | pnmtotiff -g4 >${i%jpg}tiff; done Ak dokonca skenoval dve strany naraz, treba medziiným použiť pnmcut. Ak to fotil foťákom, oplatí sa vložiť vhodnú konvolúciu, napr. for i in *.jpg; do jpegtopnm $i | ppmtopgm | pnminvert | pnmconvol convol | pnminvert | pgmtopbm -threshold -value 0.9 | pnmtotiff -g4 >${i%jpg}tiff; done Prevod DjVu do PDF (prvý príkaz zistí počet stán a uloží ho do n, druhý ich uloží do TIF a tretí ich prevedie na PDF): n=$(djvudump file.djvu | grep pages | sed 's/.* \([0-9]*\) pages.*/\1/');i=1
while [ $i -le $n ]; do ddjvu -format=pbm -page=$i file.djvu | pnmtotiff -g4 >$(($i+1000)).tif; i=$(($i+1)); done
tiffcp *.tif out.tif; tiff2pdf -z -o out.pdf out.tif

ScanTailor Advanced - vynikajúci program na polo-automatické spracovanie naskenovaných kníh, najmä rozsekanie dvojstrán, natočenie textu do horizontálnej polohy a osekanie okrajov.

ABBYY CLI OCR for Linux (momentálne nedostupné) - komerčný program na rozpoznávanie textu (obdoba FineReadera z Windowsu, ale tento sa používa len cez príkazový riadok). Stojí síce nejakých sto eur, ale výsledná kvalita a možnosti stoja za to. Nová verzia 11 automaticky koriguje natočenie strany, takže sa oplatí mu predhodiť dokument v odtieňoch sivej, hoci ten môže mať pri 600dpi aj nejaký ten gigabajt, a nechať, nech si ho program prevedie do čiernobielej palety sám (voľba -ibw).
 Vzhľadom na to, že linuxová verzia už nie je predajná, pre tých, ktorí sa rozhodnú kúpiť Windowsovú (na wine nefunguje), odporúčam takýto postup: 1. predbežné spracovanie sivých skenov v ScanTailor (rozdelenie, otočenie, osekanie), 2. prevod na čiernobielo vo FineReaderi bez OCR (pozor, vypnúť otáčanie, aj tak by ho robilo až po čiernobielej konverzii), 3. doladenie čiernobielych strán v ScanTailor (osekanie, despeckle, rovnaké rozmery; pozor na prevzorkovanie v poslednom kroku) + občas grafický editor; alebo pomocou netpbm utilít, 4. finálne OCR vo FineReaderi (bez preprocessingu), 5. naklikať obsah v JPdfBookmarks

Matematika

Maxima - analytické aj numerické riešenie limít, integrálov, matíc atď.

Octave - program pre numerické výpočty (alternatíva k Matlabu). Vektory, matice, Fourierova transformácia, riešenie rovníc atď. Syntax podobná jazyku C.

ROCm - open-source implementácia OpenCL pre grafické karty AMD, ale varujem, že pri pokuse to použiť si asi budete trhať vlasy (každopádne, ak chcete používať superpočítače akcelerované kartami AMD, asi sa tomu nevyhnete). Dávam tu zbierku zdrojákov (okrem llvm-roc) a ebuildov pre Gentoo. V skratke, najlepšia verzia je 4.2 pre karty (Polaris,) Fury, Vega, a integrovanú grafiku v Raven Ridge (tá funguje vo verziách 2.10, 3.1, 3.3, 3.10 - 4.3). Pre Radeon VII je najlepšia verzia 4.0 (lebo novšie verzie vyžadujú kernel aspoň 5.13). Niektoré programy vraj fungujú len s verziou 3.3. Ako alternatíva (najmä pre karty Navi, ktoré ale možno budú fungovať s najnovšími verziami ROCm 5.x) sa dá použiť komerčný ovládač vyextrahovaný z AMDGPU PRO (skript odporúčam vykonávať ručne, aby ste si nerozbili systém), resp. pre integrované grafiky Vega najmä verziu 20.40.

Prime95/mprime - program na testovanie prvočíselnosti a faktorizáciu Mersennových čísel (2n ‒ 1) pre x86/AMD64 platformu (kód pre AMD Zen vo verzii 29.1 sa dá použiť aj na skoršie procesory s FMA3 pomocou voľby CpuArchitecture=103 v local.txt). Ak máte niečo iné, môžete skúsiť Mlucas alebo Glucas, prípadne pre GPU CUDALucas alebo clLucas (resp. gpuOwL - tu sa oplatí používať ROCm, ale pozor: mfakto nefunguje vo verzii 3.3, a gpuOwL v ROCm 3.1 funguje len do verzie z 21.06.2020).

Primo (len pre 64-bitový Linux) - program na dokázanie prvočíselnosti pomocou algoritmu ECPP (elliptic curve primality proving). Berie ľubovoľné čísla, ale únosné je to len asi do 8000 cifier. Ide o to, že rýchlejšie algoritmy (napr. malá Fermatova veta) dávajú len tzv. pravdepodobné prvočísla (hoci pravdepodobnosť správnosti testu sa blíži 1 s ich rastúcou veľkosťou), ktoré však stačia napr. na šifrovanie pomocou RSA.

GMP-ECM - faktorizácia čísel pomocou metódy eliptických kriviek (Elliptic curve method) - rýchlo nájde prvočíselné delitele dlhé až 35 cifier. Môžete faktorizovať svoje čísla, alebo sa zapojiť do niektorého z projektov (Mersennove čísla do M40000, alebo napr. na yoyo@home). Je to pravdepodobnostná metóda, takže ak sa chcete vyhnúť sklamaniu z neúspešných pokusov, oplatí sa vypočítať si pravdepodobnosti pomocou programu ecm-prob, v ktorom sa dá zohľadniť aj predchádzajúca práca.

msieve - faktorizácia veľkých čísel pomocou kvadratického sita alebo NFS (number field sieve). Kvadratické sito je vhodné pre čísla do zhruba 120 cifier (50-ciferné rozloží za 2 s, 90-ciferné za 2 h, 100-ciferné za 15 h). Na rozdiel od ECM závisí čas faktorizácie len od veľkosti celého zloženého čísla, nie od veľkosti deliteľov. Je preto vhodnejšie na „symetrickejšie“ rozklady. Na väčšie čísla je vhodnejšie NFS, ale jeho prevádzka je podstatne zložitejšia - ak vás to však zaujíma, môžete sa zapojiť do rozkladu niektorých veľkých čísel (180-300 cifier) na NFS@Home.

Posledná zmena: 06.09.2020 + zopár doplnkov 18.06.2022