I have been having some trouble getting some fortran code I was given working. This code uses an external library, NUMERICAL_LIBRARIES, by Rogue Wave in order to implement a bessel function with complex argument. I have attempted to contact Rogue Wave but they have ignored my emails so far.
I downloaded a bessel function library from, https://jblevins.org/mirror/amiller/ (toms644.zip), in an attempt to get an open source version working. However, I have not been able to get this code integrated with the code given to me.
Compiling the code with this statement in cygwin:
gfortran "pulse9_sili_oneTube - Copy.f90" -o "CBESSEL.F90" -o pressureWaveModel
gives me this error statement:
/usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: /tmp/cc0Rqf3a.o:pulse9_sili_oneTube - Copy.f90:(.text+0x29d80): undefined reference to `cbesj_'
/tmp/cc0Rqf3a.o:pulse9_sili_oneTube - Copy.f90:(.text+0x29d80): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `cbesj_'
collect2: error: ld returned 1 exit status
I have linked the CBESSEL.F90 file to my main file:
INCLUDE "CBESSEL.F90"
USE Complex_Bessel
However, I cant even get the testing code running so perhaps my compiler is set up wrong? Compiling the test code gives me error saying it cant open the module file, do I need to somehow create a module file? There were no useful instructions included with this code.
Any help you can provide would be super useful!! Cheers.