58 m_dim = m_el->GetDim();
59 vector<NodeSharedPtr> ns;
60 m_el->GetCurvedNodes(ns);
61 nodes.resize(ns.size());
62 for (
int i = 0; i < ns.size(); ++i)
64 nodes[i].resize(m_dim);
65 nodes[i][0] = &ns[i]->m_x;
69 nodes[i][1] = &ns[i]->m_y;
74 nodes[i][2] = &ns[i]->m_z;
77 m_idmap[ns[i]->m_id] = i;
91 u2(m_derivUtil->pts), v2(m_derivUtil->pts);
96 vector<Array<OneD, NekDouble> > xyz(4);
97 vector<NodeSharedPtr> ns = m_el->GetVertexList();
98 for (
int i = 0; i < 4; i++)
107 for (
int i = 0; i < m_derivUtil->ptsStd; ++i)
116 J(0, 0) = -0.5 * b1 * xyz[0][0] + 0.5 * b1 * xyz[1][0] +
117 0.5 * b2 * xyz[2][0] - 0.5 * b2 * xyz[3][0];
118 J(1, 0) = -0.5 * b1 * xyz[0][1] + 0.5 * b1 * xyz[1][1] +
119 0.5 * b2 * xyz[2][1] - 0.5 * b2 * xyz[3][1];
121 J(0, 1) = -0.5 * a1 * xyz[0][0] - 0.5 * a2 * xyz[1][0] +
122 0.5 * a2 * xyz[2][0] + 0.5 * a1 * xyz[3][0];
123 J(1, 1) = -0.5 * a1 * xyz[0][1] - 0.5 * a2 * xyz[1][1] +
124 0.5 * a2 * xyz[2][1] + 0.5 * a1 * xyz[3][1];
130 r[9] = 1.0 / (J(0, 0) * J(1, 1) - J(0, 1) * J(1, 0));
141 mapsStd.push_back(r);
144 for (
int i = 0; i < m_derivUtil->pts; ++i)
153 J(0, 0) = -0.5 * b1 * xyz[0][0] + 0.5 * b1 * xyz[1][0] +
154 0.5 * b2 * xyz[2][0] - 0.5 * b2 * xyz[3][0];
155 J(1, 0) = -0.5 * b1 * xyz[0][1] + 0.5 * b1 * xyz[1][1] +
156 0.5 * b2 * xyz[2][1] - 0.5 * b2 * xyz[3][1];
158 J(0, 1) = -0.5 * a1 * xyz[0][0] - 0.5 * a2 * xyz[1][0] +
159 0.5 * a2 * xyz[2][0] + 0.5 * a1 * xyz[3][0];
160 J(1, 1) = -0.5 * a1 * xyz[0][1] - 0.5 * a2 * xyz[1][1] +
161 0.5 * a2 * xyz[2][1] + 0.5 * a1 * xyz[3][1];
167 r[9] = 1.0 / (J(0, 0) * J(1, 1) - J(0, 1) * J(1, 0));
184 J(0, 0) = (*nodes[1][0] - *nodes[0][0]);
185 J(1, 0) = (*nodes[1][1] - *nodes[0][1]);
186 J(0, 1) = (*nodes[2][0] - *nodes[0][0]);
187 J(1, 1) = (*nodes[2][1] - *nodes[0][1]);
197 for (
int i = 0; i < m_derivUtil->pts; i++)
201 r[9] = 1.0 / (J(0, 0) * J(1, 1) - J(0, 1) * J(1, 0));
212 mapsStd.push_back(r);
218 J(0, 0) = (*nodes[1][0] - *nodes[0][0]);
219 J(1, 0) = (*nodes[1][1] - *nodes[0][1]);
220 J(2, 0) = (*nodes[1][2] - *nodes[0][2]);
221 J(0, 1) = (*nodes[2][0] - *nodes[0][0]);
222 J(1, 1) = (*nodes[2][1] - *nodes[0][1]);
223 J(2, 1) = (*nodes[2][2] - *nodes[0][2]);
224 J(0, 2) = (*nodes[3][0] - *nodes[0][0]);
225 J(1, 2) = (*nodes[3][1] - *nodes[0][1]);
226 J(2, 2) = (*nodes[3][2] - *nodes[0][2]);
237 for (
int i = 0; i < m_derivUtil->pts; i++)
241 r[9] = 1.0 / (J(0, 0) * (J(1, 1) * J(2, 2) - J(2, 1) * J(1, 2)) -
242 J(0, 1) * (J(1, 0) * J(2, 2) - J(2, 0) * J(1, 2)) +
243 J(0, 2) * (J(1, 0) * J(2, 1) - J(2, 0) * J(1, 1)));
255 mapsStd.push_back(r);
267 vector<Array<OneD, NekDouble> > xyz(6);
268 vector<NodeSharedPtr> ns = m_el->GetVertexList();
269 for (
int i = 0; i < 6; i++)
278 for (
int i = 0; i < m_derivUtil->ptsStd; ++i)
288 J(0, 0) = -0.5 * b1 * xyz[0][0] + 0.5 * b1 * xyz[1][0] +
289 0.5 * b2 * xyz[2][0] - 0.5 * b2 * xyz[3][0];
290 J(1, 0) = -0.5 * b1 * xyz[0][1] + 0.5 * b1 * xyz[1][1] +
291 0.5 * b2 * xyz[2][1] - 0.5 * b2 * xyz[3][1];
292 J(2, 0) = -0.5 * b1 * xyz[0][2] + 0.5 * b1 * xyz[1][2] +
293 0.5 * b2 * xyz[2][2] - 0.5 * b2 * xyz[3][2];
295 J(0, 1) = 0.5 * d * xyz[0][0] - 0.5 * a2 * xyz[1][0] +
296 0.5 * a2 * xyz[2][0] - 0.5 * d * xyz[3][0] -
297 0.5 * c2 * xyz[4][0] + 0.5 * c2 * xyz[5][0];
298 J(1, 1) = 0.5 * d * xyz[0][1] - 0.5 * a2 * xyz[1][1] +
299 0.5 * a2 * xyz[2][1] - 0.5 * d * xyz[3][1] -
300 0.5 * c2 * xyz[4][1] + 0.5 * c2 * xyz[5][1];
301 J(2, 1) = 0.5 * d * xyz[0][2] - 0.5 * a2 * xyz[1][2] +
302 0.5 * a2 * xyz[2][2] - 0.5 * d * xyz[3][2] -
303 0.5 * c2 * xyz[4][2] + 0.5 * c2 * xyz[5][2];
305 J(0, 2) = -0.5 * b1 * xyz[0][0] - 0.5 * b2 * xyz[3][0] +
306 0.5 * b1 * xyz[4][0] + 0.5 * b2 * xyz[5][0];
307 J(1, 2) = -0.5 * b1 * xyz[0][1] - 0.5 * b2 * xyz[3][1] +
308 0.5 * b1 * xyz[4][1] + 0.5 * b2 * xyz[5][1];
309 J(2, 2) = -0.5 * b1 * xyz[0][2] - 0.5 * b2 * xyz[3][2] +
310 0.5 * b1 * xyz[4][2] + 0.5 * b2 * xyz[5][2];
316 r[9] = 1.0 / (J(0, 0) * (J(1, 1) * J(2, 2) - J(2, 1) * J(1, 2)) -
317 J(0, 1) * (J(1, 0) * J(2, 2) - J(2, 0) * J(1, 2)) +
318 J(0, 2) * (J(1, 0) * J(2, 1) - J(2, 0) * J(1, 1)));
329 mapsStd.push_back(r);
331 for (
int i = 0; i < m_derivUtil->pts; ++i)
341 J(0, 0) = -0.5 * b1 * xyz[0][0] + 0.5 * b1 * xyz[1][0] +
342 0.5 * b2 * xyz[2][0] - 0.5 * b2 * xyz[3][0];
343 J(1, 0) = -0.5 * b1 * xyz[0][1] + 0.5 * b1 * xyz[1][1] +
344 0.5 * b2 * xyz[2][1] - 0.5 * b2 * xyz[3][1];
345 J(2, 0) = -0.5 * b1 * xyz[0][2] + 0.5 * b1 * xyz[1][2] +
346 0.5 * b2 * xyz[2][2] - 0.5 * b2 * xyz[3][2];
348 J(0, 1) = 0.5 * d * xyz[0][0] - 0.5 * a2 * xyz[1][0] +
349 0.5 * a2 * xyz[2][0] - 0.5 * d * xyz[3][0] -
350 0.5 * c2 * xyz[4][0] + 0.5 * c2 * xyz[5][0];
351 J(1, 1) = 0.5 * d * xyz[0][1] - 0.5 * a2 * xyz[1][1] +
352 0.5 * a2 * xyz[2][1] - 0.5 * d * xyz[3][1] -
353 0.5 * c2 * xyz[4][1] + 0.5 * c2 * xyz[5][1];
354 J(2, 1) = 0.5 * d * xyz[0][2] - 0.5 * a2 * xyz[1][2] +
355 0.5 * a2 * xyz[2][2] - 0.5 * d * xyz[3][2] -
356 0.5 * c2 * xyz[4][2] + 0.5 * c2 * xyz[5][2];
358 J(0, 2) = -0.5 * b1 * xyz[0][0] - 0.5 * b2 * xyz[3][0] +
359 0.5 * b1 * xyz[4][0] + 0.5 * b2 * xyz[5][0];
360 J(1, 2) = -0.5 * b1 * xyz[0][1] - 0.5 * b2 * xyz[3][1] +
361 0.5 * b1 * xyz[4][1] + 0.5 * b2 * xyz[5][1];
362 J(2, 2) = -0.5 * b1 * xyz[0][2] - 0.5 * b2 * xyz[3][2] +
363 0.5 * b1 * xyz[4][2] + 0.5 * b2 * xyz[5][2];
369 r[9] = 1.0 / (J(0, 0) * (J(1, 1) * J(2, 2) - J(2, 1) * J(1, 2)) -
370 J(0, 1) * (J(1, 0) * J(2, 2) - J(2, 0) * J(1, 2)) +
371 J(0, 2) * (J(1, 0) * J(2, 1) - J(2, 0) * J(1, 1)));
391 w1(m_derivUtil->ptsStd), u2(m_derivUtil->pts), v2(m_derivUtil->pts),
392 w2(m_derivUtil->pts);
397 vector<Array<OneD, NekDouble> > xyz(8);
398 vector<NodeSharedPtr> ns = m_el->GetVertexList();
399 for (
int i = 0; i < 8; i++)
408 for (
int i = 0; i < m_derivUtil->ptsStd; ++i)
419 J(0, 0) = -0.5 * b1 * c1 * xyz[0][0] + 0.5 * b1 * c1 * xyz[1][0] +
420 0.5 * b2 * c1 * xyz[2][0] - 0.5 * b2 * c1 * xyz[3][0] -
421 0.5 * b1 * c2 * xyz[5][0] + 0.5 * b1 * c2 * xyz[5][0] +
422 0.5 * b2 * c2 * xyz[6][0] - 0.5 * b2 * c2 * xyz[7][0];
423 J(1, 0) = -0.5 * b1 * c1 * xyz[0][1] + 0.5 * b1 * c1 * xyz[1][1] +
424 0.5 * b2 * c1 * xyz[2][1] - 0.5 * b2 * c1 * xyz[3][1] -
425 0.5 * b1 * c2 * xyz[5][1] + 0.5 * b1 * c2 * xyz[5][1] +
426 0.5 * b2 * c2 * xyz[6][1] - 0.5 * b2 * c2 * xyz[7][1];
427 J(2, 0) = -0.5 * b1 * c1 * xyz[0][2] + 0.5 * b1 * c1 * xyz[1][2] +
428 0.5 * b2 * c1 * xyz[2][2] - 0.5 * b2 * c1 * xyz[3][2] -
429 0.5 * b1 * c2 * xyz[5][2] + 0.5 * b1 * c2 * xyz[5][2] +
430 0.5 * b2 * c2 * xyz[6][2] - 0.5 * b2 * c2 * xyz[7][2];
432 J(0, 1) = -0.5 * a1 * c1 * xyz[0][0] - 0.5 * a2 * c1 * xyz[1][0] +
433 0.5 * a2 * c1 * xyz[2][0] + 0.5 * a1 * c1 * xyz[3][0] -
434 0.5 * a1 * c2 * xyz[5][0] - 0.5 * a2 * c2 * xyz[5][0] +
435 0.5 * a2 * c2 * xyz[6][0] + 0.5 * a1 * c2 * xyz[7][0];
436 J(1, 1) = -0.5 * a1 * c1 * xyz[0][1] - 0.5 * a2 * c1 * xyz[1][1] +
437 0.5 * a2 * c1 * xyz[2][1] + 0.5 * a1 * c1 * xyz[3][1] -
438 0.5 * a1 * c2 * xyz[5][1] - 0.5 * a2 * c2 * xyz[5][1] +
439 0.5 * a2 * c2 * xyz[6][1] + 0.5 * a1 * c2 * xyz[7][1];
440 J(2, 1) = -0.5 * a1 * c1 * xyz[0][2] - 0.5 * a2 * c1 * xyz[1][2] +
441 0.5 * a2 * c1 * xyz[2][2] + 0.5 * a1 * c1 * xyz[3][2] -
442 0.5 * a1 * c2 * xyz[5][2] - 0.5 * a2 * c2 * xyz[5][2] +
443 0.5 * a2 * c2 * xyz[6][2] + 0.5 * a1 * c2 * xyz[7][2];
445 J(0, 0) = -0.5 * b1 * a1 * xyz[0][0] - 0.5 * b1 * a2 * xyz[1][0] -
446 0.5 * b2 * a2 * xyz[2][0] - 0.5 * b2 * a1 * xyz[3][0] +
447 0.5 * b1 * a1 * xyz[5][0] + 0.5 * b1 * a2 * xyz[5][0] +
448 0.5 * b2 * a2 * xyz[6][0] + 0.5 * b2 * a1 * xyz[7][0];
449 J(1, 0) = -0.5 * b1 * a1 * xyz[0][1] - 0.5 * b1 * a2 * xyz[1][1] -
450 0.5 * b2 * a2 * xyz[2][1] - 0.5 * b2 * a1 * xyz[3][1] +
451 0.5 * b1 * a1 * xyz[5][1] + 0.5 * b1 * a2 * xyz[5][1] +
452 0.5 * b2 * a2 * xyz[6][1] + 0.5 * b2 * a1 * xyz[7][1];
453 J(2, 0) = -0.5 * b1 * a1 * xyz[0][2] - 0.5 * b1 * a2 * xyz[1][2] -
454 0.5 * b2 * a2 * xyz[2][2] - 0.5 * b2 * a1 * xyz[3][2] +
455 0.5 * b1 * a1 * xyz[5][2] + 0.5 * b1 * a2 * xyz[5][2] +
456 0.5 * b2 * a2 * xyz[6][2] + 0.5 * b2 * a1 * xyz[7][2];
462 r[9] = 1.0 / (J(0, 0) * (J(1, 1) * J(2, 2) - J(2, 1) * J(1, 2)) -
463 J(0, 1) * (J(1, 0) * J(2, 2) - J(2, 0) * J(1, 2)) +
464 J(0, 2) * (J(1, 0) * J(2, 1) - J(2, 0) * J(1, 1)));
475 mapsStd.push_back(r);
478 for (
int i = 0; i < m_derivUtil->pts; ++i)
489 J(0, 0) = -0.5 * b1 * c1 * xyz[0][0] + 0.5 * b1 * c1 * xyz[1][0] +
490 0.5 * b2 * c1 * xyz[2][0] - 0.5 * b2 * c1 * xyz[3][0] -
491 0.5 * b1 * c2 * xyz[5][0] + 0.5 * b1 * c2 * xyz[5][0] +
492 0.5 * b2 * c2 * xyz[6][0] - 0.5 * b2 * c2 * xyz[7][0];
493 J(1, 0) = -0.5 * b1 * c1 * xyz[0][1] + 0.5 * b1 * c1 * xyz[1][1] +
494 0.5 * b2 * c1 * xyz[2][1] - 0.5 * b2 * c1 * xyz[3][1] -
495 0.5 * b1 * c2 * xyz[5][1] + 0.5 * b1 * c2 * xyz[5][1] +
496 0.5 * b2 * c2 * xyz[6][1] - 0.5 * b2 * c2 * xyz[7][1];
497 J(2, 0) = -0.5 * b1 * c1 * xyz[0][2] + 0.5 * b1 * c1 * xyz[1][2] +
498 0.5 * b2 * c1 * xyz[2][2] - 0.5 * b2 * c1 * xyz[3][2] -
499 0.5 * b1 * c2 * xyz[5][2] + 0.5 * b1 * c2 * xyz[5][2] +
500 0.5 * b2 * c2 * xyz[6][2] - 0.5 * b2 * c2 * xyz[7][2];
502 J(0, 1) = -0.5 * a1 * c1 * xyz[0][0] - 0.5 * a2 * c1 * xyz[1][0] +
503 0.5 * a2 * c1 * xyz[2][0] + 0.5 * a1 * c1 * xyz[3][0] -
504 0.5 * a1 * c2 * xyz[5][0] - 0.5 * a2 * c2 * xyz[5][0] +
505 0.5 * a2 * c2 * xyz[6][0] + 0.5 * a1 * c2 * xyz[7][0];
506 J(1, 1) = -0.5 * a1 * c1 * xyz[0][1] - 0.5 * a2 * c1 * xyz[1][1] +
507 0.5 * a2 * c1 * xyz[2][1] + 0.5 * a1 * c1 * xyz[3][1] -
508 0.5 * a1 * c2 * xyz[5][1] - 0.5 * a2 * c2 * xyz[5][1] +
509 0.5 * a2 * c2 * xyz[6][1] + 0.5 * a1 * c2 * xyz[7][1];
510 J(2, 1) = -0.5 * a1 * c1 * xyz[0][2] - 0.5 * a2 * c1 * xyz[1][2] +
511 0.5 * a2 * c1 * xyz[2][2] + 0.5 * a1 * c1 * xyz[3][2] -
512 0.5 * a1 * c2 * xyz[5][2] - 0.5 * a2 * c2 * xyz[5][2] +
513 0.5 * a2 * c2 * xyz[6][2] + 0.5 * a1 * c2 * xyz[7][2];
515 J(0, 0) = -0.5 * b1 * a1 * xyz[0][0] - 0.5 * b1 * a2 * xyz[1][0] -
516 0.5 * b2 * a2 * xyz[2][0] - 0.5 * b2 * a1 * xyz[3][0] +
517 0.5 * b1 * a1 * xyz[5][0] + 0.5 * b1 * a2 * xyz[5][0] +
518 0.5 * b2 * a2 * xyz[6][0] + 0.5 * b2 * a1 * xyz[7][0];
519 J(1, 0) = -0.5 * b1 * a1 * xyz[0][1] - 0.5 * b1 * a2 * xyz[1][1] -
520 0.5 * b2 * a2 * xyz[2][1] - 0.5 * b2 * a1 * xyz[3][1] +
521 0.5 * b1 * a1 * xyz[5][1] + 0.5 * b1 * a2 * xyz[5][1] +
522 0.5 * b2 * a2 * xyz[6][1] + 0.5 * b2 * a1 * xyz[7][1];
523 J(2, 0) = -0.5 * b1 * a1 * xyz[0][2] - 0.5 * b1 * a2 * xyz[1][2] -
524 0.5 * b2 * a2 * xyz[2][2] - 0.5 * b2 * a1 * xyz[3][2] +
525 0.5 * b1 * a1 * xyz[5][2] + 0.5 * b1 * a2 * xyz[5][2] +
526 0.5 * b2 * a2 * xyz[6][2] + 0.5 * b2 * a1 * xyz[7][2];
532 r[9] = 1.0 / (J(0, 0) * (J(1, 1) * J(2, 2) - J(2, 1) * J(1, 2)) -
533 J(0, 1) * (J(1, 0) * J(2, 2) - J(2, 0) * J(1, 2)) +
534 J(0, 2) * (J(1, 0) * J(2, 1) - J(2, 0) * J(1, 1)));
554 void ElUtil::Evaluate()
556 NekDouble mx2 = -1.0 * numeric_limits<double>::max();
557 NekDouble mn2 = numeric_limits<double>::max();
559 ASSERTL0(nodes.size() == m_derivUtil->ptsStd,
"node count wrong");
564 for (
int j = 0; j < nodes.size(); j++)
571 x2i(nodes.size()), y2i(nodes.size());
573 x1i = m_derivUtil->VdmDStd[0] * X;
574 y1i = m_derivUtil->VdmDStd[0] * Y;
575 x2i = m_derivUtil->VdmDStd[1] * X;
576 y2i = m_derivUtil->VdmDStd[1] * Y;
578 for (
int j = 0; j < nodes.size(); j++)
580 NekDouble jacDet = x1i(j) * y2i(j) - x2i(j) * y1i(j);
581 mx2 = max(mx2, jacDet / mapsStd[j][9]);
582 mn2 = min(mn2, jacDet / mapsStd[j][9]);
588 for (
int j = 0; j < nodes.size(); j++)
595 z1i2(nodes.size()), x2i2(nodes.size()), y2i2(nodes.size()),
596 z2i2(nodes.size()), x3i2(nodes.size()), y3i2(nodes.size()),
599 x1i2 = m_derivUtil->VdmDStd[0] * X;
600 y1i2 = m_derivUtil->VdmDStd[0] * Y;
601 z1i2 = m_derivUtil->VdmDStd[0] * Z;
602 x2i2 = m_derivUtil->VdmDStd[1] * X;
603 y2i2 = m_derivUtil->VdmDStd[1] * Y;
604 z2i2 = m_derivUtil->VdmDStd[1] * Z;
605 x3i2 = m_derivUtil->VdmDStd[2] * X;
606 y3i2 = m_derivUtil->VdmDStd[2] * Y;
607 z3i2 = m_derivUtil->VdmDStd[2] * Z;
609 for (
int j = 0; j < nodes.size(); j++)
612 dxdz(0, 0) = x1i2(j);
613 dxdz(0, 1) = x2i2(j);
614 dxdz(0, 2) = x3i2(j);
615 dxdz(1, 0) = y1i2(j);
616 dxdz(1, 1) = y2i2(j);
617 dxdz(1, 2) = y3i2(j);
618 dxdz(2, 0) = z1i2(j);
619 dxdz(2, 1) = z2i2(j);
620 dxdz(2, 2) = z3i2(j);
624 (dxdz(1, 1) * dxdz(2, 2) - dxdz(2, 1) * dxdz(1, 2)) -
626 (dxdz(1, 0) * dxdz(2, 2) - dxdz(2, 0) * dxdz(1, 2)) +
628 (dxdz(1, 0) * dxdz(2, 1) - dxdz(2, 0) * dxdz(1, 1));
630 mx2 = max(mx2, jacDet / mapsStd[j][9]);
631 mn2 = min(mn2, jacDet / mapsStd[j][9]);
640 m_res->worstJac = min(m_res->worstJac, (mn2 / mx2));
643 m_scaledJac = (mn2 / mx2);
646 void ElUtil::InitialMinJac()
648 NekDouble mx = -1.0 * numeric_limits<double>::max();
649 NekDouble mn = numeric_limits<double>::max();
651 ASSERTL0(nodes.size() == m_derivUtil->ptsStd,
"node count wrong");
656 for (
int j = 0; j < nodes.size(); j++)
663 x2i2(m_derivUtil->pts), y2i2(m_derivUtil->pts);
665 x1i2 = m_derivUtil->VdmD[0] * X;
666 y1i2 = m_derivUtil->VdmD[0] * Y;
667 x2i2 = m_derivUtil->VdmD[1] * X;
668 y2i2 = m_derivUtil->VdmD[1] * Y;
670 for (
int j = 0; j < m_derivUtil->pts; j++)
672 NekDouble jacDet = x1i2(j) * y2i2(j) - x2i2(j) * y1i2(j);
673 jacDet /= maps[j][9];
674 mx = max(mx, jacDet);
675 mn = min(mn, jacDet);
681 for (
int j = 0; j < nodes.size(); j++)
689 z1i(m_derivUtil->pts), x2i(m_derivUtil->pts), y2i(m_derivUtil->pts),
690 z2i(m_derivUtil->pts), x3i(m_derivUtil->pts), y3i(m_derivUtil->pts),
691 z3i(m_derivUtil->pts);
693 x1i = m_derivUtil->VdmD[0] * X;
694 y1i = m_derivUtil->VdmD[0] * Y;
695 z1i = m_derivUtil->VdmD[0] * Z;
696 x2i = m_derivUtil->VdmD[1] * X;
697 y2i = m_derivUtil->VdmD[1] * Y;
698 z2i = m_derivUtil->VdmD[1] * Z;
699 x3i = m_derivUtil->VdmD[2] * X;
700 y3i = m_derivUtil->VdmD[2] * Y;
701 z3i = m_derivUtil->VdmD[2] * Z;
703 for (
int j = 0; j < m_derivUtil->pts; j++)
718 (dxdz(1, 1) * dxdz(2, 2) - dxdz(2, 1) * dxdz(1, 2)) -
720 (dxdz(1, 0) * dxdz(2, 2) - dxdz(2, 0) * dxdz(1, 2)) +
722 (dxdz(1, 0) * dxdz(2, 1) - dxdz(2, 0) * dxdz(1, 1));
724 mx = max(mx, jacDet);
725 mn = min(mn, jacDet);
#define ASSERTL0(condition, msg)
vector< DNekMat > MappingIdealToRef(SpatialDomains::GeometrySharedPtr geom, StdRegions::StdExpansionSharedPtr chi)
boost::shared_ptr< Residual > ResidualSharedPtr
PointsManagerT & PointsManager(void)
Defines a specification for a set of points.
boost::shared_ptr< DerivUtil > DerivUtilSharedPtr
boost::shared_ptr< Element > ElementSharedPtr
static boost::mutex mutex
3D electrostatically spaced points on a Prism