MCPcopy Create free account
hub / github.com/NGSolve/ngsolve / SetPMLParameters

Function SetPMLParameters

fem/pml.cpp:438–511  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

436
437
438 void SetPMLParameters()
439 {
440 if (!constant_table_for_FEM)
441 {
442 throw Exception ("please set global variable constant_table_for_FEM");
443 }
444
445 if (GetConstantTable().Used ("pml_r"))
446 pml_r = GetConstantTable()["pml_r"];
447
448 if (GetConstantTable().Used ("pml_cx"))
449 pml_center(0) = GetConstantTable()["pml_cx"];
450 if (GetConstantTable().Used ("pml_cy"))
451 pml_center(1) = GetConstantTable()["pml_cy"];
452 if (GetConstantTable().Used ("pml_cz"))
453 pml_center(2) = GetConstantTable()["pml_cz"];
454
455
456 if (GetConstantTable().Used ("pml_x"))
457 {
458 pml_x = GetConstantTable()["pml_x"];
459 rect_pml = 1;
460 }
461
462
463 if (GetConstantTable().Used ("pml_xmin"))
464 {
465 pml_xmin[0] = GetConstantTable()["pml_xmin"];
466 rect_pml = 2;
467 }
468 if (GetConstantTable().Used ("pml_xmax"))
469 {
470 pml_xmax[0] = GetConstantTable()["pml_xmax"];
471 rect_pml = 2;
472 }
473
474 if (GetConstantTable().Used ("pml_ymin"))
475 {
476 pml_xmin[1] = GetConstantTable()["pml_ymin"];
477 rect_pml = 2;
478 }
479 if (GetConstantTable().Used ("pml_ymax"))
480 {
481 pml_xmax[1] = GetConstantTable()["pml_ymax"];
482 rect_pml = 2;
483 }
484
485 if (GetConstantTable().Used ("pml_zmin"))
486 {
487 pml_xmin[2] = GetConstantTable()["pml_zmin"];
488 rect_pml = 2;
489 }
490 if (GetConstantTable().Used ("pml_zmax"))
491 {
492 pml_xmax[2] = GetConstantTable()["pml_zmax"];
493 rect_pml = 2;
494 }
495

Callers 3

PML_BDBIntegratorMethod · 0.85
cavity.pyFile · 0.85

Calls 2

ComplexFunction · 0.50
UsedMethod · 0.45

Tested by

no test coverage detected