Skip to content

Wall-velocity BC members (bc_*%vb1-3/ve1-3) never broadcast in pre_process and post_process #1560

@sbryngelson

Description

@sbryngelson

Symptom: moving-wall slip/no-slip BCs produce wrong ghost states on ranks != 0 in multi-rank pre_process and post_process runs (simulation is unaffected).

Mechanism: s_slip_wall/s_no_slip_wall in src/common/m_boundary_common.fpp consume bc_x/y/z%vb1..vb3/ve1..ve3 on all ranks; they are reached from pre_process (m_perturbation.fpp:97, m_data_output.fpp:421) and post_process (m_start_up.fpp:162). The simulation proxy broadcasts all 18 members (src/simulation/m_mpi_proxy.fpp:130-132); the pre and post proxies broadcast none of them.

Introduced: the members and the sim broadcast arrived benignly in #279; the defect was created when non-sim targets began consuming them — pre via #805 (e3572d174, 2025-03-09) and post via #831 (8e94d0a5f, 2025-06-13), both @wilfonba. Tagging @wilfonba for context.

Fix: #1553 adds the 18-member broadcast loops to both proxies, with a pinning test so a merge conflict cannot silently drop them again.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions