Главная » Просмотр файлов » 1626435587-51311eae4652e8ad616b5bdef025cbb3

1626435587-51311eae4652e8ad616b5bdef025cbb3 (844239), страница 4

Файл №844239 1626435587-51311eae4652e8ad616b5bdef025cbb3 (Смирнов 2015 - Основы вычислительной физики ч1) 4 страница1626435587-51311eae4652e8ad616b5bdef025cbb3 (844239) страница 42021-07-16СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 4)

Возможна также «ручная» настройка, для чего вконце записи команды plot можно указывать with points для отрисовки графика с помощью точек (маркеров), with lines — для отрисовки линиями, with linespoints — линиями с точками и т. п. Полныйперечень возможностей gnuplot см. в разделе справки help plottingstyles. Лаконичный вариант тех же опций: w p, w l и w lp. Например, команда plot sin(x) w lp нарисует график sin линиями с маркерами.

При желании можно управлять толщиной (linewidth), типом16(linetype, dashtype7 ) и цветом (linecolor) линий, стилем и размероммаркеров (подробности см. в разделе справки help with, где перечислены всевозможные способы построения графиков и доступные для нихопции). Список названий цветов и их RGB представление можно посмотреть, набрав команду show colornames. Также можно указыватьцвета в виде текстовой строки вида #rrggbb, где rr, gg и bb — шестнадцатиречные коды красной, зелёной и синей компонент.

Например,строка "#ff0000" кодирует красный цвет, а "#ffff00" — жёлтый. Чтобы каждый раз не указывать в команде plot потенциально длинныйсписок стилей отображения линий и маркеров, их можно определить7 . Паракомандой set style lineметрами отображения легенды на графике также можно управлять(подробности см. в справке help key либо набрав show key для отображения текущих настроек).Заметим, что даже если график функции представляет собой гладкую линию, gnuplot вычисляет значения функции при построении графика в ограниченном числе точек (samples), соединяя их линиями.При построении графиков быстро осциллирующих функций заданногопо умолчанию числа точек (100) может оказаться недостаточно, в этомслучае следует использовать команду наподобие set samples 500.Обязательным требованием редакций научных журналов и простоправилом хорошего тона является наличие подписей осей на графиках.Для этого в gnuplot предусмотрены команды set xlabel, set ylabel.Например, команда set xlabel "Время, с"; set ylabel "Мощность,Вт" будет уместна при построении графика зависимости мощности отвремени.

Точка с запятой позволяет записывать несколько команд подряд в одной строке, что иногда делает особенно удобным использованиеистории команд, доступной при нажатии стрелок «вверх» и «вниз» наклавиатуре. Указать название для графика в целом можно с помощьюкоманды set title. Напомним, что внесённые командами set изменения станут заметны лишь после следующего вызова plot или replot.Чтобы изменить пределы, в которых gnuplot построит график, можно указать требуемые значения в квадратных скобках после командыplot.

Так, команда plot [0:2*pi] sin(x) построит график синуса напромежутке от 0 до 2 ; команда plot [0:2*pi][-0.1:1.1] sin(x) дополнительно ограничит отображаемый интервал по вертикальной осиот -0,1 до 1,1. Другая возможность решения той же задачи — команды set xrange [0:2*pi] и set yrange [-0.1:1.1]. Если необходимо,чтобы gnuplot выбирал то или иное значение предела самостоятельно<номер-линии> <список-стилей>7Начиная с версии 5 gnuplot.17в зависимости от отображаемых данных, следует использовать символ«звёздочка». Например, команда set yrange [0:*] заставит gnuplotрисовать графики на положительной полуоси , выбирая верхний предел отображаемых значений автоматически.Для отображения графиков в полярных координатах () предусмотрен режим polar:set polarplot tunset polar#построение графиков в полярных координатах r(t)#строим график r(t)=t - спираль#возвращаемся к декартовым координатам x,yGnuplot позволяет строить графики функций, заданных параметрически ((), ()).

Например, следующий код нарисует две фигурыЛиссажу (рис. 1 ( )):аset parametric #активируем режим построения параметр. функцийset xrange [-1.3:1.3]; set yrange [-1.3:1.3] #диапазон по x,yset xlabel ’X’ ; set ylabel ’Y’#подписи осей (X,Y)set samples 500#будем строить графики по 500 точкамset key off#отключаем отображение легенды на графикеset xtics 1.0 ; set ytics 1.0 #определяем шаг штрихов по осямset mxtics 5 ; set mytics 5 #количество промежуточных деленийset style line 1 linecolor "gray70" lw 3 #стиль1 линий граф.set style line 2 lc "black" linewidth 1 #стиль2 линий графиковplot [0:2*pi] sin(t)/2,cos(3*t)/2 ls 1, \sin(5*t),cos(3*t) ls 2unset parametric #возвращаемся в режим построения явных ф-цийЧасто в физике возникает необходимость отобразить на одном графике величины разных порядков. Для этого удобно использовать парные оси и 2 слева и справа от графика.

В качестве примера рассмотримпостроение графика функции Бесселя 0 (), её асимптотики√︀2/() · cos( − /4) и модуля их разности (рис. 1 ( )):бasj0(x)=sqrt(2./pi/x)*cos(x-pi/4)#определяем новую функциюset samples 500#будем строить графики по 500 точкамset xlabel ’X’ ; unset ylabel#подписи нижней и левой осиset y2label ’Невязка’ textcolor "gray50"#подпись правой осиset xrange [0.01:24]#диапазон по X при построении графиковset yrange [-2:1.3]#диапазон, отображаемый на левой оси Yset y2range [3e-4:3]#диапазон изменения на правой оси (Y2)set xtics 5 ; set ytics nomirror (-0.5,0,0.5,1,1.5)#штрихиset my2tics 1#промежуточные деления на правой оси Y218set key right top font "Arial,11"#параметры легенды#показываем штрихи на оси Y2, выбираем формат и цвет чисел:set y2tics format "10^{%T}" textcolor "gray50"set logscale y2 #используем логарифмич.

масштаб на правой осиset style line 1 linecolor "black" linewidth 2.5 #определяем>>set style line 2 lc "gray50" lw 1#стили линий графиковplot besj0(x) with lines linestyle 1 title ’J_0(x)’, \abs(besj0(x)-asj0(x)) ls 2 axes x1y2 t ’невязка’Другим примером использования двойных осей является отображение величин в разных размерностях: в калориях и Джоулях, МэВ иатомных единицах, ГГц и см−1 и т. п. В оптике часто бывает необходимо строить спектры на связанных осях частот и длин волн какпоказано в следующем примере и на рис. 1 ( ):вset xlabel ’Частота, ТГц’#подпись нижней оси (X)set ylabel ’Дисперсия {/Symbol b}_2, пс^2/км’#подпись оси Yset x2label ’Длина волны, мкм’#подпись верхней оси (X2)set xrange [190:610]#диапазон по X при построении графиковset xtics nomirror 100 #отменяем зеркальные штрихи, задаём шагset ytics 100#задаём шаг штрихов по оси Yset x2tics (0.5,0.6,0.8,1,1.4)#положение штрихов на оси X2#Определяем связь верхней оси X2 с нижней X (поддерживается >>set link x2 via 300/x inverse 300/x#начиная с Gnuplot v.5)set key off#отключаем отображение легенды на графикеset grid#показываем координатную сеткуset label 1 "(в)" at screen 0.1, screen 0.9 font ",14" #метка#показываем штрихпунктирной линией ноль дисперсии на графике:set arrow 1 from 420,graph 0 to 420,graph 1 \nohead lc "gray40" dashtype ".-._"set label 2 "{/Symbol l}_0" at 410,0 offset 0.55,-0.4set terminal pdfcairo enhanced color lw 0.75 \font "Arial,12" size 5cm,5cmset output ’DispersionTF.pdf’#перенаправляем вывод в файлplot ’beta2_d=2000nm.dat’ u ($1*500/pi):($2) w l lc "black"По умолчанию, каждый следующий вызов команды plot приводитк очистке построенного ранее графика.

В случае, когда необходимосовместить несколько графиков в виде панелей (подобно тому, как организован рис. 1), либо сделать врезку на графике, можно использовать режим multiplot, активируемый и отключаемый командами setи unset.19(б)10.50-0.50J0(x)невязка10010-110-210-3-1-1015XДисперсия β2 ×10-2, пс2/км(в)10 15 20XДлина волны, мкм1.4 1 0.8 0.6 0.5(г)102λ0-11-2-3200 300 400 500 600-2Частота, ТГц02Частота, отн.ед.Y1Невязка(а)0XРис. 1.

Построение графиков в gnuplot: (а) параметрические функции, (б)отображение величин разных порядков, (в) связанные оси, (г) гистограммаПовысить информативность графика и сделать более понятным егоописание можно, добавив на график дополнительные подписи и метки (label), а также линии и стрелки (arrow). Пример использованияметок и линий показан на рис. 1 ( ) — вертикальной штрихпунктирной линией показана длина волны нулевой дисперсии 0 . Заметим,что gnuplot позволяет использовать пять способов задания координатдля указания положения произвольных линий, стрелок, текста и легенды. Их называют «первая» (first), «вторая» (second), «графическая»(graph), «экранная» (screen) и «символьная» (character).

«Первая»координата отсчитывается по нижней оси X и левой оси Y, «вторая» —по верхней оси X2 и правой оси Y2. «Графическая» координата опре-в20деляет относительную позицию точки в рамке графика8 . «Экранная»координата отсчитывается относительно всего экрана (бумаги), приэтом начало отсчёта расположено в левом нижнем углу, точка (1,1) — вправом верхнем. Если тип координаты не указан явно, по умолчаниюпредполагается, что задана «первая» координата.

Иногда удобно бывает комбинировать координаты разных типов — в приведённом вышепримере было использовано:set arrow 1 from 420, graph 0to420, graph 1Такой способ позволяет провести вертикальную линию через заданнуюточку 0 = 420 ТГц от низа (координата graph 0) до верха графика(graph 1) независимо от выбранных диапазонов отображения xrange,yrange по осям. Более подробную информацию можно получить, набрав help coordinates.С помощью gnuplot можно строить гистограммы и функции распределения по выборке реализаций случайной величины, сохранённойв текстовом файле. Например, на рис.

Характеристики

Тип файла
PDF-файл
Размер
1,98 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6549
Авторов
на СтудИзбе
300
Средний доход
с одного платного файла
Обучение Подробнее