1b7c563b6SJeremy L Thompson #ifndef libceed_petsc_examples_bps_problem_data_h 2b7c563b6SJeremy L Thompson #define libceed_petsc_examples_bps_problem_data_h 3e83e87a5Sjeremylt 4e83e87a5Sjeremylt #include <ceed.h> 5e83e87a5Sjeremylt #include <petsc.h> 6*2b730f8bSJeremy L Thompson 7e83e87a5Sjeremylt #include "../include/structs.h" 8e83e87a5Sjeremylt #include "../qfunctions/bps/bp1.h" 9e83e87a5Sjeremylt #include "../qfunctions/bps/bp2.h" 10e83e87a5Sjeremylt #include "../qfunctions/bps/bp3.h" 11e83e87a5Sjeremylt #include "../qfunctions/bps/bp4.h" 12e83e87a5Sjeremylt #include "../qfunctions/bps/common.h" 13e83e87a5Sjeremylt 14e83e87a5Sjeremylt // ----------------------------------------------------------------------------- 15e83e87a5Sjeremylt // BP Option Data 16e83e87a5Sjeremylt // ----------------------------------------------------------------------------- 17e83e87a5Sjeremylt 189b072555Sjeremylt BPData bp_options[6] = { 19*2b730f8bSJeremy L Thompson [CEED_BP1] = {.num_comp_u = 1, 209b072555Sjeremylt .num_comp_x = 3, 219b072555Sjeremylt .topo_dim = 3, 229b072555Sjeremylt .q_data_size = 1, 239b072555Sjeremylt .q_extra = 1, 249b072555Sjeremylt .setup_geo = SetupMassGeo, 259b072555Sjeremylt .setup_rhs = SetupMassRhs, 26e83e87a5Sjeremylt .apply = Mass, 27e83e87a5Sjeremylt .error = Error, 289b072555Sjeremylt .setup_geo_loc = SetupMassGeo_loc, 299b072555Sjeremylt .setup_rhs_loc = SetupMassRhs_loc, 309b072555Sjeremylt .apply_loc = Mass_loc, 319b072555Sjeremylt .error_loc = Error_loc, 329b072555Sjeremylt .in_mode = CEED_EVAL_INTERP, 339b072555Sjeremylt .out_mode = CEED_EVAL_INTERP, 349b072555Sjeremylt .q_mode = CEED_GAUSS, 35*2b730f8bSJeremy L Thompson .enforce_bc = PETSC_FALSE}, 36*2b730f8bSJeremy L Thompson [CEED_BP2] = {.num_comp_u = 3, 379b072555Sjeremylt .num_comp_x = 3, 389b072555Sjeremylt .topo_dim = 3, 399b072555Sjeremylt .q_data_size = 1, 409b072555Sjeremylt .q_extra = 1, 419b072555Sjeremylt .setup_geo = SetupMassGeo, 429b072555Sjeremylt .setup_rhs = SetupMassRhs3, 43e83e87a5Sjeremylt .apply = Mass3, 44e83e87a5Sjeremylt .error = Error3, 459b072555Sjeremylt .setup_geo_loc = SetupMassGeo_loc, 469b072555Sjeremylt .setup_rhs_loc = SetupMassRhs3_loc, 479b072555Sjeremylt .apply_loc = Mass3_loc, 489b072555Sjeremylt .error_loc = Error3_loc, 499b072555Sjeremylt .in_mode = CEED_EVAL_INTERP, 509b072555Sjeremylt .out_mode = CEED_EVAL_INTERP, 519b072555Sjeremylt .q_mode = CEED_GAUSS, 52*2b730f8bSJeremy L Thompson .enforce_bc = PETSC_FALSE}, 53*2b730f8bSJeremy L Thompson [CEED_BP3] = {.num_comp_u = 1, 549b072555Sjeremylt .num_comp_x = 3, 559b072555Sjeremylt .topo_dim = 3, 569b072555Sjeremylt .q_data_size = 7, 579b072555Sjeremylt .q_extra = 1, 589b072555Sjeremylt .setup_geo = SetupDiffGeo, 599b072555Sjeremylt .setup_rhs = SetupDiffRhs, 60e83e87a5Sjeremylt .apply = Diff, 61e83e87a5Sjeremylt .error = Error, 629b072555Sjeremylt .setup_geo_loc = SetupDiffGeo_loc, 639b072555Sjeremylt .setup_rhs_loc = SetupDiffRhs_loc, 649b072555Sjeremylt .apply_loc = Diff_loc, 659b072555Sjeremylt .error_loc = Error_loc, 669b072555Sjeremylt .in_mode = CEED_EVAL_GRAD, 679b072555Sjeremylt .out_mode = CEED_EVAL_GRAD, 689b072555Sjeremylt .q_mode = CEED_GAUSS, 69*2b730f8bSJeremy L Thompson .enforce_bc = PETSC_TRUE }, 70*2b730f8bSJeremy L Thompson [CEED_BP4] = {.num_comp_u = 3, 719b072555Sjeremylt .num_comp_x = 3, 729b072555Sjeremylt .topo_dim = 3, 739b072555Sjeremylt .q_data_size = 7, 749b072555Sjeremylt .q_extra = 1, 759b072555Sjeremylt .setup_geo = SetupDiffGeo, 769b072555Sjeremylt .setup_rhs = SetupDiffRhs3, 77e83e87a5Sjeremylt .apply = Diff3, 78e83e87a5Sjeremylt .error = Error3, 799b072555Sjeremylt .setup_geo_loc = SetupDiffGeo_loc, 809b072555Sjeremylt .setup_rhs_loc = SetupDiffRhs3_loc, 819b072555Sjeremylt .apply_loc = Diff3_loc, 829b072555Sjeremylt .error_loc = Error3_loc, 839b072555Sjeremylt .in_mode = CEED_EVAL_GRAD, 849b072555Sjeremylt .out_mode = CEED_EVAL_GRAD, 859b072555Sjeremylt .q_mode = CEED_GAUSS, 86*2b730f8bSJeremy L Thompson .enforce_bc = PETSC_TRUE }, 87*2b730f8bSJeremy L Thompson [CEED_BP5] = {.num_comp_u = 1, 889b072555Sjeremylt .num_comp_x = 3, 899b072555Sjeremylt .topo_dim = 3, 909b072555Sjeremylt .q_data_size = 7, 919b072555Sjeremylt .q_extra = 0, 929b072555Sjeremylt .setup_geo = SetupDiffGeo, 939b072555Sjeremylt .setup_rhs = SetupDiffRhs, 94e83e87a5Sjeremylt .apply = Diff, 95e83e87a5Sjeremylt .error = Error, 969b072555Sjeremylt .setup_geo_loc = SetupDiffGeo_loc, 979b072555Sjeremylt .setup_rhs_loc = SetupDiffRhs_loc, 989b072555Sjeremylt .apply_loc = Diff_loc, 999b072555Sjeremylt .error_loc = Error_loc, 1009b072555Sjeremylt .in_mode = CEED_EVAL_GRAD, 1019b072555Sjeremylt .out_mode = CEED_EVAL_GRAD, 1029b072555Sjeremylt .q_mode = CEED_GAUSS_LOBATTO, 103*2b730f8bSJeremy L Thompson .enforce_bc = PETSC_TRUE }, 104*2b730f8bSJeremy L Thompson [CEED_BP6] = {.num_comp_u = 3, 1059b072555Sjeremylt .num_comp_x = 3, 1069b072555Sjeremylt .topo_dim = 3, 1079b072555Sjeremylt .q_data_size = 7, 1089b072555Sjeremylt .q_extra = 0, 1099b072555Sjeremylt .setup_geo = SetupDiffGeo, 1109b072555Sjeremylt .setup_rhs = SetupDiffRhs3, 111e83e87a5Sjeremylt .apply = Diff3, 112e83e87a5Sjeremylt .error = Error3, 1139b072555Sjeremylt .setup_geo_loc = SetupDiffGeo_loc, 1149b072555Sjeremylt .setup_rhs_loc = SetupDiffRhs3_loc, 1159b072555Sjeremylt .apply_loc = Diff3_loc, 1169b072555Sjeremylt .error_loc = Error3_loc, 1179b072555Sjeremylt .in_mode = CEED_EVAL_GRAD, 1189b072555Sjeremylt .out_mode = CEED_EVAL_GRAD, 1199b072555Sjeremylt .q_mode = CEED_GAUSS_LOBATTO, 120*2b730f8bSJeremy L Thompson .enforce_bc = PETSC_TRUE } 121e83e87a5Sjeremylt }; 122e83e87a5Sjeremylt 123b7c563b6SJeremy L Thompson #endif // libceed_petsc_examples_bps_problem_data_h 124