Program c09bafe ! C09BAF Example Program Text ! Mark 24 Release. NAG Copyright 2012. ! .. Use Statements .. Use nag_library, Only: c09baf, nag_wp ! .. Implicit None Statement .. Implicit None ! .. Parameters .. Integer, Parameter :: nin = 5, nout = 6 ! .. Local Scalars .. Integer :: ifail, j, n, nscal, wparam Character (10) :: wavnam ! .. Local Arrays .. Real (Kind=nag_wp), Allocatable :: c(:,:), x(:) Integer, Allocatable :: scales(:) ! .. Intrinsic Procedures .. Intrinsic :: trim ! .. Executable Statements .. Write (nout,*) 'C09BAF Example Program Results' Write (nout,*) ! Skip heading in data file Read (nin,*) ! Read problem parameters Read (nin,*) n, nscal Allocate (c(nscal,n),scales(nscal),x(n)) Read (nin,*) wavnam, wparam Write (nout,99999) trim(wavnam), wparam, n, nscal ! Read data array and write it out Read (nin,*) scales(1:nscal) Read (nin,*) x(1:n) Write (nout,99998) scales(1:nscal) Write (nout,99997) x(1:n) ! ifail: behaviour on error exit ! =0 for hard exit, =1 for quiet-soft, =-1 for noisy-soft ifail = 0 Call c09baf(wavnam,wparam,n,x,nscal,scales,c,ifail) Write (nout,99996) nscal Write (nout,99995) scales(1:nscal) Do j = 1, n Write (nout,99994) c(1:nscal,j) End Do 99999 Format (2X,'Parameters read from file ::'/4X,'Wavelet : ',A, & ', wparam : ',I6/10X,'n : ',I6,', nscal : ',I6) 99998 Format (/2X,'Input Data ::'/4X,' Scales :',5(I8,1X):) 99997 Format (5X,' x :',5(F8.3,1X),(/13X,5(F8.3,1X)):) 99996 Format (/2X,'Number of Scales : ',I10) 99995 Format (2X,'Wavelet coefficients C ::'/4X,'Scale :',I7,3I13) 99994 Format (10X,4(1P,E11.4,2X):) End Program c09bafe