Q:

What does DATA INF/1.D+300/ mean in Fortran?

I'm translating some Fortran to our C# app and I'm trying to figure out what a bit of Fortran means at the top of a function.
  DOUBLE PRECISION INF, DMIN, D12

  DATA INF/1.D+300/

What would the value of INF be?

A:

The D means "× 10???", or commonly known as the e in 1.e+300 in C#, but it's for double precision.
The DOUBLE PRECISION statement just defines 3 variables to be of type double.
The DATA statement
DATA X/Y/

translates to
X = Y;

in C#. Hence you get
double INF = 1.e+300, DMIN, D12;

Since INF is so large I believe it means "Infinity", in that case it's better to use the real IEEE infinity (double INF = double.PositiveInfinity, ...).

