Hi I saw that example system_of_equations_ex6.C solves these questions and some others I had.
Miguel On Thu, Aug 21, 2014 at 1:47 PM, Miguel Angel Salazar de Troya < [email protected]> wrote: > More questions regarding this topic. > > Could I initialize to a certain value all the degrees of freedom of a > variable declared in an ExplicitSystem? > > How could I access the value of that field in a certain element while I'm > iterating through the elements? For example in the element_time_derivative > routine. I thought of doing something similar to what is shown in example > fem_system2: > > // Get system called Densities > ExplicitSystem& aux_system = > this->get_equation_systems().get_system<ExplicitSystem>("Densities"); > // Array to hold the dof indices > std::vector<dof_id_type> densities_index; > // Array to hold the values > std::vector<Number> density; > // Get dof indices, system has only one variable > aux_system.get_dof_map().dof_indices(&c.get_elem(), densities_index, 0); > // Get the value, stored in density > aux_system.current_local_solution->get(densities_index, density); > > Is there a better way? Something like using a context > > Thanks > Miguel > > > On Thu, Aug 21, 2014 at 12:46 PM, Miguel Angel Salazar de Troya < > [email protected]> wrote: > >> If I add that ExplicitSystem as you mention, I will obtain one degree of >> freedom per element, and they will be actually numbered from 0 to the >> number of elements and will change accordingly with the refinement or >> coarsening, won't they? This would be pretty convenient for me because I >> want to perform a matrix-vector operation. The vector would be the zeroth >> order monomial variable and the matrix would have a size of number of >> elements x number of elements. >> >> Thanks >> Miguel >> >> >> On Thu, Aug 21, 2014 at 11:28 AM, Miguel Angel Salazar de Troya < >> [email protected]> wrote: >> >>> The safest thing to do in this case is usually to create an >>> ExplicitSystem, attach it to your EquationSystems, and give it >>> variables corresponding to the data you want to store; e.g. for one >>> Number per Elem you'd give it a zeroth order monomial variable. >>> >>> This is exactly what I needed. Thanks a lot. >>> >>> >>> On Thu, Aug 21, 2014 at 11:19 AM, Roy Stogner <[email protected]> >>> wrote: >>> >>>> >>>> On Thu, 21 Aug 2014, Roy Stogner wrote: >>>> >>>> after renumbering takes place (e.g. in the Mesh construction or the >>>>> EquationSystems reinit) then all the ids will be sequential. >>>>> >>>> >>>> It sounds like John just contradicted me, but really I just answered >>>> the question you asked but he was smart enough to answer the question >>>> you meant to ask: although element ids will be contiguous, some of >>>> those ids will be of parent elements, so "active element" ids will >>>> have gaps. >>>> --- >>>> Roy >>>> >>> >>> >>> >>> -- >>> *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] >>> >>> >> >> >> -- >> *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] >> >> > > > -- > *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] > > -- *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
