aboutsummaryrefslogtreecommitdiff
path: root/Source/BoundaryConditions/PML.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/BoundaryConditions/PML.cpp')
-rw-r--r--Source/BoundaryConditions/PML.cpp93
1 files changed, 47 insertions, 46 deletions
diff --git a/Source/BoundaryConditions/PML.cpp b/Source/BoundaryConditions/PML.cpp
index 202867bdb..3824ddcef 100644
--- a/Source/BoundaryConditions/PML.cpp
+++ b/Source/BoundaryConditions/PML.cpp
@@ -20,6 +20,7 @@
#endif
#include <algorithm>
+#include <memory>
using namespace amrex;
@@ -493,18 +494,18 @@ PML::PML (const BoxArray& grid_ba, const DistributionMapping& /*grid_dm*/,
ngf = ngFFT;
#endif
- pml_E_fp[0].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getEfield_fp(0,0).ixType().toIntVect() ), dm, 3, nge ) );
- pml_E_fp[1].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getEfield_fp(0,1).ixType().toIntVect() ), dm, 3, nge ) );
- pml_E_fp[2].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getEfield_fp(0,2).ixType().toIntVect() ), dm, 3, nge ) );
- pml_B_fp[0].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getBfield_fp(0,0).ixType().toIntVect() ), dm, 2, ngb ) );
- pml_B_fp[1].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getBfield_fp(0,1).ixType().toIntVect() ), dm, 2, ngb ) );
- pml_B_fp[2].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getBfield_fp(0,2).ixType().toIntVect() ), dm, 2, ngb ) );
+ pml_E_fp[0] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getEfield_fp(0,0).ixType().toIntVect() ), dm, 3, nge );
+ pml_E_fp[1] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getEfield_fp(0,1).ixType().toIntVect() ), dm, 3, nge );
+ pml_E_fp[2] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getEfield_fp(0,2).ixType().toIntVect() ), dm, 3, nge );
+ pml_B_fp[0] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getBfield_fp(0,0).ixType().toIntVect() ), dm, 2, ngb );
+ pml_B_fp[1] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getBfield_fp(0,1).ixType().toIntVect() ), dm, 2, ngb );
+ pml_B_fp[2] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getBfield_fp(0,2).ixType().toIntVect() ), dm, 2, ngb );
pml_E_fp[0]->setVal(0.0);
@@ -514,27 +515,27 @@ PML::PML (const BoxArray& grid_ba, const DistributionMapping& /*grid_dm*/,
pml_B_fp[1]->setVal(0.0);
pml_B_fp[2]->setVal(0.0);
- pml_j_fp[0].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getcurrent_fp(0,0).ixType().toIntVect() ), dm, 1, ngb ) );
- pml_j_fp[1].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getcurrent_fp(0,1).ixType().toIntVect() ), dm, 1, ngb ) );
- pml_j_fp[2].reset( new MultiFab( amrex::convert( ba,
- WarpX::GetInstance().getcurrent_fp(0,2).ixType().toIntVect() ), dm, 1, ngb ) );
+ pml_j_fp[0] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getcurrent_fp(0,0).ixType().toIntVect() ), dm, 1, ngb );
+ pml_j_fp[1] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getcurrent_fp(0,1).ixType().toIntVect() ), dm, 1, ngb );
+ pml_j_fp[2] = std::make_unique<MultiFab>(amrex::convert( ba,
+ WarpX::GetInstance().getcurrent_fp(0,2).ixType().toIntVect() ), dm, 1, ngb );
pml_j_fp[0]->setVal(0.0);
pml_j_fp[1]->setVal(0.0);
pml_j_fp[2]->setVal(0.0);
if (do_dive_cleaning)
{
- pml_F_fp.reset(new MultiFab(amrex::convert(ba,IntVect::TheUnitVector()), dm, 3, ngf));
+ pml_F_fp = std::make_unique<MultiFab>(amrex::convert(ba,IntVect::TheUnitVector()), dm, 3, ngf);
pml_F_fp->setVal(0.0);
}
if (do_pml_in_domain){
- sigba_fp.reset(new MultiSigmaBox(ba, dm, grid_ba_reduced, geom->CellSize(), ncell, delta));
+ sigba_fp = std::make_unique<MultiSigmaBox>(ba, dm, grid_ba_reduced, geom->CellSize(), ncell, delta);
}
else {
- sigba_fp.reset(new MultiSigmaBox(ba, dm, grid_ba, geom->CellSize(), ncell, delta));
+ sigba_fp = std::make_unique<MultiSigmaBox>(ba, dm, grid_ba, geom->CellSize(), ncell, delta);
}
@@ -547,8 +548,8 @@ PML::PML (const BoxArray& grid_ba, const DistributionMapping& /*grid_dm*/,
BoxArray realspace_ba = ba; // Copy box
Array<Real,3> v_galilean_zero = {0,0,0};
realspace_ba.enclosedCells().grow(nge); // cell-centered + guard cells
- spectral_solver_fp.reset( new SpectralSolver( realspace_ba, dm,
- nox_fft, noy_fft, noz_fft, do_nodal, v_galilean_zero, dx, dt, in_pml ) );
+ spectral_solver_fp = std::make_unique<SpectralSolver>(realspace_ba, dm,
+ nox_fft, noy_fft, noz_fft, do_nodal, v_galilean_zero, dx, dt, in_pml );
#endif
if (cgeom)
@@ -568,18 +569,18 @@ PML::PML (const BoxArray& grid_ba, const DistributionMapping& /*grid_dm*/,
DistributionMapping cdm{cba};
- pml_E_cp[0].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getEfield_cp(1,0).ixType().toIntVect() ), cdm, 3, nge ) );
- pml_E_cp[1].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getEfield_cp(1,1).ixType().toIntVect() ), cdm, 3, nge ) );
- pml_E_cp[2].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getEfield_cp(1,2).ixType().toIntVect() ), cdm, 3, nge ) );
- pml_B_cp[0].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getBfield_cp(1,0).ixType().toIntVect() ), cdm, 2, ngb ) );
- pml_B_cp[1].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getBfield_cp(1,1).ixType().toIntVect() ), cdm, 2, ngb ) );
- pml_B_cp[2].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getBfield_cp(1,2).ixType().toIntVect() ), cdm, 2, ngb ) );
+ pml_E_cp[0] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getEfield_cp(1,0).ixType().toIntVect() ), cdm, 3, nge );
+ pml_E_cp[1] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getEfield_cp(1,1).ixType().toIntVect() ), cdm, 3, nge );
+ pml_E_cp[2] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getEfield_cp(1,2).ixType().toIntVect() ), cdm, 3, nge );
+ pml_B_cp[0] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getBfield_cp(1,0).ixType().toIntVect() ), cdm, 2, ngb );
+ pml_B_cp[1] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getBfield_cp(1,1).ixType().toIntVect() ), cdm, 2, ngb );
+ pml_B_cp[2] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getBfield_cp(1,2).ixType().toIntVect() ), cdm, 2, ngb );
pml_E_cp[0]->setVal(0.0);
pml_E_cp[1]->setVal(0.0);
@@ -590,24 +591,24 @@ PML::PML (const BoxArray& grid_ba, const DistributionMapping& /*grid_dm*/,
if (do_dive_cleaning)
{
- pml_F_cp.reset(new MultiFab(amrex::convert(cba,IntVect::TheUnitVector()), cdm, 3, ngf));
+ pml_F_cp = std::make_unique<MultiFab>(amrex::convert(cba,IntVect::TheUnitVector()), cdm, 3, ngf);
pml_F_cp->setVal(0.0);
}
- pml_j_cp[0].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getcurrent_cp(1,0).ixType().toIntVect() ), cdm, 1, ngb ) );
- pml_j_cp[1].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getcurrent_cp(1,1).ixType().toIntVect() ), cdm, 1, ngb ) );
- pml_j_cp[2].reset( new MultiFab( amrex::convert( cba,
- WarpX::GetInstance().getcurrent_cp(1,2).ixType().toIntVect() ), cdm, 1, ngb ) );
+ pml_j_cp[0] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getcurrent_cp(1,0).ixType().toIntVect() ), cdm, 1, ngb );
+ pml_j_cp[1] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getcurrent_cp(1,1).ixType().toIntVect() ), cdm, 1, ngb );
+ pml_j_cp[2] = std::make_unique<MultiFab>(amrex::convert( cba,
+ WarpX::GetInstance().getcurrent_cp(1,2).ixType().toIntVect() ), cdm, 1, ngb );
pml_j_cp[0]->setVal(0.0);
pml_j_cp[1]->setVal(0.0);
pml_j_cp[2]->setVal(0.0);
if (do_pml_in_domain){
- sigba_cp.reset(new MultiSigmaBox(cba, cdm, grid_cba_reduced, cgeom->CellSize(), ncell, delta));
+ sigba_cp = std::make_unique<MultiSigmaBox>(cba, cdm, grid_cba_reduced, cgeom->CellSize(), ncell, delta);
} else {
- sigba_cp.reset(new MultiSigmaBox(cba, cdm, grid_cba, cgeom->CellSize(), ncell, delta));
+ sigba_cp = std::make_unique<MultiSigmaBox>(cba, cdm, grid_cba, cgeom->CellSize(), ncell, delta);
}
#ifdef WARPX_USE_PSATD
@@ -617,8 +618,8 @@ PML::PML (const BoxArray& grid_ba, const DistributionMapping& /*grid_dm*/,
// const bool in_pml = true; // Tells spectral solver to use split-PML equations
realspace_cba.enclosedCells().grow(nge); // cell-centered + guard cells
- spectral_solver_cp.reset( new SpectralSolver( realspace_cba, cdm,
- nox_fft, noy_fft, noz_fft, do_nodal, v_galilean_zero, cdx, dt, in_pml ) );
+ spectral_solver_cp = std::make_unique<SpectralSolver>(realspace_cba, cdm,
+ nox_fft, noy_fft, noz_fft, do_nodal, v_galilean_zero, cdx, dt, in_pml );
#endif
}
}
t/new-integrations-demo Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/test-hosts.yml (unfollow)
AgeCommit message (Expand)AuthorFilesLines
2025-04-02[ci] formatGravatar Yury Michurin 2-97/+112
2025-04-02Allow to pass custom fetch for fetching pre-rendered errors (#13403)Gravatar Yury Michurin 11-514/+937
2025-04-02[ci] formatGravatar Marocco2 1-1/+1
2025-04-02feat: Add `eagerness` support for `prefetch()` (#13405)Gravatar Marocco2 2-2/+40
2025-04-02chore(deps): update tj-actions/changed-files action to v46.0.3 (#13497)Gravatar renovate[bot] 1-1/+1
2025-03-31[ci] release (#13513)astro@5.5.6@astrojs/vue@5.0.9@astrojs/svelte@7.0.9@astrojs/studio@0.1.6@astrojs/solid-js@5.0.7@astrojs/react@4.2.3@astrojs/preact@4.0.8@astrojs/netlify@6.2.5@astrojs/mdx@4.2.3@astrojs/markdoc@0.13.3@astrojs/db@0.14.10@astrojs/cloudflare@12.4.0@astrojs/alpinejs@0.4.5Gravatar Houston (Bot) 54-178/+238
2025-03-31fix: update `vite` to latest version (#13526)Gravatar Junseong Park 15-101/+118
2025-03-31[ci] formatGravatar Emanuele Stoppa 3-4/+2
2025-03-31fix(i18n): return value from `preferredLocale` (#13524)Gravatar Emanuele Stoppa 5-15/+51
2025-03-31chore(tailwind): delete integration (#13511)Gravatar Florian Lefebvre 16-1083/+1
2025-03-31fix(deps): update all non-major dependencies (#13521)Gravatar renovate[bot] 14-163/+163
2025-03-31[ci] formatGravatar Matt Kane 3-4/+3
2025-03-31feat(cloudflare): add KV session storage support (#13514)Gravatar Matt Kane 19-487/+490
2025-03-31fix(deps): update astro client runtimes (#13522)Gravatar renovate[bot] 4-6/+7
2025-03-27fix(deps): update astro dependencies (#13498)Gravatar renovate[bot] 47-412/+427
2025-03-27[ci] formatGravatar Emanuele Stoppa 3-8/+7
2025-03-27refactor(actions): use `Omit` to avoid leaking types to shared context (#13429)Gravatar Emanuele Stoppa 5-11/+41
2025-03-26[ci] release (#13504)astro@5.5.5@astrojs/vue@5.0.8@astrojs/tailwind@6.0.2@astrojs/svelte@7.0.8@astrojs/studio@0.1.5@astrojs/solid-js@5.0.6@astrojs/react@4.2.2@astrojs/preact@4.0.7@astrojs/netlify@6.2.4@astrojs/mdx@4.2.2@astrojs/markdoc@0.13.2@astrojs/db@0.14.9@astrojs/cloudflare@12.3.1@astrojs/alpinejs@0.4.4Gravatar Houston (Bot) 56-132/+197
2025-03-26[ci] formatGravatar Florian Lefebvre 2-2/+2
2025-03-26fix(astro): dynamically import actions (#13510)Gravatar Florian Lefebvre 12-51/+96
2025-03-26[ci] formatGravatar Matt Kane 2-2/+2
2025-03-26fix: cache raw cookie value and decode when getting (#13485)Gravatar Matt Kane 3-17/+37
2025-03-25fix: update vite (#13505)Gravatar Emanuele Stoppa 16-104/+123
2025-03-24[ci] formatGravatar Emanuele Stoppa 1-1/+1
2025-03-24fix(app): call renderer when routes don't match (#13483)Gravatar Emanuele Stoppa 4-1/+30
2025-03-21[ci] release (#13460)astro@5.5.4@astrojs/vercel@8.1.3@astrojs/tailwind@6.0.1@astrojs/svelte@7.0.7@astrojs/preact@4.0.6@astrojs/cloudflare@12.3.0Gravatar Houston (Bot) 45-118/+119
2025-03-21fix: better error handling on Stackblitz (#13484)Gravatar Matt Kane 2-0/+12
2025-03-21Repair server islands to work with client router (#13481)Gravatar Martin Trapp 2-6/+11
2025-03-21fix: generate correct external redirects (#13480)Gravatar Matt Kane 3-4/+21
2025-03-21fix(deps): update all non-major dependencies (#13440)Gravatar renovate[bot] 24-435/+436
2025-03-21[ci] formatGravatar Florian Lefebvre 2-2/+2
2025-03-21feat(cloudflare): global env (#13444)Gravatar Florian Lefebvre 6-47/+130
2025-03-21fix(deps): update astro client runtimes (#13474)Gravatar renovate[bot] 7-345/+348
2025-03-20Small change to linking style (#13472)Gravatar Chris Swithinbank 1-1/+1
2025-03-20Add deprecation notice to Tailwind integration README (#13471)Gravatar Chris Swithinbank 2-6/+11
2025-03-20[ci] formatGravatar Matt Kane 2-2/+1
2025-03-20fix(preact,svelte): empty target container before rendering `client:only` isl...Gravatar Matt Kane 5-5/+41
2025-03-20chore(renovate): group updates (#13466)Gravatar Emanuele Stoppa 1-11/+58
2025-03-19[ci] formatGravatar Matt Kane 1-3/+2
2025-03-19fix: don't attempt to move files after build with base (#13463)Gravatar Matt Kane 8-13/+66
2025-03-19[ci] formatGravatar Emanuele Stoppa 2-6/+18
2025-03-19fix(routing): don't add site to static redirects (#13447)Gravatar Emanuele Stoppa 7-10/+49
2025-03-18[ci] formatGravatar Matt Kane 2-2/+1
2025-03-18fix: set correct statusText for custom error pages (#13457)Gravatar Matt Kane 4-2/+19
2025-03-18chore(deps): update github-actions (#13459)Gravatar renovate[bot] 9-13/+13
2025-03-18chore(deps): update github-actions (#13458)Gravatar renovate[bot] 1-5/+5
2025-03-18[ci] formatGravatar Emanuele Stoppa 1-1/+3
2025-03-18chore: remove deprecated package (#13455)Gravatar Emanuele Stoppa 3-23/+16
2025-03-18fix(deps): update dependency miniflare to v4 (#13441)Gravatar renovate[bot] 2-31/+31