StartingPoints-1D Copyright (C) 2013-2016 Marco Spadini This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the GNU General Public License for more details. About the author: Marco Spadini Dipartimento di Matematica e Informatica, Via S. Marta 3, 50139 Firenze, ITALY web: http:\\www.dma.unifi.it\~spadini e-mail: marco.spadini@unifi.it Description: Given a scalar, parameter-dependent differential equation x'=f(t,x,L), where f is T-periodic in t, the program attempts to find the pairs (L,x) such that the solution of the differential equation, corresponding to L and starting at time t=0 from x, is T-periodic. The function f ought to be inserted as a string (using FORTRAN 90/95 conventions and intrinsics). The search is limited to (L,x) in a rectangle (L0,L1)X(x0,x1), where L0, L1, x0 and x1 can be specified by the user using appropriate boxes. The same holds for the period T. The user is also prompted for a tollerance 'toll', which defaults to 1/10000, and represents the 'numerical zero', and for the number of points to be used for the computation. Higher numbers correspond to 'denser' graphics. All boxes accept simple expressions, like e/2 or pi. A word of caution concerns integer division: recall that in FORTRAN, as in many languages, 1./2. = 0.5 whereas 1/2 = 0. The program outputs its graphics in a window (one for each test) and saves the raw data in files called "disegno*.dat' whith * replaced by a progressive number (one per each test). The same is true for the function used. The user has the option, on exit, to keep the data (e.g. for further processing). (Notice that if no working Gnuplot is available StartingPoints complains but raw data are produced nevertheless.) Components. The program consists of three software pieces: 1) The interface (starPer.py) written in Python; 2) The FORTRAN main program that actually makes the computations (pertODE2.f95); 3) A FORTRAN module (Ode_RKV56.f90) that contains the adaptive Runge-Kutta-Verner 5th/6th order integrator used by the main program. Requirements: A working gfortran installation is needed for the main program. A working Python (I tested v. 2.7) installation with the Tkinter module is required for the interface. Also, to get graphics output, a working Gnuplot installation with x11 support is required. Installation: Just copy this directory somewhere you have the rights to read write and execute. RUNNING THE PROGRAM: At the prompt, issue the command "python startP.py". Some distributions have problems with Gnuplot's wxt terminal. Try "python startP_noWxt.py"