Начинающим

Вычислительные ресурсы для учреждений УрО РАН предоставляются на основе договоров, заключаемых в соответствии с Положение о вычислительном Центре коллективного пользования ИММ УрО РАН от 18.01.2016. Стоимость вычислительных услуг для всех остальных организаций договорная.

Cотрудникам организаций, уже заключивших договор с ИММ УрО РАН, чтобы стать пользователями суперЭВМ, необходимо:

Для работы на суперЭВМ с персонального компьютера пользователю необходимо установить на компьютере программы, которые обеспечат :

1) удаленный доступ к командной строке сервера для компиляции и запуска задач;
2) возможность обмена файлами между компьютером и сервером;
3) удобный графический интерфейс.

Начинающим пользователям полезно ознакомиться со Схемой работы на кластере.

Схема работы на кластере

Схема работы на кластере проиллюстрирована ниже на примере кластера "Уран" с использованием программ WinSCP и PuTTY (см. Программы удаленного доступа).

8

Для вычислений на компьютере или кластере нужен исполняемый файл программы и, как правило, исходные данные. Поскольку на компьютере пользователя обычно установлена операционная система Windows, а на кластере - Linux (разновидность UNIX), то для счета на кластере необходимо получить исполняемый файл с помощью одного из компиляторов кластера. Следовательно, на кластер должен быть переписан текст программы.
Для удаленного копирования файлов используется программа WinSCP.
Пользователь копирует файлы (текст программы, исходные данные) с персонального компьютера в свой домашний каталог на кластере:
на рисунке это копирование в /home/u9999, где u9999 - имя (идентификатор, login) пользователя на кластере.

Компиляция программ и запуск задач на счет осуществляются после входа на кластер через программу удалённого доступа PuTTY. Набирая в окне PuTTY соответствующие команды, пользователь выполняет на управляющей машине (хосте) нужные ему действия, в частности, компиляцию и запуск задач на кластере. При этом запуск задачи осуществляется с помощью постановки её в очередь на счет. Ведением очереди и стартом задач на вычислительных узлах занимается система SLURM. Во время счета параллельные вычислительные процессы задачи могут обмениваться данными по коммуникационной сети и имеют доступ к домашнему каталогу.
Пользователь в любой момент может получить информацию о своих задачах в очереди и о доступных ресурсах кластера.

Ускорение вычислений достигается лишь после преобразования последовательной программы в параллельную, обычно с применением стандартов MPI и OpenMP. Запуск задач на кластере осуществляется с учетом особенностей программ, в частности, с учетом использования MPI и/или OpenMP. Для отладки полезно запустить на кластере последовательный тестовый вариант программы. Так же как параллельные, последовательные (однопроцессные) программы должны запускаться путем постановки в очередь.
Для работы на кластере полезно ознакомиться с базовыми командами ОС UNIX.

Внимание! По правилам пользования вычислительным кластером "Уран" счетные задачи можно запускать лишь на вычислительных узлах кластера, используя команды системы SLURM srun, sbatch или упрощенную команду mqrun (см. раздел Запуск задач на кластере). Такое ограничение связано с тем, что исполняющиеся на хост-машине процессы счетного характера на длительное время занимают процессорные ядра хост-машины, затрудняя работу с кластером всех остальных пользователей.

Вход на кластер по секретному ключу

Для входа на кластер пользователь должен иметь логин (имя пользователя) и для аутентификации (подтверждения подлинности) ключ или пароль (password).
Поскольку использование ключа обеспечивает большую конфиденциальность и дает возможность избавиться от подтверждения пароля для операций типа scp (удалённого копирования файлов), доступ по ключу рассматривается в дальнейшем как более предпочтительный.
Поэтому первоначально, а также при утере пароля или ключа для обеспечения доступа к кластеру необходимо создать ключи, как это описано ниже.

Для входа на кластер из ОС Windows можно воспользоваться программой PuTTY (см. Программы удаленного доступа).


Доступ по ключу

Для организации доступа по ключу требуется выполнить следующую последовательность действий.

1. Сгенерировать и сохранить на своем компьютере приватный (секретный) и публичный ключи,
используя программу PuTTYgen из поставки PuTTY, как проиллюстрировано в инструкции [1]. При этом публичный ключ следует сохранить в файле Блокнота, копируя текст из PuTTYgen: начиная с типа ключа 'ssh-rsa' и заканчивая знаками '==' и комментарием с датой вида 'rsa-key-20150421'.
Секретный ключ рекомендуется зашифровать кодовой фразой (паролем секретного ключа, passphrase) и хранить в безопасном месте.

