@@ -153,19 +153,21 @@ CEED_QFUNCTION(SWExplicit)(void *ctx, CeedInt Q, const CeedScalar *const *in,
153153 // The Physics
154154 // Explicit spatial terms of G_1(t,q):
155155 // Explicit terms multiplying v
156- // - (omega + f) * khat curl u - grad(|u|^2/2) // TODO: needs fix with weak form
157- // -- grad(|u|^2/2) = u^T grad u
158- // -- khat curl u = [-u_1, u_0]
156+ // - (omega + f) * khat curl u - grad(|u|^2/2)
157+ // -- omega khat curl u = 0 (u_3 = 0)
158+ // -- f khat curl u = f [-u_1, u_0]
159+ // -- grad(|u|^2/2) = (grad u)^T u
159160 v [0 ][i ] = - wdetJ * (u [0 ]* du [0 ][0 ] + u [1 ]* du [1 ][0 ] - f * u [1 ]);
160161 // No explicit terms multiplying dv
161162 dv [0 ][0 ][i ] = 0 ;
162163 dv [1 ][0 ][i ] = 0 ;
163164
164165 // Explicit spatial terms of G_2(t,q):
165166 // Explicit terms multiplying v
166- // - (omega + f) * khat curl u - grad(|u|^2/2) // TODO: needs fix with weak form
167- // -- grad(|u|^2/2) = u^T grad u
168- // -- khat curl u = [-u_1, u_0]
167+ // - (omega + f) * khat curl u - grad(|u|^2/2)
168+ // -- omega khat curl u = 0 (u_3 = 0)
169+ // -- f khat curl u = f [-u_1, u_0]
170+ // -- grad(|u|^2/2) = (grad u)^T u
169171 v [1 ][i ] = - wdetJ * (u [0 ]* du [0 ][1 ] + u [1 ]* du [1 ][1 ] + f * u [0 ]);
170172 // No explicit terms multiplying dv
171173 dv [0 ][1 ][i ] = 0 ;
0 commit comments