Skip to content

Commit c4c2ba9

Browse files
Small fixes to better enable running with XIOS 3 (#218)
Co-authored-by: Lottie Turner <[email protected]>
1 parent a6bb816 commit c4c2ba9

9 files changed

Lines changed: 18 additions & 9 deletions

File tree

components/lfric-xios/integration-test/iodef.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<variable_definition>
66
<variable_group id = "buffer">
77
<variable id = "optimal_buffer_size" type = "string" >performance</variable>
8-
<variable id = "buffer_factor_size" type = "double" >1.0</variable>
8+
<variable id = "buffer_size_factor" type = "double" >1.0</variable>
99
</variable_group>
1010

1111
<variable_group id = "parameters" >

components/lfric-xios/source/lfric_xios_field_mod.f90

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,11 +112,12 @@ end function lfric_xios_field_constructor
112112

113113
!> Registers a representation of the model field with the associated XIOS field
114114
!> group
115-
subroutine register(self)
115+
subroutine register(self, field_read_access)
116116

117117
implicit none
118118

119119
class(lfric_xios_field_type), intent(inout) :: self
120+
logical, intent(in) :: field_read_access
120121

121122
type(xios_fieldgroup) :: fieldgroup_hdl
122123
type(xios_domain) :: domain
@@ -135,7 +136,9 @@ subroutine register(self)
135136
! Get field group handle and add field
136137
call xios_get_handle(trim(adjustl(self%fieldgroup_id)), fieldgroup_hdl)
137138
call xios_add_child(fieldgroup_hdl, self%handle, trim(self%xios_id))
138-
call xios_set_attr(self%handle, name=trim(adjustl(self%model_field%get_name())))
139+
call xios_set_attr( self%handle, &
140+
name=trim(adjustl(self%model_field%get_name())), &
141+
read_access=field_read_access )
139142

140143
! Set up dimensions of output field
141144
vspace => self%model_field%get_function_space()

components/lfric-xios/source/lfric_xios_file_mod.f90

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -410,7 +410,7 @@ subroutine register_with_context(self)
410410

411411
! Iterate over field collection and register fields
412412
do i = 1, size(self%fields)
413-
call self%fields(i)%register()
413+
call self%fields(i)%register(field_read_access=self%mode_is_read())
414414
end do
415415

416416
! Set up time axis if needed

components/lfric-xios/source/lfric_xios_metafile_mod.F90

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,12 @@ subroutine add_field(metafile, dict_field_id, mode, operation, id_as_name, legac
269269
end if
270270
end if
271271
end if
272+
273+
! Enable read_access if field is being added for restarting
274+
if (mode == RESTARTING) then
275+
call xios_set_field_attr(field_id, read_access=.true.)
276+
end if
277+
272278
end do
273279
end subroutine add_field
274280

rose-stem/app/coupled/file/iodef.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
<variable_definition>
6060
<variable_group id = "buffer">
6161
<variable id = "optimal_buffer_size" type = "string" >performance</variable>
62-
<variable id = "buffer_factor_size" type = "double" >1.0</variable>
62+
<variable id = "buffer_size_factor" type = "double" >1.0</variable>
6363
</variable_group>
6464

6565
<variable_group id = "parameters" >

rose-stem/app/io_demo/file/iodef.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
<variable_definition>
2626
<variable_group id = "buffer">
2727
<variable id = "optimal_buffer_size" type = "string" >performance</variable>
28-
<variable id = "buffer_factor_size" type = "double" >1.0</variable>
28+
<variable id = "buffer_size_factor" type = "double" >1.0</variable>
2929
</variable_group>
3030

3131
<variable_group id = "parameters" >

rose-stem/app/lbc_demo/file/iodef.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
<variable_definition>
4848
<variable_group id = "buffer">
4949
<variable id = "optimal_buffer_size" type = "string" >performance</variable>
50-
<variable id = "buffer_factor_size" type = "double" >1.0</variable>
50+
<variable id = "buffer_size_factor" type = "double" >1.0</variable>
5151
</variable_group>
5252

5353
<variable_group id = "parameters" >

rose-stem/app/simple_diffusion/file/iodef.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
<variable_definition>
2626
<variable_group id = "buffer">
2727
<variable id = "optimal_buffer_size" type = "string" >performance</variable>
28-
<variable id = "buffer_factor_size" type = "double" >1.0</variable>
28+
<variable id = "buffer_size_factor" type = "double" >1.0</variable>
2929
</variable_group>
3030

3131
<variable_group id = "parameters" >

rose-stem/app/skeleton/file/iodef.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
<variable_definition>
6060
<variable_group id = "buffer">
6161
<variable id = "optimal_buffer_size" type = "string" >performance</variable>
62-
<variable id = "buffer_factor_size" type = "double" >1.0</variable>
62+
<variable id = "buffer_size_factor" type = "double" >1.0</variable>
6363
</variable_group>
6464

6565
<variable_group id = "parameters" >

0 commit comments

Comments
 (0)