diff --git a/src/randomProcesses/noise/noiseModels/surfaceNoise/surfaceNoise.C b/src/randomProcesses/noise/noiseModels/surfaceNoise/surfaceNoise.C index 5ad342225d1c5c6bd61f5280d2e789b3b4bb6173..fa0f3bada3bb0eb21edcdd7eb94818bbf07f03b4 100644 --- a/src/randomProcesses/noise/noiseModels/surfaceNoise/surfaceNoise.C +++ b/src/randomProcesses/noise/noiseModels/surfaceNoise/surfaceNoise.C @@ -304,6 +304,7 @@ scalar surfaceNoise::writeSurfaceData false // serial - already merged ); + writerPtr_->nFields(1); // Legacy VTK writerPtr_->write(title, allData); writerPtr_->endTime(); @@ -341,6 +342,7 @@ scalar surfaceNoise::writeSurfaceData false // serial - already merged ); + writerPtr_->nFields(1); // Legacy VTK writerPtr_->write(title, data); writerPtr_->endTime(); diff --git a/src/surfMesh/writers/vtk/vtkSurfaceWriter.C b/src/surfMesh/writers/vtk/vtkSurfaceWriter.C index 65df3d04a5cab0ed40e35aace289f410294a89c3..016351e62121bd28d76a65882aa29098b8f6c39a 100644 --- a/src/surfMesh/writers/vtk/vtkSurfaceWriter.C +++ b/src/surfMesh/writers/vtk/vtkSurfaceWriter.C @@ -289,6 +289,22 @@ Foam::fileName Foam::surfaceWriters::vtkWriter::writeTemplate if (Pstream::master() || !parallel_) { + if (!nFields_ && writer_->legacy()) + { + // Emit error message, but attempt to recover anyhow + nFields_ = 1; + + FatalErrorInFunction + << "Using VTK legacy format, but did not define nFields!" + << nl + << "Assuming nFields=1 (may be incorrect) and continuing..." + << nl + << " Field " << fieldName << " to " << outputFile << nl; + + Info<< FatalError; + Info<< endl; + } + if (this->isPointData()) { writer_->beginPointData(nFields_);