Roy, I agree with having a common place to specify the different types for variables. My first instinct was to make sub_domain_id in to a unsigned int and then change all the references to the same. But I guess typedefing would make it a lot less crude !
I guess, the user_pointer can serve as a generic container to hold all attributes. While refining, you could deduce the properties based on parent. But I wonder how you would propagate these variables on to the parent element when you are coarsening. This could be another place where it will be tricky apart from the mesh IO part you mentioned already. I definitely agree that defining a type for sbd_id would solve my current problem for a short while. But this will not be a lasting solution. I liked the functionality of MeshData but was not happy with its inflexible structure and disconnect with MeshBase. If there were calls that indicate to MeshData to propagate its attributes accordingly, it would make the maintenance of this external data lot more easier and cleaner. I will think more into this today and see if I can come up with a cleaner MeshData->MeshBase interaction. Vijay On Tue, Feb 10, 2009 at 1:45 PM, Roy Stogner <[email protected]> wrote: > > Two more natural ways to go here: > > Change the subdomain_id type. Frankly, there's a lot of hard coded > types in libMesh that we ought to be turning into typedefs; we might > as well start by fixing this one. Find everywhere a subdomain id is > being used, change it from unsigned char to subdomain_id_t, add a > "typedef unsigned char subdomain_id_t;" to an appropriate header, and > we'll happily commit the patch. Then add an autoconf option for > specifying a non-default type (e.g. short, int, long int) if you want > to go whole hog, or just change it by hand for your own installation. > > Add something like deal.II's user_pointer to every element and node. > More powerful, but also a little harder to deal with (e.g. how do you > serialize to mesh files?) > > Thoughts? > --- > Roy > ------------------------------------------------------------------------------ Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing skills and code to build responsive, highly engaging applications that combine the power of local resources and data with the reach of the web. Download the Adobe AIR SDK and Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
