Programming trouble with fortran optimization code

1. Jul 18, 2012

granbycools

Hi everyone,

I have some trouble adapting an existing fortran code for my application.

In the following Module I am optimizing a value for two planes ( i = iplan one&two).
In order to do that, I need to assign ten certain values from an external inp. file for each plane.

I have two loops, the first one selecting iplan one, respectively two.
In this loop is the second one, which is supposed to read in value one (dcp(i,kl)) to ten.
One value for each run in the secon loop. That means each plane is assign with ten optimization runs, and each run with a certain value.

My problem is, that: read (iread,*) dcp(i,kl) doesn´t work. The read command is linked to
the correct variable in the external inp. file, but I think that there is something wrong with the declaration
of dcp(i,kl)?

Is there anyone who can help me with that problem?
Code (Text):

! note: module inout for iread
use inout
integer :: kl, i, iplan, nscwmi=100, determdcp
real :: xnscwmi, dcp(2,10), fractionvor
dimension dcp(i,kl)

!for iplan=1 & iplan=2; nscwmi from differnet module
[B]i = 1,iplan[/B]
xnscwmi = nscwmi
! determdcp from external inp with determdcp=1
if (determsp .eq. 1) go to 501
continue

501
do 502 kl=1, 10

fractionvor = xnswmi
xnscwmi = fractionvor/10

ai   = xnscwmi*d(i,kl)+0.75
imax = int(ai)
..
....
b0(i) = 0.
a0(i) = imax
a1 (i)    = a1(i)+ a0(i)

Thanks!

2. Jul 26, 2012

swartzism

The declaration here seems strange.

Code (Text):

! note: module inout for iread
use inout
integer :: kl, i, iplan, nscwmi=100, determdcp
real :: xnscwmi, dcp(2,10), fractionvor
dimension dcp(i,kl)

Code (Text):

! note: module inout for iread
use inout
integer :: iplan, determdcp
integer, parameter :: kl = 10
integer, parameter :: i = 2
integer, parameter :: nscwmi = 100

real :: xnscwmi, fractionvor
real, dimension(i,kl) :: dcp

Let me know how that works out.