Commit bbe8fba
* FWPH: forward linearize_* so the can't-linearize warning fires (#274)
The vanilla fwph_hub / fwph_spoke factories did not forward
cfg.linearize_proximal_terms or cfg.linearize_binary_proximal_terms
into the options dict handed to FWPH. _options_checks_fw therefore
never saw the flag, so the user got no warning when they combined
--linearize-proximal-terms with --fwph. With an LP-only solver
(e.g. glpk), optimization then silently proceeded and ultimately failed
in the QP solve.
- cfg_vanilla.fwph_hub and cfg_vanilla.fwph_spoke: explicitly set
options["linearize_proximal_terms"] and
options["linearize_binary_proximal_terms"] after the _fwph_options
merge, mirroring the existing pattern in ph_hub.
- opt/fwph.py _options_checks_fw: gate the two warning prints on
self.cylinder_rank == 0 so HPC runs don't emit N copies of the same
message.
Fixes #274
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* test: cover FWPH linearize_* forwarding and warning paths
Adds two test classes to test_config.py:
- TestFWPHLinearizeForwarding asserts cfg_vanilla.fwph_hub and
cfg_vanilla.fwph_spoke copy cfg.linearize_proximal_terms and
cfg.linearize_binary_proximal_terms into the options dict (the
forwarding lines added in this PR).
- TestFWPHOptionsChecksWarnings drives FWPH._options_checks_fw with a
stub and verifies the rank-0 warning prints fire (and stay silent
on non-zero ranks) and that the offending flags are cleared.
Covers the patch lines codecov flagged on PR 710.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 90c3bec commit bbe8fba
3 files changed
Lines changed: 127 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
931 | 931 | | |
932 | 932 | | |
933 | 933 | | |
934 | | - | |
935 | | - | |
| 934 | + | |
| 935 | + | |
| 936 | + | |
936 | 937 | | |
937 | 938 | | |
938 | 939 | | |
939 | 940 | | |
940 | 941 | | |
941 | 942 | | |
942 | | - | |
943 | | - | |
| 943 | + | |
| 944 | + | |
| 945 | + | |
944 | 946 | | |
945 | 947 | | |
946 | 948 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
548 | 548 | | |
549 | 549 | | |
550 | 550 | | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
| 554 | + | |
| 555 | + | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
| 561 | + | |
| 562 | + | |
| 563 | + | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
| 571 | + | |
| 572 | + | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| 578 | + | |
| 579 | + | |
| 580 | + | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
| 605 | + | |
| 606 | + | |
| 607 | + | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
| 658 | + | |
551 | 659 | | |
552 | 660 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
409 | 409 | | |
410 | 410 | | |
411 | 411 | | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
412 | 420 | | |
413 | 421 | | |
414 | 422 | | |
| |||
773 | 781 | | |
774 | 782 | | |
775 | 783 | | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
776 | 789 | | |
777 | 790 | | |
778 | 791 | | |
| |||
0 commit comments