Let me first describe the usage case I have before I get to the question, and what I think is a problem…
I have two sets of physics, A & B, which are coupled through boundary data along their common boundary interface. For a numbef of reasons, physics A and B are implemented in standalone codes. In this case one or both happens to be a libMesh app. Now, I want to pass data between the two. This is the genesis of my "would you be interested in a point cloud interpolation?" question some months ago. To pass data between the two, I of course want to use libMesh. And I'd like to to this all in one app instead of through file I/O or anything like that. In pseudocode, what I envision is LibMeshInit(); PointCloudData shared_data; MPI_Comm_split(COMM_WORLD, SPLIT_COMM) PhysicsA physicsA(SPLIT_COMM,data); PhysicsB physicsB(SPLIT_COMM,data); while (time < tmax) physicsA.advance(dt); physicsB.advance(dt); done inside each advance method, each physics puts/gets data from the shared_data structure. And they each run on a subset of the total number of processors. But the problem: main() and physicsA (resp. physicsB) will coexist on some of the processors. And recall at least one of them also uses libMesh. As i see it now, all the extern data we have (especially the MPI communicator!) makes this impossible. The only way to properly do it I can think of is to move all that extern stufff into the LibMeshInit object, and have it proliferate through the object tree - in particular make it into the mesh, equation systems, etc… Am I missing something? This doesn't happen in Queso integration because on any one processor there is at most one libMesh app, right? This is a pretty valuable use case, and I'm inclined to fix it, but it could be a major change and I don't want to jump into it without thinking it through… -Ben ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct _______________________________________________ Libmesh-devel mailing list Libmesh-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-devel