Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

terminat0r



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Код:
 
 use netcdf
 
  character (len = *), parameter :: td_file_name = "calculation_state_td.nc"
  integer :: td_file_id
 
  integer :: nz_dimid
  integer :: nx_dimid
  integer :: nr_dimid
  real(rdp) :: time_t
  integer :: zero_dimid
  integer :: dimids(3)  
 
 complex(cdp), dimension(nz,nx,nr) :: phi
 real(rdp), dimension(nz,nx,nr) :: phir,phim
 
  nf90_create(td_file_name, nf90_clobber, td_file_id)
 
  ! Define the dimensions. NetCDF will hand back an ID for each.  
  nf90_def_dim(td_file_id, "nz", nz, nz_dimid)  
  nf90_def_dim(td_file_id, "nx", nx, nx_dimid)  
  nf90_def_dim(td_file_id, "nr", nr, nr_dimid)  
 
  nf90_def_dim(td_file_id, "zero", 0, zero_dimid)  
 
  dimids =  [ nz_dimid, nx_dimid , nr_dimid ]
!phi
  nf90_def_var(td_file_id, "phi_re", NF90_DOUBLE, dimids, phi_re_varid)
  nf90_def_var(td_file_id, "phi_im", NF90_DOUBLE, dimids, phi_im_varid)
 
!time_t
  nf90_def_var(td_file_id, "time_t", NF90_DOUBLE, zero_dimid, time_t_varid)
   
  nf90_enddef(td_file_id)
 
  nf90_put_var(td_file_id, phi_re_varid, real(phi,kind=rdp))
  nf90_put_var(td_file_id, phi_im_varid, aimag(phi))
 
  nf90_put_var(td_file_id, time_t_varid, time_t)
 
  nf90_close(td_file_id)
  write(*,*) "done!"
 

 
читаю

Код:
 
 
  nf90_open(td_file_name, nf90_nowrite, td_file_id),"load_td_calculation_state, nf90_open" )
 
  nf90_inq_varid(td_file_id, "phir", phi_re_varid)
  nf90_inq_varid(td_file_id, "phim", phi_im_varid)
 
  nf90_inq_varid(td_file_id, "time_t", time_t_varid)
 
 
  ! Read the data. Use tempo aux arrays phir phim for re and im parts of phi
  nf90_get_var(td_file_id, phi_re_varid, phir)  
  nf90_get_var(td_file_id, phi_im_varid, phim)  
  phi=cmplx(phir,phim, kind=cdp)
 
 

 

Всего записей: 2084 | Зарегистр. 31-03-2002 | Отправлено: 02:06 22-12-2011 | Исправлено: terminat0r, 02:10 22-12-2011
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru