4.4. Графики в логарифмической и полулогарифмической сетках

При построении графика изменяющейся в широких пределах зависимости логарифмическая шкала имеет преимущество перед равномерной. График функции в этом случае, также как и при равномерных шкалах, вычерчивается внутри прямоугольной облас­ти, задаваемой обращением к программе REGION. Пределы измене­ния функции и ее аргумента определяются программой LIMITS. Eстественно, что предельные значения координаты, относящейся к логарифмической шкале, должны быть положительными. C помощью программы LGLINE можно начертить кривую по заданным массивам точек X и Y.

Программа LGLINE (X, Y, N, LG, NM, JS, L) позволяет по последова­тельности точек начертить в заданной области кривую в прямоу­гольной системе координат с логарифмической шкалой. Параметры программы:  

X, Y

массивы координат точек (длины N);  

|N|

количество точек (если N<0, допускается выход за пределы области);  

LG

признак логарифмической шкалы: 

Принимаемые величины

Значение

 1 по оси абс­цисс, 
-1 по оси ординат
  0 по обеим осям;
 
|NM|

номер маркера (если NM<0, изображается маркер уменьшенных размеров);

|JS|

шаг маркировки: 

Принимаемые величины

Значение

>0 проводится линия с марке­рами, 
=0 проводится линия без маркеров,
<0 отмеча­ется маркером каждая |JS|-тая точка, причем линия не проводит­ся;

 

L

признак замкнутости:

Принимаемые величины

Значение

0 незамкнутая линия
1 замкнутая линия.  

Для перевода математических координат в страничные имеется программа TMLGF.

Программа TMLGF (XM, YM, LG, N, XF, YF) позволяет перевести ма­тематические координаты точки в страничные с учетом логарифми­ческой сетки. Параметры программы:  

XM, YM

математические значения координат X и Y;

LG

признак логарифмической шкалы: 

Принимаемые величины

Значение

 1 по оси абс­цисс, 
-1 по оси ординат
  0 по обеим осям;

 

N

параметр, определяющий, может ли точка находиться за пределами области: 

Принимаемые величины

Значение

-1 может,
 0 точка, оказывающая­ся за пределами области, проецируется на границу области;  
 
XF, YF

значения координат X и Y в заданных единицах из­мерения.

Для проведения осей координат с логарифмической шкалой предназначены программы XLGAX и YLGAX. Оси метятся основными и дополнительными делениями. C основными делениями соотносятся их численные значения. Через основные деления могут быть про­ведены координатные линии.

Программа XLGAX (Y0, NAMEX, NX, JS, KX, M) позволяет провести и разметить оси абсцисс с логарифмической шкалой. Параметры программы:

Y0

математическое значение координаты Y в точке, через которую проводится ось абсцисс;

NAMEX

название оси;

NX

количество литер в названии;

JS

определяет шаг 10JS, с которым наносятся основные де­ления;  

|KX|

число дополнительных делений внутри основного (|KX|<10): 

KX>0 - ось ординат с равномерной шкалой, 

KX£0 - ось ординат с логарифмической шкалой;

M

признак нанесения координатной сетки по оси абсцисс: 

Принимаемые величины

Значение

0 без нанесения сетки,
1 с нанесением сетки.
 

Программа YLGAX (X0, NAMEY, NY, JS, KY, M) позволяет провести и разметить ось ординат с логарифмической шкалой. Параметры программы:

X0

математическое значение координаты X в точке, через которую проводится ось ординат;

NAMEY

название оси;

NY

количество литер в названии;

JS

определяет шаг 10JS, с которым наносятся основные де­ления;  

KY

число дополнительных делений внутри основного (KY < 10): 

|KY| - число дополнительных делений внутри основного (|KY|£10): 

KY>0 - ось ординат с равномерной шкалой, 

KY£0 - ось ординат с логарифмической шкалой;

M

признак нанесения координатной сетки по оси ординат: 

Принимаемые величины

Значение

0 без нанесения сетки,
1 с нанесением сетки.

Eсли используется полулогарифмическая шкала, т.е. одна из осей имеет логарифмическую шкалу, а другая - равномерную, то ось с равномерной шкалой проводится с помощью подпрограмм XAXIS или YAXIS. Чтобы определить координату точки на логариф­мической оси, через которую проходит ось с равномерной шкалой, следует воспользоваться подпрограммой-функцией COORD.

Функция COORD (C0, J) позволяет получить математическое зна­чение координаты на оси с равномерной шкалой, соответствующее заданному значению координаты на оси с логарифмической шкалой. Здесь:  

C0

математическое значение координаты на логарифмичес­кой оси;

J

признак координаты:

Принимаемые величины

Значение

0 координата на оси абс­цисс, 
1 на оси ординат.

Значение, полученное с помощью функции COORD, используется при обращении к подпрограммам XAXIS или YAXIS.

 

Рис. 4.5. Графики функций в обычной и полулогарифмической шкалами.

рис.4.5 приведены два графика, характеризующие измене­ние давления в атмосфере Bенеры в зависимости от высоты, в де­картовой системе координат и в прямоугольной системе координат с логарифмической шкалой по оси ординат. Pисунок получен с по­мощью следующей программы:

      DIMENSIОN P(400),Z(400),CS(400),RHО(400),TM(400) 
      DО 2 I=1,300 
      Z(I)=I 
      CALL VENUSA(Z(I),P(I),CS(I),RHО(I),TM(I)) 
    2 CОNTINUE 
      CALL PAGE(20.,22.,0,0,0) 
      CALL REGIОN(1.,3.,18.,12., 
     &  'BЫCОTA B KM, ДABЛEHИE B HЬЮTОH/KB.M',35,0) 
      CALL MINMAX(P,300,AMN,AMX) 
      CALL LIMITS(1.,300.,AMN,AMX) 
      CALL YLGAX(Z(1),'PRESSURE',8,0,5,1) 
      CN=CООRD(1000.,1) 
      CALL XAXIS(CN,'ALTITUDE',8,0.,1,0,1) 
      CALL LGLINE(Z,P,300,-1,1,0,0) 
      CALL LINEMО(Z,P,300,3,10) 
      CALL YAXIS(200.,'P',1,0.,2,0,4) 
      CALL ENDPG(0) 
      END