# Software

The codes available in this test set can be categorized as follows:

Instructions for the use of these codes can be found in: How to perform tests. Please read this disclaimer before using any of these codes.

The codes can be downloaded separately, or obtained together in the gzipped tar-file bvpTestSet_0.5.tar.gz or as a zip-file bvpTestSet_0.5.zip.

After the download, put the file bvpTestSet_0.5.tar.gz (bvpTestSet_0.5.zip) in the directory where you want to install the bvpTestSet (bvpTestSet-path). Uncompressing and unpacking the file should create the entire distribution tree:

```
bvpTestSet-path/bvpTestSet_0.5
fortransrc
auxil
drivers
problems
solvers
matlabsrc
problems
solvers
Rsrc
problems
tests
```

The directory matlabsrc contains the matlab distribution of the problems and the matlab version of some of the coded included in the bvpTestSet. The directory Rsrc contains the R distribution of the problems. The directory fortransrc contains all the Fortran source codes, categorized as auxilary routines (fortransrc/auxil ), drivers (fortransrc/drivers), problems (fortransrc/problems) and solvers (fortransrc/solvers). The directory tests contains a makefile useful for compiling, a MATLAB function, a PYTHON, a R and a SCILAB function useful to get the plots of the solution computed by the fortran codes. It contains also an R function useful to run the fortran problem using R and the R implementation of the problems and a Matlab function useful to run the Matlab testset.

The directory structure is needed to construct the R interface of the problems and to use the makefile in the directory tests. You need only to change the first instruction of the makefile, that defines the top level directory, and the instructions that define your favorite Fortran compiler and linker.

As an example, to run a test using the makefile for GNU/linux platform launch the following commands:

[$SHELL] cd bvpTestSet-path/bvpTestSet_0.5/tests |

[$SHELL] make PROBLEM=bvpT1 SOLVER=twpbvplc |

[$SHELL] ./dotest |

the executable solve the problem "bvpT1" using the solver "twpbvplc"

The output file "bvpT1_TWPBVPLC.txt" contains information about all the steps of the numerically computed solution.

The output file "bvpT1_TWPBVPLC.m" is a MATLAB script file, that automatically plots some components of the solution.

The output file "bvpT1_TWPBVPLC.py" is a PYTHON script file, that automatically plots some components of the solution.

The output file "bvpT1_TWPBVPLC.R" is a R script file, that automatically plots some components of the solution.

The output file "bvpT1_TWPBVPLC.sci" is a SCILAB script file, that automatically plots some components of the solution.

Before to run one of these codes you need to change the working directory that should be the directory bvpTestSet-path/bvpTestSet_0.5/tests

The codes could be also downloaded separately, but you should respect the directory structure if you want to use the R utilities and the makefile

**SOLVERS**

Currently, the solvers listed in the section solvers are available. The description of each solver contains information about the auxiliary routines and the driver needed to run a test problem. Information about the official links are also included,together with the versions of the solvers with which the numerical experiments were conducted. Note that these may be older than the versions under the official links.

**DRIVERS**

Each solver needs a driver that links the solver to the problems. It can be downloaded in the solvers web page in the section related to each solver.

**AUXILIARY ROUTINES**

The file report.f contains a user interface.

The files containing the linear algebra and auxiliary routines needed by the solvers can be downloaded in the solvers web page, in the section related to each solver.

**R UTILITIES**

The function bvpRtest.m, contains a user interface to run and compile the problems written in Fortran or in R using the R solvers included in the R package bvpSolve.

**MATLAB UTILITIES**

The function bvpMtest.m, contains a user interface to run and compile the problems written in the MATLAB format using the MATLAB solvers, you can use the solvers available in the direcory bvpTestSet-path/matlab/solvers in the MATLAB environment.

**MAKEFILE**

The GNU makefile in the directory tests can be used to compile test problems using your favourite solvers.The directory structure is needed to use the makefile in the directory tests. You need only to change the first instruction of the makefile that define the top level directory and the instructions that define the Fortran compiler and linker you want to use.