Skip to content

Commit a3d9afa

Browse files
Fix the call to HandOverBoundaryGeometry for nestor call in axisymmetric
case
1 parent 3f1fcaf commit a3d9afa

1 file changed

Lines changed: 10 additions & 6 deletions

File tree

src/vmecpp/cpp/vmecpp/vmec/ideal_mhd_model/ideal_mhd_model.cc

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,21 @@ void HandOverBoundaryGeometry(vmecpp::HandoverStorage& m_h,
4242
const int idx_mn = m * ntorp1 + n;
4343
const int idx_nm = n * sizes.mpol + m;
4444
m_h.rCC_LCFS[idx_nm] = physical_x.rmncc[offset + idx_mn];
45-
m_h.rSS_LCFS[idx_nm] = physical_x.rmnss[offset + idx_mn];
4645
m_h.zSC_LCFS[idx_nm] = physical_x.zmnsc[offset + idx_mn];
47-
m_h.zCS_LCFS[idx_nm] = physical_x.zmncs[offset + idx_mn];
46+
47+
if (sizes.lthreed) {
48+
m_h.rSS_LCFS[idx_nm] = physical_x.rmnss[offset + idx_mn];
49+
m_h.zCS_LCFS[idx_nm] = physical_x.zmncs[offset + idx_mn];
50+
}
4851

4952
if (sizes.lasym) {
5053
m_h.rSC_LCFS[idx_nm] = physical_x.rmnsc[offset + idx_mn];
51-
m_h.rCS_LCFS[idx_nm] = physical_x.rmncs[offset + idx_mn];
5254
m_h.zCC_LCFS[idx_nm] = physical_x.zmncc[offset + idx_mn];
53-
m_h.zSS_LCFS[idx_nm] = physical_x.zmnss[offset + idx_mn];
55+
56+
if (sizes.lthreed) {
57+
m_h.rCS_LCFS[idx_nm] = physical_x.rmncs[offset + idx_mn];
58+
m_h.zSS_LCFS[idx_nm] = physical_x.zmnss[offset + idx_mn];
59+
}
5460
}
5561
}
5662
}
@@ -964,8 +970,6 @@ absl::StatusOr<bool> IdealMhdModel::update(
964970
if (r_.nsMaxF1 == m_fc_.ns) {
965971
// can only get this from thread that has the LCFS !!!
966972

967-
// TODO(jons): respect lthreed in case of a free-boundary axisymmetric
968-
// run
969973
HandOverBoundaryGeometry(
970974
m_h_, m_physical_x, s_,
971975
/*offset=*/(r_.nsMaxF1 - 1 - r_.nsMinF1) * s_.mnsize);

0 commit comments

Comments
 (0)