Hi everybody I have an EquationSystem with a FEMSystem that has just a LAGRANGE_VEC variable, which I use to solve my problem, and another ExplicitSystem with a zeroth order MONOMIAL variable to define a parameter in each element.
Before calling equation_systems.init(), I assign initial values for each degree of freedom in my ExplicitSystem. I do it in a similar fashion to example system_of_equations_ex6 (there an ExplicitSystem is used to compute the stresses) I close the system's current solution and update the system. Then I solve my FEMSystem and calculate its sensitivities. In the process, I call the variable in my ExplicitSystem because I am using it as a parameter for the sensitivities. I want to do the perturbation to verify my sensitivities, so I perturbate the variable in the ExplicitSystem. I try to obtain the value here again with a similar fashion to example system_of_equation_ex6, but it fails. Specifically it fails when I call aux_system.current_local_solution->get(densities_index, density); where aux_system is my ExplicitSystem. I found out that densities_index doesn't have the correct index because it contains an invalid id. In DofMap::_dof_indices, I can only get to di.resize(di.size() + nc, DofObject::invalid_id); I've been debugging this and I found out that the problem is in the DofObject array _idx_buf. When I assigned initial values for the variable in the ExplicitSystem, This array was something like 2 , 4 , 256 , 4294967294, 257 , 0 but when I try to access the dof indices when calculating the densities the array is 2 , 4 , 256 , 4294967294, 256 , 4294967294 This way when the function elem->n_comp(sys_num,v)) is called, it returns 0 instead of 1 (because it returns the value in index 4, which is 256, before it was 257) I think I must be missing calling a function to reinitialize the system or something similar. Please let me know if it's necessary that I upload the code on github or if you need more details. I hope this problem is not too complicated. Thanks in advance. Miguel -- *Miguel Angel Salazar de Troya* Graduate Research Assistant Department of Mechanical Science and Engineering University of Illinois at Urbana-Champaign (217) 550-2360 [email protected] ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/ _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
