diff --git a/ProcessLib/Output/ProcessOutput.cpp b/ProcessLib/Output/ProcessOutput.cpp index 95267db18e4bcf712706a972f85a941f7d60a6a7..571885d282b8a5f371eebe80d6b6475404be489a 100644 --- a/ProcessLib/Output/ProcessOutput.cpp +++ b/ProcessLib/Output/ProcessOutput.cpp @@ -211,23 +211,22 @@ void processOutputData( } // Secondary variables output - for (auto const& external_variable_name : output_variables) + for (auto const& external_variable_name : secondary_variables) { - if (!already_output.insert(external_variable_name).second) + auto const& name = external_variable_name.first; + if (!already_output.insert(name).second) { // no insertion took place, output already done continue; } - addSecondaryVariableNodes( - t, x, dof_table, secondary_variables.get(external_variable_name), - external_variable_name, mesh); + addSecondaryVariableNodes(t, x, dof_table, + secondary_variables.get(name), name, mesh); + if (process_output.output_residuals) { addSecondaryVariableResiduals( - t, x, dof_table, - secondary_variables.get(external_variable_name), - external_variable_name, mesh); + t, x, dof_table, secondary_variables.get(name), name, mesh); } }