2. Добавить публичный ключ в файл ~/.ssh.authorized_keys каталога на сервере ( '~’ обозначает домашний каталог пользователя).   Пользователь может сделать это самостоятельно (если у него есть доступ на кластер по паролю или другому ключу, см. [1]) или отправить файл с публичным ключом администратору кластера на адрес parallel@imm.uran.ru. Администратор кластера установит публичный ключ и сообщит об этом пользователю.

3. Создать в PuTTY именованную сессию (Session) для работы на кластере с доступом по ключу, для чего вставить путь к секретному ключу в разделе Connection->SSH->Auth, вернуться в раздел Session и, заполнив поля Host Name и Saved Sessions значениями, например umt.imm.uran.ru и umt, сохранить настройки (см. [1]).

После этого работа с кластером может быть инициирована двойным нажатием на имени созданной сессии.


Использование агента аутентификации

Если секретный ключ защищён кодовой фразой (passphrase), то запуск агента аутентификации, программы Pageant из поставки PuTTY (см. инструкцию [2]), избавляет от ввода passphrase при повторном соединении по ключу с кластером на период времени до завершения работы агента.

Pageant можно запустить, например, двойным кликом на секретном ключе и набором его кодовой фразы (если есть). В результате в системной области панели задач (внизу справа ) появится иконка Pageant.
Далее (при каждом входе на кластер) правой кнопкой мыши открываем меню и выбираем для запуска нужную сессию (umt).


Генерация ключей в UNIX

В UNIX-системах для генерации ключей используется утилита ssh-keygen,
создающая два файла: ~/.ssh/id_rsa и ~/.ssh/id_rsa.pub (имена по умолчанию),
агент аутентификации запускается с помощью утилиты ssh-agent.


Совместное использование ключа и пароля

Имея доступ по ключу, пользователь при необходимости может запросить пароль у администратора кластера. Администратор создает пароль (password) и кладет его в домашний каталог пользователя, сообщая ему об этом.
Пользователь всегда может изменить пароль командой passwd.

Надо иметь в виду, что при входе на кластер сначала делается попытка пройти аутентификацию по ключу, а в случае неудачи - по паролю.
В PuTTY удобнее иметь разные сессии для доступа по ключу или паролю.

При доступе по паролю вводить password требуется всегда. В случае использования ключа кодовая фраза (passphrase) запрашивается (если есть), но возможно только один раз и возможно для доступа ко многим системам. Поэтому кодовая фраза может быть более сложной, что повышает безопасность, не слишком усложняя работу пользователя.


Основные ссылки

1. Настройка аутентификации по ключу в PuTTY
2. Работа с агентом аутентификации в PuTTY

Программы удаленного доступа

Для работы на суперЭВМ с персонального компьютера пользователю необходимо установить программы на компьютере, которые обеспечат
удаленный доступ к командной строке сервера для компиляции программ и запуска задач,
возможность обмена файлами между компьютером и сервером
и позволят использовать удобный графический интерфейс.

1.  Удаленный доступ к командной строке сервера

Доступ к серверам осуществляется через протокол SSH (собственно SSH – « secure shell »). Для работы с командной строкой рекомендуется программа PuTTY. Эта программа позволяет единожды ввести адрес сервера и, в дальнейшем, выбирать его из списка сессий. В настройках PuTTY необходимо указать протокол SSH. При первом соединении с сервером программа выдает предупреждение о том, что ключ шифрования сервера ранее не использовался, и предлагает его сохранить или отвергнуть (продолжить сеанс или прервать). Естественно надо выбрать продолжение сеанса.

Полезно более подробно ознакомиться с установкой и некоторыми настройками программы PuTTY.

Пример диалога при входе на сервер UM16 с именем xxxxx с компьютера ada.imm.uran.ru:

login as: xxxxx
Password:				  (ввести пароль)
Last login: Tue Sep 6 16:31:23 2005 from ada.imm.uran.ru 

Вы можете изменить свой пароль в любое время, набрав команду passwd, например:

[~@um16]:passwd
Password for xxxxx@IMM.URAN.RU:		   (наберите здесь свой текущий пароль)
Enter new password:			   (наберите новый пароль)
Enter it again:				   (повторите новый пароль)
Password changed.			   (успешная смена пароля)

Для того чтобы защитить свою учетную запись, придерживайтесь следующих рекомендаций:
- используйте пароль не менее, чем из 6 букв и цифр и храните его в секрете;
- один раз в полгода меняйте свой пароль;
- никогда не оставляйте активный терминал без внимания, всегда выходите (logout) со своего терминала (заканчивайте сеанс) прежде, чем покинуть его;
- обязательно сообщайте о любом неправильном использовании или злоупотреблении системному администратору, иначе доступ к серверу будет закрыт.

Для того, чтобы завершить сеанс работы на сервере, выполните команду logout.

2.  Обмен файлами между компьютером и сервером

Для обмена файлами между компьютером и сервером рекомендуется использовать программу WinSCP.

При копировании файлов (протоколы SCP – “secure copy ” и SFTP – “ secure ftp ”) в настройках WinSCP рекомендуется выбрать протокол SFTP. Программа WinSCP позволяет сохранить имя пользователя и пароль. При первом соединении с сервером программа выдает предупреждение о том, что ключ шифрования сервера ранее не использовался, и предлагает его сохранить или отвергнуть (продолжить сеанс или прервать). Естественно, надо выбрать продолжение сеанса. Программа WinSCP может использоваться как самостоятельное приложение и как плагин для других программ проводников, например для Far Commander.

Тексты программ и данные для задачи можно записать в отдельный каталог на сервере, тогда вся информация по этой задаче будет сохраняться в этом каталоге (объектные модули после трансляции текстов программ, файл с сообщениями об ошибках, выходные файлы).

На сервере существует понятиe домашнего каталога, это каталог с именем /home/имя_пользователя. При работе с командной строкой этот каталог становится текущим после установления терминального соединения. Программа WinSCP может запоминать последний посещенный в предыдущей сессии каталог. Поэтому важно следить, в какой каталог производится копирование.

После копирования необходимо перейти в рабочий каталог, выполнить компиляцию программы и ее запуск.

Полезно ознакомиться с информацией об установке и некоторых настройках программы WinSCP.

3.  Графический интерфейс

Для работы с сервером удобно использовать графический интерфейс. В настоящее время предпочитаемой программой для подключения к рабочему столу кластера в графическом режиме является X2Go Client (замена программы NX Client, которая больше недоступна для скачивания с сайта производителя).

Для удалённого запуска графических Linux программ с использованием протокола X-Window предназначена и программа MobaXterm_vx.x.exe.

Установка и настройка программы PuTTY

Для установки программы PuTTY на свой компьютер  воспользуйтесь ресурсами http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Чтобы войти на нужный кластер, необходимо:

  1. Запустить программу PuTTY.
  2. В открытом окне ввести имя кластера(Host Name).

    Рис. №1

  3. Выполнить  команду OPEN.

Откроется окно , в котором после ввода логина и пароля пользователь может работать на кластере из командной строки или используя Midnight Commander.

Рис. №2

В начале сеанса выдается информация о кластере .

Рис. №3

Для удобства работы можно выполнить  некоторые настройки  и сохранить их для дальнейших сеансов.
Например, чтобы при входе на кластер пользователь мог прочитать вводный текст на русском языке, необходимо выбрать кодировку UTF – 8  и сохранить данную настройку, проделав следующие шаги.

Открыть окно PuTTY

Рис. №4

Выбрать раздел Translation.

Рис. №5

Выбрать кодировку UTF – 8.

Рис. №6

Рис. №7

Перейти к разделу Session.

Рис. №8 

Ввести имя кластера в окнах Host Name и Saved Sessions.

Рис. №9

Нажать клавишу Save (сохранить)

Рис. №10

и затем Open .

В дальнейшем для начала сеанса на кластере достаточно выделить нужную сессию и нажать Load, затем Open или выполнить двойной клик на имени сессии.

Рис. №11
ВНИМАНИЕ!
Чтобы настроить нужную кодировку при работе на другом кластере, необходимо повторить все шаги заново для этого кластера.
В итоге при запуске PuTTY будет открываться окно

Рис. №12

Пользователю достаточно выбрать нужный кластер и начать работу.
Желаем удачи!

Установка и некоторые настройки программы WinSCP

Программа  WinSCP предназначена для удаленной работы с файлами на компьютерах/серверах.

Скачать программу можно с сайта разработчиков

Стиль графического интерфейса, выбранный в процессе установки, в дальнейшем можно изменить.

Рис. №6 

По окончании работы мастера установки на рабочем столе будет создан ярлык

Рис. №7

 и откроется окно,

Рис. №8

Можно заново выбрать привычный для работы интерфейс.

Рис. №11

Ввести необходимую информацию для подключения к выбранному серверу. Пароль лучше не вводить и не сохранять.

Рис. №12

 Сохранить эти настройки.

Рис. №13

Рис. №14

Аналогично можно выполнить и сохранить настройки для входа на другие серверы/кластеры.

Рис. №15

Теперь остается выбрать сессию и выполнить ВОЙТИ.

Во время первого сеанса выдается диагностика,

Рис. №16

выбрать ДА и продолжить работу.

 Если пароль не был сохранен, то надо будет его ввести в новом окне.

Рис. №17

Далее можно работать с файлами исходного компьютера и сервера, используя настроенный интерфейс.

Однопанельный в стиле "Проводника":

Рис. №18

Либо двухпанельный в стиле "Командера":

Рис. №19

При закрытии окна рабочего инерфейса можно закончить сеанс работы. 

Рис. №20

Желаем удачи!

Mosh (Mobile Shell)

Одним из средств удаленного доступа к кластеру "Уран" является Mosh (Mobile Shel - мобильная оболочка). Mosh является альтернативой для интерактивного терминала SSH. Реализации Mosh - доступны для Windows, Linux, Android и iOS. Особенностью Mosh - является то, что она позволяет получить доступ к серверу с мобильного телефона при плохом качестве связи. Mosh поддерживает кратковременные перерывы связи и позволяет вводить команды в командной строке даже тогда, когда связь временно отсутствует. После восстановления связи, команды передаются на сервер, а экран обновляется, чтобы показать последние сообщения.

В Linux клиентская часть Mosh устанавливается стандартными средствами установки программ. Для Android необходимо установить эмулятор командной строки - termux, и выполнить в нем команду apt install mosh. В Windows и ChromeOS Mosh устанавливается как расширение браузера Chtome.

ВНИМАНИЕ. Закрытие окна приложения Mosh в любой ОС, не завершает сеанс на сервере, но делает его недоступным. Для корректного завершения работу используйте команду exit. Удаление незавершенных сеансов на сервере описано ниже.

Описание установки Mosh из браузера Google Chrome по шагам:

Шаг № 1.
Вызываем Google Chrome и входим в настройки через кнопку «Настройки и управление Google Chrome»
настройка
Шаг № 2
В открывшемся окне выбираем «Дополнительные инструменты/Расширения» или «Настройки/Расширения» (в зависимости от версии Chrome);

Шаг № 3.
Вызвав «Расширения» и не обнаружив MOSH, идем в «Интернет магазин Chrom»
поиск_по_магазину

Шаг № 4.
Mosh появился в «Расширения».

в Расширениях
Вы можете работать прямо в браузере, если дважды щелкните на иконке с изображением Mosh в Mosh, или установить приложение в "Главное меню" компьютера и запускать Mosh из меню кнопки "Пуск".
в Главном меню

Шаг № 5.
Произошел вызов Mosh.
вызов Mosh
Заполните текстовые поля для Username (ваш логин) и Hostname (имя хоста umt.imm.uran.ru), затем нажмите Connect.

Шаг № 6
пароль
После ввода пароля и появления приглашения командной строки можно начинать работать!

Несколько полезны советов.

Как добавить закрытый ключ.
Закрытый ключ добавляется при запуске Mosh по ссылке «Add ssh key». После задания ключа работа с Mosh будет происходить без запроса пароля. В диалоговое окно вставляется текст секретного ключа, который можно взять из файла ~/.ssh/id_rsa на сервере. Кнопка Save сохраняет ключ в постоянном хранилище браузера.
add ssh key
Если повторно выбрать «Add ssh key», то поле для ключа будет содержать напоминание о том, что ключ уже был задан. Если ключ ещё нужен, то можно закрыть окно крестиком. Если нажать кнопку Save не вводя новый ключ, то текущий ключ удалится из памяти.
напоминание

Как задать отображение русских букв в сеансе работы с Mosh.
Чтобы правильно отображать русские буквы необходимо в Preferences, в текстовом поле для «font-family» выбрать шрифт «monospase» (из списка удалить все кроме «monospase.

/font

Как выбросить все сеансы работы c Mosh.
В командной строке выполните команду:

killall -KILL mosh-server

Осторожно. Если вы работаете через Mosh, то закроется и текущий сеанс.

Использование MobаXterm

Программа MobaXterm_vx.x.exe объединяет в себе текстовый терминал исредства для удалённого запуска графических Linux программ с использованием протокола X-Window.

Программа распространяется в виде переносимой (portable) версии в архиве с именем MobaXterm_Portable_vx.x.zip ( x.x - это номер версии), или в виде архива с инсталятором MobaXterm_Installer_vx.x.zip, которые можно бесплатно получить на сайте разработчика.

Запустите MobaXterm_vx.x.exe :

Рисунки №1 и №2 демонстрируют вызов программы MobaXterm_vx.x.exe, которая открывает терминал.

В командной строке наберите ssh umt.imm.uran.ru и введите имя пользователя и пароль. Теперь можно запускать графические приложения, например matlab. При запуске в конец строки можно добавить символ &, что позволит освободить командную строку для ввода последующих команд:

matlab &

Программное обеспечение кластеров

Программное обеспечение кластера (трансляторы, библиотеки, пакеты прикладных программ и т. д.) обновляется и пополняется при выходе новых версий и по запросам пользователей (на адрес parallel@imm.uran.ru). Для компиляции программ доступны Intel компиляторы (бесплатно для некоммерческого использования в версиях Linux), свободно распространяемые компиляторы серии GCC (GNU Compiler Collection) и компиляторы Portland Group (PGI) с языков C , C++ , Fortran:

Intel    (icc, icpc, ifort)
GNU      (gcc, g++, gfortran, g77)
PGI      (pgcc, pgcpp, pgf77, pgf90, pgf95)

Для трансляции Паскаль-программ можно воспользоваться Free Pascal Compiler (fpc).

Для организации межпроцессного взаимодействия можно использовать следующие библиотеки обмена сообщениями, реализующие стандарт MPI:

MVAPICH2
OpenMPI
MPICH2

MPI (Message Passing Interface) ориентирован, прежде всего, на системы с распределенной памятью. Возможно распараллеливание программ и с помощью стандарта OpenMP (Open Multi-Processing), ориентированного на системы с общей памятью (см. Компиляция и запуск задач с OpenMP), а также стандартов CUDA (см. Использование CUDA) и OpenACC (Open Accelerators), нацеленных на использование графических процессоров (GPU). В компиляторах Portland Group реализованы как OpenMP, так и OpenACC (см. PGI Accelerator и OpenACC).

На кластере установлено программное обеспечение (ПО) фирмы Intel для профилировки и отладки – Intel Parallel Studio XE. Это ПО позволяет находить наиболее нагруженные места в приложении, подсчитывать степень параллельности программы, находить тупики и гонки в параллельных программах и т.д. Основные инструменты Advisor XE, Inspector XE и Vtune Amplifier XE находятся в соответствующих папках в каталоге /opt/intel (см. Инструменты Intel для профилировки и отладки).

Для смены компиляторов и библиотеки MPI, а также выбора других пакетов прикладных программ используйте модули установки переменных окружения .

Доступные пакеты

Имеются академические лицензии на пакеты Matlab и ANSYS CFX Academic Research.

Информация о запуске программ из этих пакетов находится на страницах:

Установлены по запросам и используются пакеты OpenFOAM, GAMESS, SIESTA, VASP и др.

Компиляция программ на кластере

Выбор среды компиляции
По умолчанию на каждом кластере установлен определенный набор компиляторов и библиотек. При входе на вычислитель каждому пользователю на экран выдается информация о некоторых установках по умолчанию, а также дополнительная служебная информация. Для выбора другого доступного ПО (компилятора, библиотеки обмена сообщениями, пакета прикладных программ) необходимо использовать модули установки переменных окружения. Для быстрого доступа к настройкам основных модулей можно воспользоваться командой mpiset (эта команда без параметров выдает текущие установки). В дальнейшем, при запуске задачи на счет, необходимо следить, чтобы выставленная конфигурация (например, через mpiset) совпадала при компиляции и при запуске.

О компиляции
Компиляция (в расчете на использование MPI) выполняется утилитами (командами):

  • mpicc для программ на Си
  • mpicxx для программ на C++
  • mpif77 для программ на Фортране 77
  • mpif90 для программ на Фортране 90

Они запускают компилятор, передавая ему дополнительные флаги, специфичные для MPI (ключ -show у этих утилит покажет, какая команда будет выполнена). Заметим, что компиляция программы (например исходной) без MPI может быть выполнена и обычными средствами со ссылкой на используемый компилятор (icc, gcc, pgcc, ...).
Для файлов на Си и C++ важно расширение имени файла: для языка Си это .c, для языка С++ это .cxx.

В командной строке задается список файлов, которые надо откомпилировать, и имя выходного файла. Для удобства желательно сообщения об ошибках компиляции перенаправить в файл. Например, если наш исполняемый файл должен называться outprog и собирается из файлов in1.c и in2.c, находящихся в каталоге proj, то необходимо выполнить следующие действия:

cd proj
mpicc –o outprog in1.c in2.c 2>errors.log

Сообщения об ошибках компиляции попадут в файл errors.log. В командной строке файл можно пролистать командой:

less errors.log 

При пролистывании используются клавиши <Пробел> - следующая страница, b - предыдущая страница, q - выход из просмотра.

Подключение дополнительных библиотек обеспечивается добавлением опции –l<имя_библиотеки> в строку компиляции. Например, библиотека BLAS подключается так:

mpicc -o mytest mytest.c -L /usr/lib64/atlas -lcblas 

Если программа скомпилирована успешно, создастся файл mytest. Это можно посмотреть в WinSCP, не забыв обновить список файлов в окне, или в командной строке командой ls, которая выдает список файлов.

Компиляция программ, использующих для распараллеливания стандарты OpenMP, CUDA и OpenACC, а также особенности запуска таких программ рассмотрены в отдельных инструкциях, а именно:

Средства визуализации данных

SciDAVis

SciDAVis представляет собой интерактивное приложение, направленное на анализ научных данных и их визуализацию/публикацию. SciDAVis - многоплатформенное - Windows, Linux, MacOS X - свободное программное обеспечение. Данное программное обеспечение совмещает в себе широкую функциональность и интуитивно-понятный интерфейс. SciDAVis позволяет анализировать, обрабатывать и визуализировать экспериментальные данные и аппроксимировать кривые. Поддерживает большое количество аппроксимирующих функций, скрипты, базовые статистики с графиками и визуализацией и многое другое. Основные особенности программы SciDAVis:

  • Генерирование таблиц, матриц, графиков и заметок, собираемых в проекте с удобной организацией.
  • Таблицы для ввода данных напрямую или импорта из ASCII-файлов.
  • Встроенные операции по анализу статистики.
  • Различные форматы публикаций в двухмерном и трехмерном пространствах (включая EPS и PDF). У SciDAVis еще есть функции для расчета корреляции, автокорреляции, свертки и деконволюции.
  • Функции взятия прямого и обратного быстрого преобразования Фурье (БПФ, оно же FFT) и функции для работы со спектрами и сигналами.
  • (С установленной программой Python у вас появляется доступ к объектам.)

 

Список встроенных стандартных функций для создания формул

Стандартные функции:
abs, acos, acosh, asin, asinh, atan, atanh, avg
bessel_i0, bessel_i1, bessel_in, bessel_in_zero, bessel_y0, bessel_y1, bessel_yn, beta
ceil, cos, cosh, erf, erfc, erfz, erfq, exp, floor, gamma, gammaln
hazard, if, ln, log, log10, log2, min, max, mod, pow, rint, sign
sin, sinh, sqrt, sum, tan, tanh, w0, wm1

 

Хранение

SciDAVis хранит все данные в файле своего проекта. В качестве исходных данных программа понимает текстовые файлы, в которых числа записаны столбцами, и файлы, в которых числа разделяются запятыми (CSV). При открытии текстовых файлов в SciDAVis есть возможность указать разделитель между столбцами, разделитель дробной части и символ, отделяющий в больших числах тысячи, миллионы и т.д. для более наглядного вида. Для SciDAVis основная рабочая область – таблица с данными, а графики не привязываются к их расположению на листе, а просто рисуются в отдельных окнах.
Графики могут быть сохранены в нескольких растровых графических форматах файлов, а также в форматах Portable Document Format PDF , Encapsulated PostScript EPS или SVG.

Типы графиков

Программа может рисовать разные типы графиков.

• Исходные точки на графике могут отмечаться какими-нибудь символами. А можно оставить только эти символы без линий и получится так называемый Scatter.
• Графики, у которых точки соединяются только горизонтальными и вертикальными линиями, получаются ступеньки.
• Графики, представляющие собой вертикальные столбики, обычно их называют Bar. Есть отдельный тип графиков, когда кроме вертикального верхнего уровня столбиков задаются еще и нижние уровни.
• Есть отдельные типы графиков для рисования гистограмм.
• График, когда область под графиком закрашивается или заштриховывается.
• Диаграмма в виде долек пирога – Pie Chart.
• График, изобращающий набор векторов. Причем можно задавать координаты начала и конца вектора, а можно задавать координаты начала, его длину и угол поворота.
• Так называемый Box Plot, используемый для отображения статистических данных.
• Линии уровней.
• Можно рисовать различные трехмерные графики.
  • Трехмерные траектории
  • Трехмерные Scatter’ы
  • Графики в виде трехмерной ленты
  • Трехмерные столбцы, положение на плоскости которых задается двумя координатами, а третья координата определяет их высоту.
  • Трехмерные поверхности. Правда, у SciDAVis такой тип графиков получается угловатый. Трехмерные графики в SciDAVis’е можно вращать, приближать и удалять мышкой.

 

Как создать график в SciDAVis

  1. Построим, например, график, используя функцию IF. Откроем меню Файл и выберем команду Новый/Новый график функции (Рис. №1)

    В откывшемся диалоговом окне, зададим функцию и диапазон изменения аргумента х.

     

    Результат:

  2. Создадим таблицу и на основе значений её ячеек построим график. Заполним первый столбец рядом чисел от 1 до 30 по возрастанию с шагом 1:

    a) Выделим 1-ый столбец
    b) Заполним выделенное с помощью Таблица/Fill Selection with/Row Numbers.

    Ко второму столбцу таблицы, предварительно выделив его, применим формулу sin(col("1"))/col("1"), используя для задания формулы списки диалогового окна (см. Рис. №5)


    Выбрав График/Линия вы построите график по табличным данным. К построенному графику добавим еще график с заданием функции (см. Рис. №2):

  3. Построим график функции импортируя текстовый файл.

    • Для построения графика по насчитанным данным, записанным в файл, выполним Файл/Импорт ASCII... и не забудем правильно задать десятичные разделители (Рис. №8). В результате данные заполнят столбцы (Рис. № 9).
    • Ну а теперь знакомыми приёмами построим график, т.е.выделим 2-й столбик и График/Линия(Рис.№10). Далее вы можете делать с ним что угодно, например, сглаживать или сразу из точек вместо линии построитьсплайн (Рис. №11) т.д.

  4. Построим поверхность. Выполним Файл/Новый/Новый график 3D поверхности , в открывшемся диалоговом окне определим поверхность (Рис. №12)

