libsim Versione 7.2.6
|
◆ volgrid_get_vol_3d()
Return a 3-d pointer to a x-y-z slice of a volume. This method works both with volumes having allocated and non-allocated thisvoldati array, and it returns a pointer to a 3-d slice either from the allocated thisvoldati array or from the grid_id object on file or in memory. In the second case the pointer should be either ALLOCATE'd to the expected size or NULLIFY'ed, and if NULLIFY'ed, it is allocated within the method, thus it will have to be deallocated by the caller when not in use anymore. Since this method may be called many times by a program, it is optimized for speed and it does not make any check about the matching size of the pointer and the array or about the allocation status of this, so it should be called only when everything has been checked to be in good shape.
Definizione alla linea 652 del file volgrid6d_class.F90. 653else
654 if (unit==0)then
655 lunit=getunit()
656 unit=lunit
657 else
658 lunit=unit
659 end if
660end if
661
662lfilename=trim(arg)//".vg6d"
664
665if (present(filename))then
666 if (filename /= "")then
667 lfilename=filename
668 end if
669end if
670
671if (present(filename_auto))filename_auto=lfilename
672
673
674inquire(unit=lunit,opened=opened)
675if (.not. opened) then
676 inquire(file=lfilename,exist=exist)
677 if (exist) CALL raise_error('file exist; cannot open new file')
678 if (.not.exist) open (unit=lunit,file=lfilename,form="UNFORMATTED")
679 !print *, "opened: ",lfilename
|