function write_on_scratch_dataarray3_rank3_I2P(self, x, y, z) result(n_byte)
!< Write a dataarray with 3 components of rank 3 (I2P).
class(xml_writer_appended), intent(inout) :: self !< Writer.
integer(I2P), intent(in) :: x(1:,1:,1:) !< X component.
integer(I2P), intent(in) :: y(1:,1:,1:) !< Y component.
integer(I2P), intent(in) :: z(1:,1:,1:) !< Z component.
integer(I4P) :: n_byte !< Number of bytes
integer(I4P) :: n1 !< Counter.
integer(I4P) :: n2 !< Counter.
integer(I4P) :: n3 !< Counter.
n_byte = self%write_on_scratch_dataarray(x=[(((x(n1,n2,n3), y(n1,n2,n3), z(n1,n2,n3), &
n1=1,size(x, dim=1)),n2=1,size(x, dim=2)),n3=1,size(x, dim=3))])
endfunction write_on_scratch_dataarray3_rank3_I2P