Lines Matching refs:mod

211 static PetscErrorCode PhysicsSolution_Advect(Model mod, PetscReal time, const PetscReal *x, PetscSc…  in PhysicsSolution_Advect()  argument
250 static PetscErrorCode PhysicsFunctional_Advect(Model mod, PetscReal time, const PetscReal *x, const… in PhysicsFunctional_Advect() argument
257 PetscCall(PhysicsSolution_Advect(mod, time, x, yexact, phys)); in PhysicsFunctional_Advect()
276 static PetscErrorCode PhysicsCreate_Advect(Model mod, Physics phys, PetscOptionItems PetscOptionsOb… in PhysicsCreate_Advect() argument
285 mod->setupbc = SetUpBC_Advect; in PhysicsCreate_Advect()
320 PetscCall(ModelSolutionSetDefault(mod, PhysicsSolution_Advect, phys)); in PhysicsCreate_Advect()
322 …PetscCall(ModelFunctionalRegister(mod, "Solution", &advect->functional.Solution, PhysicsFunctional… in PhysicsCreate_Advect()
323 …PetscCall(ModelFunctionalRegister(mod, "Error", &advect->functional.Error, PhysicsFunctional_Advec… in PhysicsCreate_Advect()
343 static PetscErrorCode PhysicsSolution_SW(Model mod, PetscReal time, const PetscReal *x, PetscScalar… in PhysicsSolution_SW() argument
348 PetscCheck(time == 0.0, mod->comm, PETSC_ERR_SUP, "No solution known for time %g", (double)time); in PhysicsSolution_SW()
359 static PetscErrorCode PhysicsFunctional_SW(Model mod, PetscReal time, const PetscReal *coord, const… in PhysicsFunctional_SW() argument
423 static PetscErrorCode PhysicsCreate_SW(Model mod, Physics phys, PetscOptionItems PetscOptionsObject) in PhysicsCreate_SW() argument
432 mod->setupbc = SetUpBC_SW; in PhysicsCreate_SW()
433 mod->setupCEED = SetupCEED_SW; in PhysicsCreate_SW()
453 PetscCall(ModelSolutionSetDefault(mod, PhysicsSolution_SW, phys)); in PhysicsCreate_SW()
454 …PetscCall(ModelFunctionalRegister(mod, "Height", &sw->functional.Height, PhysicsFunctional_SW, phy… in PhysicsCreate_SW()
455 …PetscCall(ModelFunctionalRegister(mod, "Speed", &sw->functional.Speed, PhysicsFunctional_SW, phys)… in PhysicsCreate_SW()
456 …PetscCall(ModelFunctionalRegister(mod, "Energy", &sw->functional.Energy, PhysicsFunctional_SW, phy… in PhysicsCreate_SW()
473 static PetscErrorCode PhysicsSolution_Euler(Model mod, PetscReal time, const PetscReal *x, PetscSca… in PhysicsSolution_Euler() argument
482 PetscCheck(time == 0.0, mod->comm, PETSC_ERR_SUP, "No solution known for time %g", (double)time); in PhysicsSolution_Euler()
496 if (x[0] < mod->bounds[0] * 0.5) { /* left of shock (1) */ in PhysicsSolution_Euler()
524 initLinearWave(uu, gamma, x, mod->bounds[1] - mod->bounds[0]); in PhysicsSolution_Euler()
525 } else SETERRQ(mod->comm, PETSC_ERR_SUP, "Unknown type %d", eu->type); in PhysicsSolution_Euler()
560 static PetscErrorCode PhysicsFunctional_Euler(Model mod, PetscReal time, const PetscReal *coord, co… in PhysicsFunctional_Euler() argument
630 static PetscErrorCode PhysicsCreate_Euler(Model mod, Physics phys, PetscOptionItems PetscOptionsObj… in PhysicsCreate_Euler() argument
639 mod->setupbc = SetUpBC_Euler; in PhysicsCreate_Euler()
640 mod->setupCEED = SetupCEED_Euler; in PhysicsCreate_Euler()
695 PetscCall(ModelSolutionSetDefault(mod, PhysicsSolution_Euler, phys)); in PhysicsCreate_Euler()
696 …PetscCall(ModelFunctionalRegister(mod, "Speed", &eu->monitor.Speed, PhysicsFunctional_Euler, phys)… in PhysicsCreate_Euler()
697 …PetscCall(ModelFunctionalRegister(mod, "Energy", &eu->monitor.Energy, PhysicsFunctional_Euler, phy… in PhysicsCreate_Euler()
698 …PetscCall(ModelFunctionalRegister(mod, "Density", &eu->monitor.Density, PhysicsFunctional_Euler, p… in PhysicsCreate_Euler()
699 …PetscCall(ModelFunctionalRegister(mod, "Momentum", &eu->monitor.Momentum, PhysicsFunctional_Euler,… in PhysicsCreate_Euler()
700 …PetscCall(ModelFunctionalRegister(mod, "Pressure", &eu->monitor.Pressure, PhysicsFunctional_Euler,… in PhysicsCreate_Euler()
833 static PetscErrorCode ModelSolutionSetDefault(Model mod, SolutionFunction func, PetscCtx ctx) in ModelSolutionSetDefault() argument
836 mod->solution = func; in ModelSolutionSetDefault()
837 mod->solutionctx = ctx; in ModelSolutionSetDefault()
841 static PetscErrorCode ModelFunctionalRegister(Model mod, const char *name, PetscInt *offset, Functi… in ModelFunctionalRegister() argument
847 for (ptr = &mod->functionalRegistry; *ptr; ptr = &(*ptr)->next) lastoffset = (*ptr)->offset; in ModelFunctionalRegister()
859 static PetscErrorCode ModelFunctionalSetFromOptions(Model mod, PetscOptionItems PetscOptionsObject) in ModelFunctionalSetFromOptions() argument
866 mod->numMonitored = PETSC_STATIC_ARRAY_LENGTH(names); in ModelFunctionalSetFromOptions()
867 …PetscCall(PetscOptionsStringArray("-monitor", "list of functionals to monitor", "", names, &mod->n… in ModelFunctionalSetFromOptions()
869 PetscCall(PetscMalloc1(mod->numMonitored, &mod->functionalMonitored)); in ModelFunctionalSetFromOptions()
871 PetscCall(PetscMalloc1(mod->numMonitored, &mod->functionalCall)); in ModelFunctionalSetFromOptions()
872 mod->numCall = 0; in ModelFunctionalSetFromOptions()
873 for (i = 0; i < mod->numMonitored; i++) { in ModelFunctionalSetFromOptions()
874 for (link = mod->functionalRegistry; link; link = link->next) { in ModelFunctionalSetFromOptions()
879 PetscCheck(link, mod->comm, PETSC_ERR_USER, "No known functional '%s'", names[i]); in ModelFunctionalSetFromOptions()
880 mod->functionalMonitored[i] = link; in ModelFunctionalSetFromOptions()
882 …if (mod->functionalCall[j]->func == link->func && mod->functionalCall[j]->ctx == link->ctx) goto n… in ModelFunctionalSetFromOptions()
884mod->functionalCall[mod->numCall++] = link; /* Just points to the first link using the result. The… in ModelFunctionalSetFromOptions()
890 mod->maxComputed = -1; in ModelFunctionalSetFromOptions()
891 for (link = mod->functionalRegistry; link; link = link->next) { in ModelFunctionalSetFromOptions()
892 for (i = 0; i < mod->numCall; i++) { in ModelFunctionalSetFromOptions()
893 FunctionalLink call = mod->functionalCall[i]; in ModelFunctionalSetFromOptions()
894 …if (link->func == call->func && link->ctx == call->ctx) mod->maxComputed = PetscMax(mod->maxComput… in ModelFunctionalSetFromOptions()
919 Model mod; in SolutionFunctional() local
922 mod = (Model)modctx; in SolutionFunctional()
923 PetscCall((*mod->solution)(mod, time, x, u, mod->solutionctx)); in SolutionFunctional()
931 Model mod = user->model; in SetInitialCondition() local
935 ctx[0] = (void *)mod; in SetInitialCondition()
967 Model mod = user->model; in MonitorVTK() local
978 fcount = mod->maxComputed + 1; in MonitorVTK()
1001 for (i = 0; i < mod->numCall; i++) { in MonitorVTK()
1002 FunctionalLink flink = mod->functionalCall[i]; in MonitorVTK()
1003 PetscCall((*flink->func)(mod, time, cg->centroid, cx, ftmp, flink->ctx)); in MonitorVTK()
1021 for (i = 0; i < mod->numMonitored; i++) { in MonitorVTK()
1024 FunctionalLink flink = mod->functionalMonitored[i]; in MonitorVTK()
1219 Model mod = tctx->user->model; in Transfer() local
1220 Physics phys = mod->physics; in Transfer()
1224 …PetscCallMPI(MPIU_Allreduce(&phys->maxspeed, &mod->maxspeed, 1, MPIU_REAL, MPIU_MAX, PetscObjectCo… in Transfer()
1225 …PetscCheck(mod->maxspeed > 0, PetscObjectComm((PetscObject)ts), PETSC_ERR_ARG_WRONGSTATE, "Physics… in Transfer()
1227 PetscReal dt = tctx->cfl * minRadius / mod->maxspeed; in Transfer()
1242 Model mod; in main() local
1264 mod = user->model; in main()
1265 phys = mod->physics; in main()
1266 mod->comm = comm; in main()
1321 PetscCall((*physcreate)(mod, phys, PetscOptionsObject)); in main()
1325 PetscCall(ModelFunctionalSetFromOptions(mod, PetscOptionsObject)); in main()
1337 mod->bounds[2 * i] = 0.; in main()
1338 mod->bounds[2 * i + 1] = 1.; in main()
1346 …"bounds of the mesh in each direction (i.e., x_min,x_max,y_min,y_max", "", mod->bounds, &nret2, &f… in main()
1367 … coord[j] = mod->bounds[2 * j] + coord[j] * (mod->bounds[2 * j + 1] - mod->bounds[2 * j]); in main()
1372 if (i == 2 || i == 10) coord[j] = mod->bounds[1] / 4.; in main()
1373 else if (i == 4) coord[j] = mod->bounds[1] / 2.; in main()
1374 else if (i == 12) coord[j] = 1.57735026918963 * mod->bounds[1] / 2.; in main()
1389 mod->errorIndicator = ErrorIndicator_Simple; in main()
1431 PetscCall((*mod->setupbc)(dm, prob, phys)); in main()
1526 …PetscCallMPI(MPIU_Allreduce(&phys->maxspeed, &mod->maxspeed, 1, MPIU_REAL, MPIU_MAX, PetscObjectCo… in main()
1527 …PetscCheck(mod->maxspeed > 0, comm, PETSC_ERR_ARG_WRONGSTATE, "Physics '%s' did not set maxspeed",… in main()
1528 dt = cfl * minRadius / mod->maxspeed; in main()