Software Archive
Read-only legacy content
17060 Discussions

Combing Numerical Analysis Group (NAG) Routines

Intel_C_Intel
Employee
1,241 Views
I am working on a program that requires a nonlinear optimization where
the objective function is the solution to a numerical integration.

I have the numerical integration and nonlinear optimization working as
individual programs.

However, when I combine the programs together via modules, I get the following error during compiling:

--------------------Configuration: combined - Win32
Debut--------------------
Compiling Fort ran...
I:Combinedcombined.f90
I:Combinedcombined.f90(105) : Error: There is no matching specific
subroutine for this generic subroutine call. [NAG_NAP_SOL]
CALL
nag_alp_sol(obi_fun,I,obj_f,x_lower=x_lower,x_upper=x_upper,obj_deriv=.false.)
----------^
Error executing df.exe.

combined.obj - 1 error(s), 0 warning(s)

I assume that multiple NAG rountines can be open at the same time, but
maybe the solution is more subtle than the brute force approach applied
in my program. I would appreciate any help on resolving this problem.
I'm not sure whether I need to use an Interface, multithreading, etc.

Thanks for you help

Dave Larcker
0 Kudos
1 Reply
Jugoslav_Dujic
Valued Contributor II
1,241 Views
I'm not familiar with NAG at all, but the error that you get
means, basically, "You screwed something up with argument
number and/or types".

Arguments obi_fun and obj_f look the most suspicious to me.
Are these some external routines that are programmer-written?
If so, you have to (at least) declare them EXTERNAL in the
calling routine:

EXTERNAL obi_fun, obj_f

or, (preferrably) provide an explicit INTERFACE block for them.

HTH

Jugoslav
0 Kudos
Reply