From: Yujie <recrusader@gm...>  20081218 18:12:58

Hi, Now, I have two System. One has two variables (v1s1,v2s1). The other has one variable (v1s2). They use the same mesh. In parallel mode, what is the ralationship between their dofs? To my knowledge, if I use two cpus and use the variablemajor mode and the same shape functions The distribution of dofs of v1s1 and v2s1 should be in the first cpu, d1_c1_v1s1, d2_c1_v1s1...di_c1_v1s1...,dn1_c1_v1s1, d1_c1_v2s1, d2_c1_v2s1...di_c1_v2s1...,d1_c1_v2s1 (for the first system) d1_c1_v1s2, d2_c1_v1s2...di_c1_v1s2...,dn1_c1_v1s2 (for the second system) in the second cpu, d1_c2_v1s1, d2_c2_v1s1...di_c2_v1s1...,dn1_c2_v1s1, d1_c2_v2s1, d2_c2_v2s1...di_c2_v2s1...,d1_c2_v2s1 (for the first system) d1_c2_v1s2, d2_c2_v1s2...di_c2_v1s2...,dn1_c2_v1s2 (for the second system) that is, assuming the number of mesh points is n1, if I want to get the relationship between v1s2 and v1s1 in the second cpu, it should be d1_c2_v1s2=d1_c2_v1s1n1, right? thanks a lot. Regards, Yujie 
From: Roy Stogner <roystgnr@ic...>  20081219 03:53:49

On Thu, 18 Dec 2008, Yujie wrote: > Now, I have two System. One has two variables (v1s1,v2s1). The other has one > variable (v1s2). They use the same mesh. In parallel mode, what is the > ralationship between their dofs? > > To my knowledge, if I use two cpus and use > the variablemajor mode and the same shape functions What is your motivation for wanting to secondguess the DoF indexing to begin with? It's probably not, "I wish my code would break if I changed one of the variables' approximation orders", so there's got to be some other problem which you're trying to solve. Whatever that problem is, there ought to be a better way to solve it. Either there's a DofObject or DofMap API that can do what you want, and you should use it... or there isn't such an API, and we should add it. > that is, assuming the number of mesh points is n1, if I want to get the > relationship between v1s2 and v1s1 in the second cpu, it should be > d1_c2_v1s2=d1_c2_v1s1n1, right? thanks a lot. Independent Systems have independently indexed DoF coefficient vectors; they overlap. If I'm understanding your notation right, then d1_c2_v1s2=d1_c2_v1s1.  Roy 
From: Yujie <recrusader@gm...>  20081219 17:38:31

Dear Roy: Sorry for rementioning this problem. I am figuring out how to deal with it. Our problem is about several Systems with different variable numbers. Assuming I have 2N Systems. N Systems (Group 1) in them have p variables and the other N Systems (Group 2) have q variables. Generally, p>q. Because I need to figure out the corresponding relationship beween variables in Group 1 and 2, that is which variables are from the same discretized physical points. Therefore, I am wondering how to do it efficiently. If I know the rules of the Dofs distribution, it should be easy to find their relationship independing on element looping. do you have any comments about this? thanks a lot. Regards, Yujie On Thu, Dec 18, 2008 at 7:53 PM, Roy Stogner <roystgnr@...>wrote: > On Thu, 18 Dec 2008, Yujie wrote: > > Now, I have two System. One has two variables (v1s1,v2s1). The other has >> one >> variable (v1s2). They use the same mesh. In parallel mode, what is the >> ralationship between their dofs? >> To my knowledge, if I use two cpus and use >> the variablemajor mode and the same shape functions >> > > What is your motivation for wanting to secondguess the DoF indexing > to begin with? It's probably not, "I wish my code would break if I > changed one of the variables' approximation orders", so there's got to > be some other problem which you're trying to solve. Whatever that > problem is, there ought to be a better way to solve it. Either > there's a DofObject or DofMap API that can do what you want, and you > should use it... or there isn't such an API, and we should add it. > > that is, assuming the number of mesh points is n1, if I want to get the >> relationship between v1s2 and v1s1 in the second cpu, it should be >> d1_c2_v1s2=d1_c2_v1s1n1, right? thanks a lot. >> > > Independent Systems have independently indexed DoF coefficient > vectors; they overlap. If I'm understanding your notation right, then > d1_c2_v1s2=d1_c2_v1s1. >  > Roy > 
From: Roy Stogner <roystgnr@ic...>  20081220 14:23:40

On Fri, 19 Dec 2008, Yujie wrote: > which variables are from the same discretized physical > points. Look at the DofObject interface. The indices for each variable are stored there. A Node or an Elem is a type of DofObject, so you can call the same functions on them. > Therefore, I am wondering how to do it efficiently. If I know the > rules of the Dofs distribution, it should be easy to find their relationship > independing on element looping. Easy, but unsupported. If we have to change the DoF distribution rules, I don't want to worry about whose code we might break by doing so.  Roy 