466 switch (
m_graph->GetMeshDimension())
470 if (NumHomogeneousDir == 1)
474 "ContField2DHomogeneous1D or " 475 "DisContField2DHomogenenous1D has not been " 479 std::dynamic_pointer_cast<
480 MultiRegions::ExpList2DHomogeneous1D>(
m_exp[0]);
485 else if (NumHomogeneousDir == 2)
490 std::dynamic_pointer_cast<
491 MultiRegions::ContField3DHomogeneous2D>(
495 MultiRegions::ContField3DHomogeneous2D>::
496 AllocateSharedPtr(*tmp2);
501 tmp2 = std::dynamic_pointer_cast<
502 MultiRegions::DisContField3DHomogeneous2D>(
506 MultiRegions::DisContField3DHomogeneous2D>::
507 AllocateSharedPtr(*tmp2);
512 std::dynamic_pointer_cast<
513 MultiRegions::ExpList3DHomogeneous2D>(
m_exp[0]);
516 MultiRegions::ExpList3DHomogeneous2D>::
517 AllocateSharedPtr(*tmp2);
525 std::dynamic_pointer_cast<
526 MultiRegions::ContField1D>(
m_exp[0]);
534 std::dynamic_pointer_cast<
535 MultiRegions::DisContField1D>(
m_exp[0]);
543 std::dynamic_pointer_cast<
544 MultiRegions::ExpList1D>(
m_exp[0]);
547 MultiRegions::ExpList1D>::AllocateSharedPtr(*tmp2);
554 if (NumHomogeneousDir == 1)
560 bool dealiasing =
false;
563 MultiRegions::ContField3DHomogeneous1D>::
566 ->GetHomogeneousBasis()
574 tmp2 = std::dynamic_pointer_cast<
575 MultiRegions::ContField3DHomogeneous1D>(
578 ASSERTL0(tmp2,
"Failed to type cast m_exp[0]");
580 MultiRegions::ContField3DHomogeneous1D>::
581 AllocateSharedPtr(*tmp2,
m_graph, var);
588 bool dealiasing =
false;
591 MultiRegions::DisContField3DHomogeneous1D>::
594 ->GetHomogeneousBasis()
602 tmp2 = std::dynamic_pointer_cast<
603 MultiRegions::DisContField3DHomogeneous1D>(
605 ASSERTL0(tmp2,
"Failed to type cast m_exp[0]");
608 MultiRegions::DisContField3DHomogeneous1D>::
609 AllocateSharedPtr(*tmp2);
616 bool dealiasing =
false;
619 MultiRegions::ExpList3DHomogeneous1D>::
622 ->GetHomogeneousBasis()
630 std::dynamic_pointer_cast<
631 MultiRegions::ExpList3DHomogeneous1D>(
633 ASSERTL0(tmp2,
"Failed to type cast m_exp[0]");
636 MultiRegions::ExpList3DHomogeneous1D>::
637 AllocateSharedPtr(*tmp2);
654 std::dynamic_pointer_cast<
655 MultiRegions::ContField2D>(
m_exp[0]);
671 std::dynamic_pointer_cast<
672 MultiRegions::DisContField2D>(
m_exp[0]);
681 std::dynamic_pointer_cast<
682 MultiRegions::ExpList2D>(
m_exp[0]);
685 MultiRegions::ExpList2D>::AllocateSharedPtr(*tmp2);
702 std::dynamic_pointer_cast<
703 MultiRegions::ContField3D>(
m_exp[0]);
719 std::dynamic_pointer_cast<
720 MultiRegions::DisContField3D>(
m_exp[0]);
729 std::dynamic_pointer_cast<MultiRegions::ExpList3D>(
733 MultiRegions::ExpList3D>::AllocateSharedPtr(*tmp2);
738 ASSERTL0(
false,
"Expansion dimension not recognised");
std::shared_ptr< DisContField2D > DisContField2DSharedPtr
bool m_requireBoundaryExpansion
#define ASSERTL0(condition, msg)
std::shared_ptr< DisContField3DHomogeneous1D > DisContField3DHomogeneous1DSharedPtr
std::shared_ptr< ContField1D > ContField1DSharedPtr
std::shared_ptr< DisContField3D > DisContField3DSharedPtr
std::shared_ptr< ExpList > ExpListSharedPtr
Shared pointer to an ExpList object.
bool m_declareExpansionAsDisContField
std::shared_ptr< ContField3DHomogeneous2D > ContField3DHomogeneous2DSharedPtr
std::shared_ptr< ContField2D > ContField2DSharedPtr
LibUtilities::SessionReaderSharedPtr m_session
std::shared_ptr< ExpList3DHomogeneous1D > ExpList3DHomogeneous1DSharedPtr
Shared pointer to an ExpList3DHomogeneous1D object.
std::shared_ptr< ExpList2D > ExpList2DSharedPtr
Shared pointer to an ExpList2D object.
SpatialDomains::MeshGraphSharedPtr m_graph
bool m_declareExpansionAsContField
std::shared_ptr< ContField3D > ContField3DSharedPtr
std::shared_ptr< ExpList2DHomogeneous1D > ExpList2DHomogeneous1DSharedPtr
Shared pointer to an ExpList2DHomogeneous1D object.
static std::shared_ptr< DataType > AllocateSharedPtr(const Args &...args)
Allocate a shared pointer from the memory pool.
std::shared_ptr< DisContField3DHomogeneous2D > DisContField3DHomogeneous2DSharedPtr
std::vector< MultiRegions::ExpListSharedPtr > m_exp
std::shared_ptr< DisContField1D > DisContField1DSharedPtr
std::shared_ptr< ExpList3D > ExpList3DSharedPtr
Shared pointer to an ExpList3D object.
std::shared_ptr< ExpList1D > ExpList1DSharedPtr
Shared pointer to an ExpList1D object.
std::shared_ptr< ContField3DHomogeneous1D > ContField3DHomogeneous1DSharedPtr
std::shared_ptr< ExpList3DHomogeneous2D > ExpList3DHomogeneous2DSharedPtr
Shared pointer to an ExpList3DHomogeneous2D object.