Fortran typed surface object: header, dimensions, mean and std
Note
Fortran surface object, adapted from ‘surffile.c’, ‘gwyddion’ software, Copyright (C) 2005 David Necas, Petr Klapetek.
Warning
Must be 512 bytes long before length definition
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=R4), | public | :: | XOffset | ||||
real(kind=R4), | public | :: | YOffset | ||||
real(kind=R4), | public | :: | ZOffset | ||||
integer(kind=2), | public | :: | absolute | ||||
integer(kind=2), | public | :: | acquisition | ||||
character(len=128), | public | :: | client_zone | ||||
integer(kind=2), | public | :: | comment_size | ||||
integer(kind=2), | public | :: | day | ||||
integer(kind=2), | public | :: | dayof | ||||
real(kind=R4), | public | :: | dx | ||||
character(len=16), | public | :: | dx_unit | ||||
real(kind=R4), | public | :: | dy | ||||
character(len=16), | public | :: | dy_unit | ||||
real(kind=R4), | public | :: | dz | ||||
character(len=16), | public | :: | dz_unit | ||||
integer(kind=2), | public | :: | format | ||||
integer(kind=2), | public | :: | hours | ||||
integer(kind=2), | public | :: | imprint | ||||
integer(kind=2), | public | :: | inversion | ||||
integer(kind=2), | public | :: | leveling | ||||
real(kind=R8), | public | :: | lx |
surface length |
|||
real(kind=R8), | public | :: | ly |
surface width |
|||
real(kind=R8), | public | :: | lz |
surface height (max -min) |
|||
integer(kind=2), | public | :: | material_code | ||||
real(kind=R4), | public | :: | measurement_duration | ||||
integer(kind=2), | public | :: | minutes | ||||
integer(kind=2), | public | :: | month | ||||
real(kind=R8), | public | :: | mu |
surface mean height |
|||
integer(kind=2), | public | :: | nobjects | ||||
integer(kind=I4), | public | :: | nofpoints | ||||
character(len=30), | public | :: | object_name | ||||
character(len=12), | public | :: | obsolete | ||||
character(len=10), | public | :: | obsolete2 | ||||
character(len=30), | public | :: | operator_name | ||||
integer(kind=2), | public | :: | pointsize | ||||
integer(kind=2), | public | :: | private_size | ||||
integer(kind=2), | public | :: | range | ||||
character(len=8), | public | :: | reserved | ||||
character(len=34), | public | :: | reservedzone | ||||
integer(kind=2), | public | :: | seconds | ||||
real(kind=R8), | public | :: | si |
surface mean height |
|||
character(len=12), | public | :: | signature | ||||
integer(kind=2), | public | :: | special_points | ||||
integer(kind=2), | public | :: | type | ||||
integer(kind=2), | public | :: | version | ||||
character(len=16), | public | :: | xaxis | ||||
character(len=16), | public | :: | xlength_unit | ||||
integer(kind=I4), | public | :: | xres | ||||
real(kind=R4), | public | :: | xunit_ratio | ||||
character(len=16), | public | :: | yaxis | ||||
integer(kind=2), | public | :: | year | ||||
character(len=16), | public | :: | ylength_unit | ||||
integer(kind=I4), | public | :: | yres | ||||
real(kind=R4), | public | :: | yunit_ratio | ||||
character(len=16), | public | :: | zaxis | ||||
character(len=16), | public | :: | zlength_unit | ||||
integer(kind=I4), | public | :: | zmax | ||||
integer(kind=I4), | public | :: | zmin | ||||
real(kind=R4), | public | :: | zunit_ratio |
type SCALE_SURF ! bytes below: 8+10+2*12+9*16+2*30+34+128 = 408 character(len = 12) :: signature character(len = 16) :: xlength_unit character(len = 16) :: ylength_unit character(len = 16) :: zlength_unit character(len = 16) :: xaxis character(len = 16) :: yaxis character(len = 16) :: zaxis character(len = 16) :: dx_unit character(len = 16) :: dy_unit character(len = 16) :: dz_unit character(len = 30) :: object_name character(len = 30) :: operator_name character(len = 128) :: client_zone character(len = 8) :: reserved character(len = 34) :: reservedzone character(len = 12) :: obsolete character(len = 10) :: obsolete2 ! bytes below: 10*4 = 40 real(kind=R4) :: dx real(kind=R4) :: dy real(kind=R4) :: dz real(kind=R4) :: xunit_ratio real(kind=R4) :: yunit_ratio real(kind=R4) :: zunit_ratio real(kind=R4) :: XOffset real(kind=R4) :: YOffset real(kind=R4) :: ZOffset real(kind=R4) :: measurement_duration ! bytes below: 5*4 = 20 integer(kind=I4) :: zmin integer(kind=I4) :: zmax integer(kind=I4) :: xres integer(kind=I4) :: yres integer(kind=I4) :: nofpoints ! bytes below: 22*2 = 44 integer(kind=2) :: format ! 0 integer(kind=2) :: version ! 1 integer(kind=2) :: material_code ! 1 integer(kind=2) :: type ! 2 integer(kind=2) :: range ! 0 integer(kind=2) :: special_points ! 0 integer(kind=2) :: absolute ! 1 integer(kind=2) :: pointsize ! 32 integer(kind=2) :: imprint ! 0 integer(kind=2) :: inversion ! 0 integer(kind=2) :: leveling ! 0 integer(kind=2) :: seconds ! 0 integer(kind=2) :: minutes ! 0 integer(kind=2) :: hours ! 0 integer(kind=2) :: day ! 0 integer(kind=2) :: month ! 0 integer(kind=2) :: year ! 0 integer(kind=2) :: dayof ! 0 integer(kind=2) :: comment_size ! 0 integer(kind=2) :: private_size ! 0 integer(kind=2) :: nobjects ! 1 integer(kind=2) :: acquisition ! 0 !------------- 512 bytes above real(kind=R8) :: lx !! *surface length* real(kind=R8) :: ly !! *surface width* real(kind=R8) :: lz !! *surface height (max -min)* real(kind=R8) :: mu !! *surface mean height* real(kind=R8) :: si !! *surface mean height* endtype SCALE_SURF