416 switch (
m_graph->GetMeshDimension())
420 if (NumHomogeneousDir == 1)
424 "ContField2DHomogeneous1D or "
425 "DisContField2DHomogenenous1D has not been "
429 boost::dynamic_pointer_cast<MultiRegions::
430 ExpList2DHomogeneous1D>(
m_exp[0]);
432 tmp = MemoryManager<MultiRegions::
433 ExpList2DHomogeneous1D>::
434 AllocateSharedPtr(*tmp2);
437 else if (NumHomogeneousDir == 2)
442 boost::dynamic_pointer_cast<MultiRegions::
443 ContField3DHomogeneous2D>(
m_exp[0]);
445 tmp = MemoryManager<MultiRegions::
446 ContField3DHomogeneous2D>::
447 AllocateSharedPtr(*tmp2);
452 boost::dynamic_pointer_cast<MultiRegions::
453 DisContField3DHomogeneous2D>(
m_exp[0]);
455 tmp = MemoryManager<MultiRegions::
456 DisContField3DHomogeneous2D>::
457 AllocateSharedPtr(*tmp2);
462 boost::dynamic_pointer_cast<MultiRegions::
463 ExpList3DHomogeneous2D>(
m_exp[0]);
465 tmp = MemoryManager<MultiRegions::
466 ExpList3DHomogeneous2D>::
467 AllocateSharedPtr(*tmp2);
477 boost::dynamic_pointer_cast<MultiRegions::
478 ContField1D>(
m_exp[0]);
486 boost::dynamic_pointer_cast<MultiRegions::
487 DisContField1D>(
m_exp[0]);
495 boost::dynamic_pointer_cast<MultiRegions::
496 ExpList1D>(
m_exp[0]);
507 if (NumHomogeneousDir == 1)
513 bool dealiasing =
false;
515 tmp = MemoryManager<MultiRegions::
516 ContField3DHomogeneous1D>::AllocateSharedPtr(
518 m_exp[0]->GetHomogeneousBasis()
520 m_exp[0]->GetHomoLen(),
526 boost::dynamic_pointer_cast<MultiRegions::
527 ContField3DHomogeneous1D>(
m_exp[0]);
529 ASSERTL0(tmp2,
"Failed to type cast m_exp[0]");
530 tmp = MemoryManager<MultiRegions::
531 ContField3DHomogeneous1D>::
532 AllocateSharedPtr(*tmp2,
m_graph, var);
539 bool dealiasing =
false;
541 tmp = MemoryManager<MultiRegions::
542 DisContField3DHomogeneous1D>::AllocateSharedPtr(
544 m_exp[0]->GetHomogeneousBasis()
546 m_exp[0]->GetHomoLen(),
552 boost::dynamic_pointer_cast<MultiRegions::
553 DisContField3DHomogeneous1D>(
m_exp[0]);
554 ASSERTL0(tmp2,
"Failed to type cast m_exp[0]");
556 tmp = MemoryManager<MultiRegions::
557 DisContField3DHomogeneous1D>::
558 AllocateSharedPtr(*tmp2);
565 bool dealiasing =
false;
567 tmp = MemoryManager<MultiRegions::
568 ExpList3DHomogeneous1D>::AllocateSharedPtr(
570 m_exp[0]->GetHomogeneousBasis()
572 m_exp[0]->GetHomoLen(),
578 boost::dynamic_pointer_cast<MultiRegions::
579 ExpList3DHomogeneous1D>(
m_exp[0]);
580 ASSERTL0(tmp2,
"Failed to type cast m_exp[0]");
582 tmp = MemoryManager<MultiRegions::
583 ExpList3DHomogeneous1D>::
584 AllocateSharedPtr(*tmp2);
602 boost::dynamic_pointer_cast<MultiRegions::
603 ContField2D>(
m_exp[0]);
619 boost::dynamic_pointer_cast<MultiRegions::
620 DisContField2D>(
m_exp[0]);
629 boost::dynamic_pointer_cast<MultiRegions::
630 ExpList2D>(
m_exp[0]);
651 boost::dynamic_pointer_cast<MultiRegions::
652 ContField3D>(
m_exp[0]);
670 boost::dynamic_pointer_cast<MultiRegions::
671 DisContField3D>(
m_exp[0]);
680 boost::dynamic_pointer_cast<MultiRegions::
681 ExpList3D>(
m_exp[0]);
689 ASSERTL0(
false,
"Expansion dimension not recognised");
vector< MultiRegions::ExpListSharedPtr > m_exp
#define ASSERTL0(condition, msg)
boost::shared_ptr< ContField1D > ContField1DSharedPtr
boost::shared_ptr< ContField3DHomogeneous1D > ContField3DHomogeneous1DSharedPtr
static boost::shared_ptr< DataType > AllocateSharedPtr()
Allocate a shared pointer from the memory pool.
bool m_requireBoundaryExpansion
MultiRegions::AssemblyMapCGSharedPtr m_locToGlobalMap
boost::shared_ptr< DisContField3DHomogeneous1D > DisContField3DHomogeneous1DSharedPtr
boost::shared_ptr< ContField2D > ContField2DSharedPtr
boost::shared_ptr< ExpList3DHomogeneous2D > ExpList3DHomogeneous2DSharedPtr
Shared pointer to an ExpList3DHomogeneous2D object.
boost::shared_ptr< DisContField3DHomogeneous2D > DisContField3DHomogeneous2DSharedPtr
boost::shared_ptr< ContField3DHomogeneous2D > ContField3DHomogeneous2DSharedPtr
boost::shared_ptr< ExpList1D > ExpList1DSharedPtr
Shared pointer to an ExpList1D object.
bool m_declareExpansionAsDisContField
boost::shared_ptr< ExpList > ExpListSharedPtr
Shared pointer to an ExpList object.
boost::shared_ptr< DisContField2D > DisContField2DSharedPtr
SpatialDomains::MeshGraphSharedPtr m_graph
boost::shared_ptr< DisContField1D > DisContField1DSharedPtr
boost::shared_ptr< ExpList2D > ExpList2DSharedPtr
Shared pointer to an ExpList2D object.
boost::shared_ptr< DisContField3D > DisContField3DSharedPtr
boost::shared_ptr< ExpList2DHomogeneous1D > ExpList2DHomogeneous1DSharedPtr
Shared pointer to an ExpList2DHomogeneous1D object.
boost::shared_ptr< ExpList3D > ExpList3DSharedPtr
Shared pointer to an ExpList3D object.
boost::shared_ptr< ExpList3DHomogeneous1D > ExpList3DHomogeneous1DSharedPtr
Shared pointer to an ExpList3DHomogeneous1D object.
bool m_declareExpansionAsContField
LibUtilities::SessionReaderSharedPtr m_session
boost::shared_ptr< ContField3D > ContField3DSharedPtr