Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates docs #33

Merged
merged 1 commit into from
Sep 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_1.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER(I4B), PARAMETER :: tsize = 17_I4B
REAL(DFP) :: xval(tsize)
REAL(DFP) :: yval(tsize)

xval = DBLE([-8, -7, -6, -5, -4, -3, -2, &
-1, 0, 1, 2, 3, 4, 5, 6, 7, 8])
yval = DBLE([66, 51, 38, 27, 18, 11, 6, 3, &
2, 3, 6, 11, 18, 27, 38, 51, 66])

CALL gp%title('TEST 1. A simple xy plot')
CALL gp%xlabel('x label ...')
CALL gp%ylabel('y label ...')
CALL gp%options('set style data linespoints')

CALL gp%plot(xval, yval)

END PROGRAM main

30 changes: 30 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_10.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER, PARAMETER :: tsize = 40
INTEGER :: ii
REAL(DFP) :: xval(tsize), yval(tsize, 4)

xval = linspace(-pi, pi, tsize)
yval(:, 1) = SIN(xval)
yval(:, 2) = SIN(xval) * COS(xval)
yval(:, 3) = (1.0_DFP - xval) * SIN(xval)
yval(:, 4) = (1.0_DFP - xval) * COS(xval)

! general options
CALL gp%options('set tics font ",8"')

!! nrow ncolumn
CALL gp%multiplot(2, 2)

DO ii = 1, 4
CALL gp%plot(xval, yval(:, ii), 'lt 4 pt 6')
END DO
! a new window will be started when all places in the multiplot
! layout is occupied.

END PROGRAM main

33 changes: 33 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_11.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace, MeshGrid
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER, PARAMETER :: tsize = 40
REAL(DFP), ALLOCATABLE :: xval(:, :), yval(:, :), zval(:, :)
REAL(DFP), ALLOCATABLE :: xv(:)
INTEGER :: nrow, ncol

xv = linspace(-0.75_DFP * pi, 0.75_DFP * pi, tsize)
CALL meshgrid(xval, yval, xv, xv) !xval=yval
nrow = SIZE(xval, 1)
ncol = SIZE(xval, 2)
ALLOCATE (zval(nrow, ncol))

!z= sin(x) * cos (y)
WHERE (xval**2 + yval**2 == 0.0_DFP)
zval = 1.0_DFP
ELSEWHERE
zval = SIN(xval**2 + yval**2) / (xval**2 + yval**2)
END WHERE

CALL gp%title('TEST 11: Simple 3D plot with color palette')
CALL gp%xlabel('x-axis,...')
CALL gp%ylabel('y-axis,...')
CALL gp%options('set style data lines')

CALL gp%surf(xval, yval, zval, paletteName='jet')

END PROGRAM main

34 changes: 34 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_12.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace, MeshGrid
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER, PARAMETER :: tsize = 55
REAL(DFP), ALLOCATABLE :: xval(:, :), yval(:, :), zval(:, :)
REAL(DFP), ALLOCATABLE :: xv(:)
REAL(DFP) :: a = -0.5_DFP
REAL(DFP) :: b = 0.5_DFP
INTEGER :: nrow, ncol

! create 3D data
xv = linspace(a, b, tsize)
CALL meshgrid(xval, yval, xv, xv)
nrow = SIZE(xval, 1)
ncol = SIZE(xval, 2)
ALLOCATE (zval(nrow, ncol))

zval = COS(2.0_DFP * pi * xval) * &
SIN(2.0_DFP * pi * yval)

CALL gp%title('TEST 12: A beautiful surface plot with hidden details')
CALL gp%options('set hidden3d')
CALL gp%options('unset key')
! CALL gp%options('set contour base')

CALL gp%surf(xval, yval, zval, paletteName='jet')

CALL gp%contour(xval, yval, zval, paletteName='set1')

END PROGRAM main

38 changes: 38 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_13.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace, MeshGrid
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER, PARAMETER :: ncol = 25, nrow = 45
REAL(DFP) :: xv(ncol), yv(nrow), time
REAL(DFP), ALLOCATABLE :: xval(:, :), yval(:, :), zval(:, :)

