PyREC scaffolding (from YREC development, 7be4133)/ splintd2.fGlossary

splintd2.f

59 lines · 1 definitions · on GitHub (7be4133)

Python version: splintd2.py, 46 lines, on the right (switch to Python above the code).

Variables on this page (2)

ishort, json

Purpose

SPLINTD2 evaluates a cubic spline at one point; it is splint.f's algorithm and equation, with arrays of the fixed size JSON (5000, from DIMENSIONS_MOD), for the second derivatives made by SPLINC. Its header comment still names it "SUBROUTINE SPLINTD" (line 3↗).

How it fits

  • Who calls it: only HPOINT, after SPLINC.
  • Modules: IOUNITS_MOD, for the unit ISHORT of its error message ("ERROR IN SPLINT ROUTINE: TWO ABSCISSAE COINCIDE," with the abscissa and $x$, also written to the terminal, then STOP 1).

Definitions

subroutineSPLINTD2

lines 11–59 · GitHub

Cubic-spline interpolation at one point, arrays sized 5000; the same as SPLINT.

Uses modules DIMENSIONS_MOD, IOUNITS_MOD

Called by HPOINT ×3

Compiler warnings (1)

gfortran -Wall -Wextra, compiling only; nothing was run.

  • line 45: Equality comparison for REAL(8) [-Wcompare-reals]

Change log

The changes since rp_1

Changed since rp_1. Declarations only: /LUOUT/ to IOUNITS_MOD, the array size JSON from DIMENSIONS_MOD, IMPLICIT NONE.

Changed since a8a5950. The stop on two equal abscissas now gives the abscissa and $x$ in its message, writes it to the terminal as well as the .short file, and exits with status 1, the code for run-time errors, instead of a bare STOP (KNOWN_ISSUES.md, issue 38). SPLINT changed the same way, so question 1 stands.