function write_geo_strg_data3_rank3_R4P(self, n, x, y, z) result(error)
!< Write mesh with **StructuredGrid** topology (data 3, rank 3, R4P).
class(xml_writer_abstract), intent(inout) :: self !< Writer.
integer(I4P), intent(in) :: n !< Number of nodes.
real(R4P), intent(in) :: x(1:,1:,1:) !< X coordinates.
real(R4P), intent(in) :: y(1:,1:,1:) !< Y coordinates.
real(R4P), intent(in) :: z(1:,1:,1:) !< Z coordinates.
integer(I4P) :: error !< Error status.
if ((n/=size(x, dim=1)*size(x, dim=2)*size(x, dim=3)).or.&
(n/=size(y, dim=1)*size(y, dim=2)*size(y, dim=3)).or.&
(n/=size(z, dim=1)*size(z, dim=2)*size(z, dim=3))) then
self%error = 1
return
endif
call self%write_start_tag(name='Points')
error = self%write_dataarray(data_name='Points', x=x, y=y, z=z)
call self%write_end_tag(name='Points')
error = self%error
endfunction write_geo_strg_data3_rank3_R4P