Трехмерные графики в SciDAVis’е можно вращать, приближать и удалять мышкой.

Перечень пунктов меню SciDAVis

Проиллюстрируем пункты меню. Состав пункта Файл мы уже приводили, приведём и другие пункты для знакомства с интерфейсом приложения:

 
 

Официальная страница SciDAVis находится – здесь.

Интерактивная среда построения графиков GNUPLOT

gnuplot — свободная программа для создания двух- и трёхмерных графиков. gnuplot - терминальное интерактивное приложение в среде ОС UNIX. Позволяет выполнять построение 2-х и 3-х мерных графиков функций. Функции могут задаваться как в аналитическом виде, так и в виде табличных данных, хранящихся в файлах. Набор команд для построения некоторого графика (или группы графиков) может быть записан в файл и выполнен одной командой. Для работы с gnuplot необходима установка на клиентской машине графической среды X-Window (В MS Windows можно установить NX Client или MobaXterm).

  • Вызовите gnuplot:

    После исполнения команды вы увидите, что установлен терминал 'X11':

  • Следом за вызовом gnuplot можно задавать команды и просматривать результаты их выполнения, например, команда:
    plot f(x)=sin(x*a),a=0.2,f(x),a=0.4,f(x)

    нарисует график:

  • , а команда splot x*x+y*y создаст эллиптический параболоид :

  • Можно использовать команды заливки, рисования сетки по всем осям,например, для sin(sqrt(x*x+y*y))/sqrt(x*x+y*y

В современных версиях gnuplot, при использовании интерактивных терминалов (x11,wxt) точку зрения можно менять поворачивая изображение при нажатой кнопке мыши.

Работа в gnuplot осуществляется в двух режимах:

  1. Интерактивный. Пользователь общается с программой с помощью командной строки в режиме реального времени (см. рисунки №3, №4 и №5).
  2. Пакетный. Пользователь подготавливает файл, содержащий последовательный набор команд (новая команда начинается с новой строки). При работе в таком режиме командный файл должен находиться в одной директории с исполняемым файлом gnuplot. После установки gnuplot обработка команд содержащихся в файле, например, simpe1.graph, выполняется командой
    $ gnuplot simpe1.graph

      1. Пример содержимого файла simple1.graph:
        set terminal windows
        set parametric
        set encoding koi8r
        set size square
        set xrange [-1:1]
        set yrange [-1:1]
        f(x)=sin(x) g(x)=cos(x)
        plot f(t), g(t) with points ls 3
      2. Пример визуализации данных файла:
        Содержимое командного файла:
        set terminal windows
        set encoding koi8r
        set yrange [0:1]
        set xrange [0:1]
        plot "RMSresult" with lines and points
         
         
         
         
         
         
        Содержимое файла данных
        (RMSresult ):

        0.1 0.61881100
        0.2 0.55289577
        0.3 0.71881100
        0.4 0.55289577
        0.5 0.61881100
        0.6 0.55289577
        0.7 0.61881100
        0.8 0.55289577
        0.9 0.61881100
        1.0 0.55289577
      3. Пример построения графика с помощью пакетного режима. gnuplot выполняет команды из файла и сохраняет график в файле, который можно просмотреть графическим редактором:

        Содержимое командного файла:
        set term postscript eps
        set palette gray
        set view 45,45
        set isosamples 50
        set output "primer1.eps"
        splot (cos(5*acos(y/sqrt(x*x+y*y)))/(1+(x*x+y*y))**0.25) w pm3d
        1. C сайта http://yurae.boom.ru/softest/GnuPlot.htm:

          " GnuPlot может рисовать графики функций, заданных формулой или точками. Это могут быть функции одной (линия на плоскости) или двух (поверхность в пространстве) переменных. Можно строить графики функций, заданных параметрически, рисовать кривые в полярных координатах. Дополнительно можно наносить на рисунок надписи и стрелки. Поддерживаются различные стили линий и точек, шрифты. Возможен вывод на экран или в файлы различного типа. Кроме того, программа позволяет аппроксимировать экспериментальный набор точек кривыми заданного вида. Работать программа может как под управлением Windows, так и под управлением Unix-подобных ОС. При всем этом, программа абсолютно бесплатна".

          Описание языка можно посмотреть на сайте http://jarosh.by.ru/gnuplot/gnuplot_rus.html

           

           

           

           

           

      Базовые команды ОС UNIX

      Полная информация по UNIX командам и их параметрам выдается с помощью справочной команды
      man <имя команды> (q или Q - выход из man).
      Далее под именем файла понимается простое, полное или относительное имя файла.
      Простое имя файла - это имя файла в текущем (рабочем) каталоге (директории), например, mytest.
      Полное (абсолютное) имя файла включает путь от корневого каталога, обозначаемого символом слеш (/), до каталога, содержащего файл, например, /home/u9999/dir/mytest
      (слеш используется и как разделитель подкаталогов). Заметим, что /home/u9999 называется домашним каталогом пользователя u9999, домашний каталог обозначается тильдой (~).
      Относительное имя файла содержит путь, который отсчитывается от текущего каталога и, следовательно, не начинается со слеша, например, dir1/mytest1.
      Аналогичные пояснения относятся и к именам каталогов.

      Следует иметь в виду, что большие и малые буквы в UNIX различаются.
      При наборе команд и путей к файлу можно нажимать клавишу Tab для автодополнения имен; с помощью стрелок вверх и вниз можно выбрать ранее выполнявшуюся команду.

      Ниже перечислены основные команды, с которыми полезно ознакомиться для работы в ОС UNIX:

      • pwd — выдать полный путь текущего каталога;
      • mkdir  <имя каталога> — создать каталог;
      • cd  <имя каталога> — сменить текущий каталог;
      • cd ..  — перейти в каталог уровнем выше ;
      • cd  — перейти в домашний каталог ;
      • ls — распечатать содержимое текущего каталога;
      • ls <имя каталога> —  распечатать содержимое заданного каталога;
      • rm -R  <имя каталога> — удалить каталог со ВСЕМИ (опция -R или -r) подкаталогами и файлами в нем;
        rm <имя файла> — удалить файл. Удалённый файл или каталог восстановить невозможно;
      • cp <имя копируемого файла> <имя каталога, в который копируем> — копировать файл, например
        cp  /home/u9999/mytest  /home/u9999/dir
      • mv <имя исходного файла> <имя каталога, в который перемещаем|имя файла, в который переименовываем> — переместить (переименовать) файл;
      • cat <имя файла> —  выдать содержимое файла на консоль;
      • more, less —  команды просмотра текста;
      • gzip <имя файла> — сжать файл;
      • gunzip <имя файла>.gz —  расжать файл;
      • tar <опции> <имя архива>.tar <имена файлов и каталогов>работа с архиватором tar;
      • size <имя файла с исполняемой программой> — выдать размер исполняемой программы в байтах, например
        $ size mytest
          text    data   bss         dec         hex       filename
          423017  12016  2128658400  2129093433  7ee76339  mytest

        где
        text - размер выполняемого кода,
        data - размер области инициализированных данных,
        bss - размер области неинициализированных данных,
        dec - общий размер программы,
        hex - общий размер программы в шестнадцатеричной системе,
        filename - имя программы. Если имя не указано, то будет использоваться a.out ;

      • quotacheck (добавленная команда) позволяет узнать назначенный пользователю лимит дискового пространства и текущий объем его данных на диске, например
        $ quotacheck
        User: u9999
        Used: 25.18GB
        Limit: 100.00GB
      • du <опции> <имя файла или каталога> — оценка места на диске, занимаемого файлом или каталогом, например
        du -h mytest

        опция -h используется для более удобной формы выдачи (например, 1K 234M 2G), иначе по умолчанию в K, т.е. в Kбайтах (1 Кбайт=1024 байт); опция --si как -h, но использует степень 1000, а не 1024.

        du -sh /home/u9999

        опция -s используется для выдачи суммарного места на диске, занимаемого пользователем u9999.
            При отсутствии аргумента-имени выдается информация для текущего каталога:
            du -sh      — размер текущего каталога;
            du -h       — размер каталога и подкаталогов.

      • find <имя каталога> -mtime <количество суток> — выдать имена всех файлов из <имя каталога> и его подкаталогов, которые изменялись в последние 24*(1+<количество суток>) часов;
      • passwd — сменить пароль;
      • uptime — получить время непрерывной работы сервера;
      • exit — выйти из оболочки (или отключиться от машины).

      Работа с архиватором tar

      tar <опции> -f <имя архива.tar> <имена файлов и каталогов>

      Опции:

      • -f — указать имя файла архива. По умолчанию архив читается со стандартного ввода. -f - — явное задание чтения архива со стандартного ввода.

      • -c — создать архив и записать в него файлы;

      • -x — извлечь файлы из архива;
      • -t — просмотреть содержимое архива; формат вывода аналогичен команде ls –l; если имена файлов не указаны, то выводятся сведения обо всех файлах архива;

      • -z — использовать программу gzip для сжатия при архивировании файлов и для обратной распаковки архива перед извлечением из него файлов. Файлу сжатого архива принято давать с расширением .tar.gz или сокращённо .tgz;

      • -j — аналогично -z только для программы bzip2 и архивов с расширением .tar.bz2 или .tbz; В современных версиях tar опции вызова программы сжатия -z, -j и т.п. указывать не обязательно — формат архива распознаётся автоматически.

      • -p — при извлечении сохранить права доступа к файлам (по умолчанию сбрасываются права указанные в маске umask);

      • -v — выводить имена всех файлов, которые обрабатываются; если выбрана и опция t, то v дает больше информации о сохраненном файле, а не просто его имя.

      При использовании нескольких опций знак «-» перед опциями не ставится.

      Примеры

      tar cf myarch.tar file1 file2 … filen — создание архива myarch.tar и запись в него перечисленных файлов;

      tar cf myarch.tar mydir — создание архива из содержимого каталога mydir и всех его подкаталогов в файле myarch.tar;

      tar xvpf myarch.tar— извлечение файлов из архива; при извлечении формируются и все подкаталоги; (f — ссылается на архивный файл, данная опция ставится последней в списке опций; p — заархивированные файлы будут восстановлены с изначальными правами доступа; v — выводятся имена извлекаемых файлов);

      tar tf myarch.tar — выдача списка всех файлов, хранящихся в архиве myarch.tar;

      tar cfz myarch.tgz mydir — архивация файлов с последующим сжатием архива программой gzip;

      tar xfz myarch.tgz — вызов gzip для распаковки архива перед извлечением файлов;

      zcat myarch.tgz | tar xf - — вызов внешней программы распаковки и передача распакованного архива через перенаправление стандартного ввода.

      Архив

      Установка и настройка NX клиента для Windows

      1. Дистрибутив NX клиента для Windows (nxclient-x.x.x-x.exe, где x.x.x-x - это номер версии) можно бесплатно получить на сайте разработчика www.nomachine.com в разделе
        DOWNLOAD->Legacy NX 3.5.0 products (NX Client for Windows в списке NX Client products).

        ВНИМАНИЕ! Версия 3 была полностью заменена версией 4, коммерческой.
        Вместо программы NX Client можно использовать программу X2Go Client, а также MobaXterm_vx.x.exe.

        Чтобы начать процедуру установки запустите скаченный файл и проделайте весь путь инсталляции до добавления NX Client for Windows в меню:
        none
      2. Запустите NX Connection Wizard (мастера настройки NX) для установки вашей сессии

        Диалоговое окно настройки сессии:
        none Далее: none  

        • • Host - имя сервера, к которому планируется подключение. Для кластера "Уран" это имя umt.imm.uran.ru .
        • • Port- номер порта, на котором сервер ждет подключений - 22.
        • • Ползунок с подписями "Modem", "ISDN", "ADSL", "WAN" и "LAN" - меняет степень сжатия данных в канале между сервером и клиентом и позволяет снизить объем трафика в канале связи "клиент <-> сервер". Выбор левой отметки означает меньшую нагрузку на сеть и большую на процессор, а правой отметки - большую нагрузку на сеть и меньшую на процессор.
          Итак, задав имя сервера, порт, имя сессии вам необходимо задать параметры рабочего стола:

        noneDesktop - выбор параметров рабочего стола. В одном выпадающем списке выбирается ОС, запущенная на сервере, к которому планируется подключение. Во втором выпадающем списке выбирается графическая оболочка (Gnome, KDE, пр.), вход в которую будет осуществлен автоматически. Рекомендуем задавать KDE.
        Display - установка размеров экрана. Можно выбрать конкретные значения (например, "640х480" или "800х600" и т.д.), можно выбрать полноэкранный (Fullscreen) или пользовательский (Custom) размеры...
        Следующее диалоговое окно будет завершающим настройку соединения.

      3. none

      4. В дальнейшем вызвав NX Client for Windows и задав сессию
        none
        вы можете увидеть примерно следующее:
      5. none

        Примечание:
        Сессия считается завершенной только после выключения компьютера. Закрыв окно сессии, вы можете вернутся к истории ваших команд, если повторно закажите сессию.

      Настройка русской клавиатуры в NX клиенте

      Для настройки русской клавиатуры в NX клиенте используются стандартные механизмы Linux. В графической среде, установленной на кластере "Уран", настройка выполняется следующим образом:

      Нажимаем на кнопку "Пуск" в левом нижнем углу Linux'овского рабочего стола.

      Выбираем меню "System settings"->"Regional & language"

      Выбираем подпункт "Keyboard layout" и на вкладке "Layouts" ставим галочку в "Enable keyboard layouts"

      Добавляем русский язык в "Active layouts"

      На вкладке "Switching options" и "Advanced" выбираем сочетание клавиш для переключения раскладок и объекты на которые распространяется действие переключения. На скриншотах переключение настроено по сочетанию клавиш "Alt+Пробел" одновременно для всех запущенных программ.