📄 readcgnsvtex.f90
字号:
!------------------------------------------------------------------------------!! Procedure : readcgnsvtex Auteur : J. Gressier! Date : Novembre 2002! Fonction Modif :! Lecture des sommets d'une zone!! Defauts/Limitations/Divers :!!------------------------------------------------------------------------------!subroutine readcgnsvtex(unit, ib, iz, mesh) use CGNSLIB ! definition des mots-clefsuse CGNS_STRUCT ! Definition des structures CGNSuse OUTPUT ! Sorties standard TYPHONimplicit none! -- Entrees --integer :: unit ! numero d'unite pour la lectureinteger :: ib, iz ! numero de base et de zone! -- Sorties --type(st_cgns_vtex) :: mesh ! sommets de la zone! -- Variables internes -- integer :: ier ! code erreurreal(4), dimension(:,:,:), allocatable & :: vs ! tableau de valeurs intermediaires SINGLE real(8), dimension(:,:,:), allocatable & :: vd ! tableau de valeurs intermediaires DOUBLEinteger :: i, j, k! -- Debut de procedurewrite(str_w,*) "lecture de maillage :",mesh%ni,"x",mesh%nj,"x",mesh%nk,"noeuds"call print_info(5, adjustl(str_w))! allocation des tableaux intermediaires ! (en reel simple uniquement dans cette version)allocate(vs(mesh%ni,mesh%nj,mesh%nk))! --- Lecture du maillage ---! Lecture de Xcall cg_coord_read_f(unit, ib, iz, 'CoordinateX', RealSingle, (/ 1, 1, 1/), & (/ mesh%ni,mesh%nj,mesh%nk /), vs, ier)if (ier /= 0) call erreur("Lecture CGNS","Probleme a la lecture de la coordonnee X")! retranscriptiondo k = 1, mesh%nk do j = 1, mesh%nj do i = 1, mesh%ni mesh%vertex(i,j,k)%x = vs(i,j,k) enddo enddoenddo! Lecture de Ycall cg_coord_read_f(unit, ib, iz, 'CoordinateY', RealSingle, (/ 1, 1, 1/), & (/ mesh%ni,mesh%nj,mesh%nk /), vs, ier)if (ier /= 0) call erreur("Lecture CGNS","Probleme a la lecture de la coordonnee Y")! retranscriptiondo k = 1, mesh%nk do j = 1, mesh%nj do i = 1, mesh%ni mesh%vertex(i,j,k)%y = vs(i,j,k) enddo enddoenddo! Lecture de Zcall cg_coord_read_f(unit, ib, iz, 'CoordinateZ', RealSingle, (/ 1, 1, 1/), & (/ mesh%ni, mesh%nj,mesh%nk /), vs, ier)if (ier /= 0) call erreur("Lecture CGNS","Probleme a la lecture de la coordonnee Z")! retranscriptiondo k = 1, mesh%nk do j = 1, mesh%nj do i = 1, mesh%ni mesh%vertex(i,j,k)%z = vs(i,j,k) enddo enddoenddodeallocate(vs)!------------------------------endsubroutine readcgnsvtex
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -