FE-Project
Loading...
Searching...
No Matches
scale_file_history_meshfield::file_history_meshfield_put Interface Reference

Public Member Functions

subroutine file_history_meshfield_put1d (hstid, field1d, registered_comp_id)
subroutine file_history_meshfield_put2d (hstid, field2d, registered_comp_id)
subroutine file_history_meshfield_put3d (hstid, field3d, registered_comp_id)

Detailed Description

Definition at line 91 of file scale_file_history_meshfield.F90.

Member Function/Subroutine Documentation

◆ file_history_meshfield_put1d()

subroutine scale_file_history_meshfield::file_history_meshfield_put::file_history_meshfield_put1d ( integer, intent(in) hstid,
class(meshfield1d), intent(in) field1d,
integer, intent(in), optional registered_comp_id )

Definition at line 316 of file scale_file_history_meshfield.F90.

318 use scale_file_common_meshfield, only: &
320 implicit none
321 integer, intent(in) :: hstid
322 class(MeshField1D), intent(in) :: field1d
323 integer, intent(in), optional :: registered_comp_id
324
325 logical :: do_put
326 integer :: ldomID
327 real(RP), allocatable :: buf(:)
328
329 type(FileHistoryMeshFieldComp), pointer :: target_comp
330 !---------------------------------------------------------------------------
331
332 call history_get_comp( registered_comp_id, & ! (in)
333 target_comp ) ! (out)
334
335 call file_history_query( hstid, do_put )
336 if ( .not. do_put ) return
337
338 !-
339#ifdef _OPENACC
340 do ldomid=1, field1d%mesh%LOCAL_MESH_NUM
341 !$acc update host( field1d%local(ldomID)%val ) async(1)
342 end do
343 !$acc wait(1)
344#endif
345 !-
346 allocate( buf(target_comp%dims1D_size(1)) )
347
348 call file_common_meshfield_put_field1d_cartesbuf( target_comp%mesh1D, field1d, buf )
349 call file_history_put( hstid, buf )
350
351 return
subroutine, public file_common_meshfield_put_field1d_cartesbuf(mesh1d, field1d, buf, force_uniform_grid)

References scale_file_common_meshfield::file_common_meshfield_put_field1d_cartesbuf().

◆ file_history_meshfield_put2d()

subroutine scale_file_history_meshfield::file_history_meshfield_put::file_history_meshfield_put2d ( integer, intent(in) hstid,
class(meshfield2d), intent(in) field2d,
integer, intent(in), optional registered_comp_id )

Definition at line 378 of file scale_file_history_meshfield.F90.

380 use scale_file_common_meshfield, only: &
383
384 implicit none
385 integer, intent(in) :: hstid
386 class(MeshField2D), intent(in) :: field2d
387 integer, intent(in), optional :: registered_comp_id
388
389 logical :: do_put
390 integer :: ldomID
391 real(RP), allocatable :: buf(:,:)
392
393 type(FileHistoryMeshFieldComp), pointer :: target_comp
394 !---------------------------------------------------------------------------
395
396 call history_get_comp( registered_comp_id, & ! (in)
397 target_comp ) ! (out)
398
399 call file_history_query( hstid, do_put )
400 if ( .not. do_put ) return
401
402 !-
403#ifdef _OPENACC
404 do ldomid=1, field2d%mesh%LOCAL_MESH_NUM
405 !$acc update host( field2d%local(ldomID)%val ) async(1)
406 end do
407 !$acc wait(1)
408#endif
409 allocate( buf(target_comp%dims2D_size(1),target_comp%dims2D_size(2)) )
410
411 if ( associated(target_comp%mesh2D) ) then
412 call file_common_meshfield_put_field2d_cartesbuf( target_comp%mesh2D, field2d, buf )
413 else if ( associated(target_comp%meshCubedSphere2D) ) then
415 target_comp%meshCubedSphere2D, field2d, buf )
416 end if
417 call file_history_put( hstid, buf )
418
419 return
subroutine, public file_common_meshfield_put_field2d_cubedsphere_cartesbuf(mesh2d, field2d, buf)
subroutine, public file_common_meshfield_put_field2d_cartesbuf(mesh2d, field2d, buf, force_uniform_grid)

References scale_file_common_meshfield::file_common_meshfield_put_field2d_cartesbuf(), and scale_file_common_meshfield::file_common_meshfield_put_field2d_cubedsphere_cartesbuf().

◆ file_history_meshfield_put3d()

subroutine scale_file_history_meshfield::file_history_meshfield_put::file_history_meshfield_put3d ( integer, intent(in) hstid,
class(meshfield3d), intent(in) field3d,
integer, intent(in), optional registered_comp_id )

Definition at line 446 of file scale_file_history_meshfield.F90.

448 use scale_file_common_meshfield, only: &
451
452 implicit none
453 integer, intent(in) :: hstid
454 class(MeshField3D), intent(in) :: field3d
455 integer, intent(in), optional :: registered_comp_id
456
457 logical :: do_put
458 integer :: ldomID
459 real(RP), allocatable :: buf(:,:,:)
460
461 type(FileHistoryMeshFieldComp), pointer :: target_comp
462 !---------------------------------------------------------------------------
463
464 call history_get_comp( registered_comp_id, & ! (in)
465 target_comp ) ! (out)
466
467 call file_history_query( hstid, do_put )
468 if ( .not. do_put ) return
469
470 !-
471#ifdef _OPENACC
472 do ldomid=1, field3d%mesh%LOCAL_MESH_NUM
473 !$acc update host( field3d%local(ldomID)%val ) async(1)
474 end do
475 !$acc wait(1)
476#endif
477
478 allocate( buf(target_comp%dims3D_size(1,1),target_comp%dims3D_size(2,1),target_comp%dims3D_size(3,1)) )
479
480 if ( associated(target_comp%mesh3D) ) then
481 call file_common_meshfield_put_field3d_cartesbuf( target_comp%mesh3D, field3d, buf )
482 else if ( associated(target_comp%meshCubedSphere3D) ) then
484 target_comp%meshCubedSphere3D, field3d, buf )
485 end if
486 call file_history_put( hstid, buf )
487
488 return
subroutine, public file_common_meshfield_put_field3d_cubedsphere_cartesbuf(mesh3d, field3d, buf)
subroutine, public file_common_meshfield_put_field3d_cartesbuf(mesh3d, field3d, buf, force_uniform_grid)

References scale_file_common_meshfield::file_common_meshfield_put_field3d_cartesbuf(), and scale_file_common_meshfield::file_common_meshfield_put_field3d_cubedsphere_cartesbuf().


The documentation for this interface was generated from the following file: