- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
My compiler cannot seem to find the AVDef library and therefore I cannot write any programs which display and save .AGL files.
I have used the example program:
program MAIN
! AVDef is the Array Visualizer module file
use DFLib
USE AVDef
IMPLICIT NONE
! Define a 2D array of reals
integer, parameter :: lbc=1, ubc=40, lbr=1, ubr=50
real, parameter :: pi=3.14159
! Using allocatable array M for array viewing
! The array_visualizer attribute will result in better performance
! when using the aview lib with allocatable arrays.
real(4), allocatable :: M(:, :)
!DEC$ATTRIBUTES array_visualizer :: M
integer :: lbnd(2) = 0
real x, y, z, rval
integer status, i, j, arrayData
character(1) :: key
! allocate memory for the array
allocate(M(lbc:ubc, lbr:ubr))
print *, "Initializing array data"
do i=lbr,ubr
x = i/(ubr-lbr+1.0)
do j=lbc,ubc
y = j/(ubc-lbc+1.0)
z = sin(x*pi) + cos(y*pi)
M(j, i) = z
end do
end do
! Call StartWatch since we are interested in viewing M
call faglStartWatch(M, status)
! Set lbnd to the lower bound values of M
! (This is not really needed if we are using the default Fortran array
! indexing value of 1)
lbnd(1:size(shape(M))) = lbound(M)
call faglLBound(M, lbnd, status)
print *, "Starting Array Viewer"
call faglShow(M, status)
! Set the title bar on ArrayViewer
call faglName(M, "sin(x) + cos(y)", status)
print *, "press any key to continue"
key = GETCHARQQ()
print *, "Adding some random fluctuations to the array data"
do i=lbr,ubr
do j=lbc,ubc
call RANDOM(rval)
rval = rval * 0.2 - 0.1
M(j, i) = M(j, i) + rval
end do
end do
print *, "Informing the viewer that the array data has been changed."
call faglUpdate(M, status)
! Change the title to reflect the changes in the data set
call faglName(M, "sin(x) + cos(y) + noise", status)
print *, "press any key to continue"
key = GETCHARQQ()
! Uncomment the following line to have the ArrayViewer
! closed automatically.
! call faglClose(M, status)
! Remove M from the watch list
call faglEndWatch(M, status)
! Free the memory allocation
deallocate(M)
print *, "Done!"
end program MAIN
But it falls over at the USE AVDef statement.
What Am I doing wrong???
I have used the example program:
program MAIN
! AVDef is the Array Visualizer module file
use DFLib
USE AVDef
IMPLICIT NONE
! Define a 2D array of reals
integer, parameter :: lbc=1, ubc=40, lbr=1, ubr=50
real, parameter :: pi=3.14159
! Using allocatable array M for array viewing
! The array_visualizer attribute will result in better performance
! when using the aview lib with allocatable arrays.
real(4), allocatable :: M(:, :)
!DEC$ATTRIBUTES array_visualizer :: M
integer :: lbnd(2) = 0
real x, y, z, rval
integer status, i, j, arrayData
character(1) :: key
! allocate memory for the array
allocate(M(lbc:ubc, lbr:ubr))
print *, "Initializing array data"
do i=lbr,ubr
x = i/(ubr-lbr+1.0)
do j=lbc,ubc
y = j/(ubc-lbc+1.0)
z = sin(x*pi) + cos(y*pi)
M(j, i) = z
end do
end do
! Call StartWatch since we are interested in viewing M
call faglStartWatch(M, status)
! Set lbnd to the lower bound values of M
! (This is not really needed if we are using the default Fortran array
! indexing value of 1)
lbnd(1:size(shape(M))) = lbound(M)
call faglLBound(M, lbnd, status)
print *, "Starting Array Viewer"
call faglShow(M, status)
! Set the title bar on ArrayViewer
call faglName(M, "sin(x) + cos(y)", status)
print *, "press any key to continue"
key = GETCHARQQ()
print *, "Adding some random fluctuations to the array data"
do i=lbr,ubr
do j=lbc,ubc
call RANDOM(rval)
rval = rval * 0.2 - 0.1
M(j, i) = M(j, i) + rval
end do
end do
print *, "Informing the viewer that the array data has been changed."
call faglUpdate(M, status)
! Change the title to reflect the changes in the data set
call faglName(M, "sin(x) + cos(y) + noise", status)
print *, "press any key to continue"
key = GETCHARQQ()
! Uncomment the following line to have the ArrayViewer
! closed automatically.
! call faglClose(M, status)
! Remove M from the watch list
call faglEndWatch(M, status)
! Free the memory allocation
deallocate(M)
print *, "Done!"
end program MAIN
But it falls over at the USE AVDef statement.
What Am I doing wrong???
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Appologies for the lump of text, it was pasted in and must have lost the formatting or something.
Any way the compiler I am using is the CVF fortran 6.5 for windows NT, and I cant fine any AV subroutines in any of the CVF folders.
Help?
Any way the compiler I am using is the CVF fortran 6.5 for windows NT, and I cant fine any AV subroutines in any of the CVF folders.
Help?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You also sent this to vf-support@compaq.com and included in your message there information that told me you have the Standard Edition of CVF. The full Array Visualizer component, with the ability to develop applications using the Array Viewer and to use it during debugging, is in the Professional Edition only.
Steve
Steve
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page