fixed: load dependent fields in the HDF5 output routine

may be needed for derived quantites (secondary solutions).

note that this is order sensitive, in particular we want to do the
call that loads only the solution vector last. this is needed as
certain SIMs (such as K-Epsilon) has a dependency to themself to be able
to handle the complex boundary conditions. due to this, if we call the
dependency loading function last, we end up with the wrong vector loaded.

git-svn-id: http://svn.sintef.no/trondheim/IFEM/trunk@2302 e10b68d5-8a6e-419e-a041-bce267b0401d
This commit is contained in:
akva
2013-04-12 10:33:12 +00:00
committed by Knut Morten Okstad
parent 9ba984e5ff
commit 392d832685

View File

@@ -338,6 +338,8 @@ void HDF5Writer::writeSIM (int level, const DataEntry& entry,
int loc = sim->getLocalPatchIndex(i+1);
if (loc > 0) // we own the patch
{
sim->extractPatchSolution(Vectors(1,*sol), loc-1);
// order is important - do this last to ensure correct vector is loaded
size_t ndof1 = sim->extractPatchSolution(*sol,loc-1);
Vector& psol = const_cast<IntegrandBase*>(prob)->getSolution();
if (results & DataExporter::PRIMARY) {