! generate data
xv = linspace(0.0_DFP, 2.0_DFP * pi, ncol)
yv = linspace(0.0_DFP, 2.0_DFP * pi, nrow)
CALL meshgrid(xval, yval, xv, yv)
zval = SIN(xval) + COS(yval)

CALL gp%title('TEST 13. Animation of surface plot')
CALL gp%axis([0.0_DFP, 2.0 * pi, 0.0_DFP, 2.0 * pi])
CALL gp%options('unset colorbox')
CALL gp%options('set ticslevel 0')
CALL gp%axis([0.0_DFP, 2.0 * pi, 0.0_DFP, 2.0 * pi, -2.0_DFP, 2.0_DFP])

CALL gp%animationStart(1.0_DFP)
time = 0.050_DFP

DO

CALL gp%surf(xval, yval, SIN(time * pi / 2.0) * zval, &
paletteName='jet')
time = time + 0.1_DFP
IF (time > 1.0_DFP) EXIT

END DO

CALL gp%animationShow()

END PROGRAM main

20 changes: 20 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_14.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER, PARAMETER :: tsize = 80
REAL(DFP) :: xval(tsize), yval(tsize), zval(tsize)
REAL(DFP) :: xv(tsize)

xv = linspace(-2.0_DFP * pi, 2.0_DFP * pi, tsize)
xval = COS(xv)
yval = SIN(xv)
zval = linspace(0.0_DFP, 2.0_DFP, tsize)

CALL gp%plot3d(x=xval, y=yval, z=zval, &
lspec="with linespoints pt 8 ps 2")

END PROGRAM main

43 changes: 43 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_15.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace, MeshGrid
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER, PARAMETER :: tsize = 40
REAL(DFP), ALLOCATABLE :: xval(:, :), yval(:, :)
REAL(DFP), ALLOCATABLE :: zval1(:, :), zval2(:, :)
REAL(DFP) :: xv(tsize)
INTEGER :: nrow, ncol

xv = linspace(-pi, pi, tsize)
CALL meshgrid(xval, yval, xv, xv)

nrow = SIZE(xval, 1)
ncol = SIZE(xval, 2)
ALLOCATE (zval1(nrow, ncol))
ALLOCATE (zval2(nrow, ncol))

zval1 = SIN(xval) + COS(yval)
zval2 = SIN(xval) * COS(yval)

CALL gp%options('unset key')
CALL gp%axis([-pi, pi, -pi, pi])
CALL gp%options('unset colorbox')
CALL gp%options('set autoscale fix')
CALL gp%options('unset tics')

CALL gp%title('TEST 15: Contour plot')
CALL gp%multiplot(1, 2)
CALL gp%surf(xval, yval, zval1)
CALL gp%surf(xval, yval, zval2)

CALL gp%multiplot(2, 1)
CALL gp%options('set colorbox')
CALL gp%options('set tics')
CALL gp%options('set tics font ",8"')
CALL gp%contour(xval, yval, zval1, paletteName='jet')
CALL gp%contour(xval, yval, zval2, paletteName='set1')

END PROGRAM main

31 changes: 31 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_2.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace
USE GnuPlot_Class
IMPLICIT NONE

TYPE(GnuPlot_) :: gp
INTEGER(I4B), PARAMETER :: tsize1 = 50
INTEGER(I4B), PARAMETER :: tsize2 = 50
REAL(DFP) :: xval1(tsize1), xval2(tsize2)
REAL(DFP) :: yval1(tsize1), yval2(tsize2)

xval1 = linspace(-pi, pi, tsize1)
yval1 = SIN(xval1)

xval2 = linspace(0.0_DFP, 2.0_DFP * pi, tsize2)
yval2 = COS(2.0_DFP * xval2)

! This is the maximum number of plot can be drawn at the same time
! If you have more data see, you can plot can be used with matrices!
CALL gp%title('TEST 2. Plot four data sets using gnuplot')
CALL gp%options('set key top left; set grid')

CALL gp%plot(x1=xval1, y1=yval1, ls1='title "sin(x)"', &
x2=xval2, y2=yval2, ls2='with lp lt 6 title "cos(2x)"', &
x3=xval2, y3=2.0_DFP * yval2, ls3='title "2cos(2x)" lt 7', &
x4=xval2, y4=0.5_DFP * yval2, &
ls4='title "0.5cos(2x)" with points pt 8')

END PROGRAM main

25 changes: 25 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_3.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER(i4b), PARAMETER :: tsize = 125
REAL(DFP) :: xval(tsize)
REAL(DFP) :: yval(tsize)

xval = linspace(0.0_DFP, pi * 2.0_DFP, tsize)
yval = SIN(6.0_DFP * xval) * EXP(-xval)

CALL gp%title('TEST 2. A sample shows sin(x) and its zero on the plot')
CALL gp%xlabel('x, rad')
CALL gp%ylabel('sin(x), dimensionless')
CALL gp%options('set grid')

CALL gp%plot(x1=xval, y1=yval, &
ls1='title "sin(x)" with lines lt 2 lw 3', &
x2=[pi], y2=[0.D0], &
ls2='title "zero" with points pt 7 ps 3 lc rgb "#FF0000"')

END PROGRAM main

32 changes: 32 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_4.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER(I4B), PARAMETER :: nrow = 25, ncol = 6
INTEGER(I4B) :: ii
REAL(DFP) :: tf, vo, g
REAL(DFP) :: tval(nrow), yval(nrow, ncol)

tf = 10.0_DFP
g = 32.0_DFP;
tval = linspace(0.0_DFP, tf, nrow)
DO ii = 1, ncol
vo = 25.0_DFP * ii
yval(:, ii) = vo * tval - 0.5_DFP * g * tval**2
END DO

CALL gp%title('TEST 8.1: Plotting a Matrix against a vector')
CALL gp%xlabel('t, sec')
CALL gp%ylabel('y, feet')
CALL gp%options('set xrange[0:10]; set yrange [0:400];')
CALL gp%plot(tval, yval)

CALL gp%title('TEST 8.2: Matrix plot, legends and linespec')
CALL gp%plot(tval, 2.0D0 * yval(:, 3:4), &
lspec='t "vo=100" w lp lt 6 ps 3 lw 2;'// &
't "v=125"w lp lt 7 ps 3 lw 2 lc rgb "#ad6000"')

END PROGRAM main

36 changes: 36 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_5.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER, PARAMETER :: tsize = 35
REAL(DFP) :: xval(tsize)
REAL(DFP) :: yval(tsize), zval(tsize)
INTEGER(I4B) :: ii

xval = linspace(-pi, pi, tsize)
yval = 0.0_DFP
zval = 0.0_DFP
CALL gp%animationStart(1.0_DFP)
CALL gp%axis([-pi, pi, -1.2_DFP, 1.2_DFP])
CALL gp%options('set grid')

yval = SIN(xval)
zval = COS(xval)

DO ii = 1, tsize, 5
CALL gp%plot(x1=xval(1:ii), y1=yval(1:ii), &
ls1='w lines lc "red" lw 2', &
x2=xval(ii:ii), y2=yval(ii:ii), &
ls2='w points ps 3 pt 7 lc "red"', &
x3=xval(1:ii), y3=zval(1:ii), &
ls3='w lines lc "blue" lw 2', &
x4=xval(ii:ii), y4=zval(ii:ii), &
ls4='w points ps 3 pt 7 lc "blue"')
END DO

CALL gp%animationShow()

END PROGRAM main

23 changes: 23 additions & 0 deletions docs/docs-api/Gnuplot/examples/Gnuplot_test_6.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
PROGRAM main
USE GlobalData, ONLY: I4B, DFP, Pi
USE GridPointUtility, ONLY: Linspace
USE GnuPlot_Class
IMPLICIT NONE
TYPE(GnuPlot_) :: gp
INTEGER, PARAMETER :: tsize = 125
REAL(DFP) :: tval(tsize), rval(tsize)

CALL gp%options("set polar; set trange [-pi:pi]")

tval = linspace(-pi, pi, tsize)
rval = SIN(3.0_DFP * tval)

CALL gp%title("TEST 6: simple polar plot")
CALL gp%xlabel("x,...")
CALL gp%ylabel("y,...")

! CALL gp%plot(tval, rval, 'title "sin(3t)"')
CALL gp%plot(tval, COS(4.0_DFP * tval))

END PROGRAM main

Loading