I added DirichletBoundary to adaptivity_ex2, but I found I couldn't get correct Fe at time 1 (i.e, system.time = 0+dt). I am not sure it is a limit of libmesh, or my understanding is wrong. adaptivity_ex2 is a transient problem. "the initial condition will be taken as the exact solution at time 0, as will the Dirichlet boundary conditions at time t." The outline of the code is:
1. system.time = 0; 2. Create a DirichletBoundary object and add it to equation_system; 3. equation_systems.init (); // Init solution and Dirichlet constrains at time 0 4. 5. for each time step { 6. system.time += dt; 7. *system.old_local_solution = *system.current_local_solution; 8. for each refinement step { 9. Ke += ... 10. Fe += ...system.old_solution()... // Need solution computed at time 0 11. heterogenously_constrain_element_matrix_and_vector; // Uses constraints computed at time 0, but should use constraints computed at time 1 12. Add Ke, Fe to global matrix and vector; 13. Solve the system; 14. equation_systems.reinit (); 15. } 16. } Suppose the code runs straight from line 1 to line 11, at line 11, what we use are wrong constraints computed at time 0. Actually, we should use constraints of time 1, which are not computed yet. I tried to rearrange the code, but I found I could not make it, since I could not use solution of time 0 and constraints of time 1 at line 10 and 11 at the same time. Any thoughts? --Junchao Zhang ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 _______________________________________________ Libmesh-users mailing list Libmesh-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-users