Yes, but I need the property inside the code. So, are the properties in each node available inside the code?
For example from int diffusion_elements_results_fill_power(void), you took the eSigmaF[g] from the element (cell) and set the power in a node (point) by multipling by the fluxes.
I need something similar but nuSigmaf in each node.
If milonga already has the properties in each node, I prefer to use them than to calculate them.
diffusion_elements_results_fill_power(void): for (k = 0; k < wasora_mesh.main_mesh->n_nodes; k++) {
den = 0;
LL_FOREACH(wasora_mesh.main_mesh->node[k].associated_elements, associated_element) {
element = associated_element->element;
pow = 0;
if (element != NULL && element->physical_entity != NULL && element->physical_entity->material != NULL) {
den += element->type->element_volume(element);
xs = (xs_t *)element->physical_entity->material->ext;
if (xs != NULL && xs->eSigmaF != NULL) {
wasora_var(wasora_mesh.vars.x) = wasora_mesh.main_mesh->node[k].x[0];
wasora_var(wasora_mesh.vars.y) = wasora_mesh.main_mesh->node[k].x[1];
wasora_var(wasora_mesh.vars.z) = wasora_mesh.main_mesh->node[k].x[2];
for (g = 0; g < milonga.groups; g++) {
pow += wasora_evaluate_expression(xs->eSigmaF[g]) * milonga.functions.phi[g]->data_value[k];
}
}
milonga.functions.pow->data_value[k] += element->type->element_volume(element) * pow;
}
}
if (den != 0) {
milonga.functions.pow->data_value[k] /= den;
}
}