#! /bin/bash
# Last edited on 2021-03-05 23:01:21 by jstolfi

# To be {source}d (not executed) by other shell scripts.

# Analyzes the ${arg} and ${val} variables.
# Defines 
#
#   ${argform}    Formula of argument variable, "s" or "\\theta"
#   ${argtit}     Readable name of argument variable
# 
#   ${valform}    Formula of value variable, "c(s)", "R(\\theta)", etc.
#   ${valtit}     Readable name of value variable
#   ${setyrange}  Gnuplot commands for setting Y range, tics, grid (if normalized).
#
#   ${xlabel}     Label for X axis.
#   ${ylabel}     Label for Y axis.

# Parse the argument variable name:
if [[ "/${arg}" == "/arc" ]]; then
  argform="s"; argtit="Arc length"
elif [[ "/${arg}" == "/ang" ]]; then
  argform="\\theta"; argtit="Tangent angle theta"
else
  echo "** invalid arg = [${arg}]" 1>&2; exit 1
fi

# Parses the value variable name:
if [[ "/${val}" == "/cvt" ]]; then
  valform="c(${argform})"; valtit="Curvature"
  setyrange="set yrange [0:]; set ytics 0.05; set grid ytics"
elif [[ "/${val}" == "/rad" ]]; then
  valform="1/c(${argform})"; valtit="Osculating radius"
  setyrange="set yrange [0:]; set ytics 0.05; set grid ytics"
elif [[ "/${val}" == "/ano" ]]; then
  valform="\\theta - 2*\\pi*s(${argform})/L"; valtit="Angle/length anomaly"
  setyrange="set yrange []; set ytics (3.141596/8); set grid ytics"
else
  echo "** invalid val = [${val}]" 1>&2; exit 1
fi

xlabel="${argtit} ${argform}"
ylabel="${valtit} ${valform}"

