· 계수표(T·L·E·q0·e·f·V1·V2·t) 칸을 기호로 읽어 불도저 식(8-2-1 · dozer_hourly_output) 그대로 Q1 47.92 ㎥/hr · Q = Q1 ÷ T 0.2 = 239.60 ㎡/hr · 기종은 q0 3.2 · V1 40 · V2 46(1단)로 8-2-1 표에서 되짚음 → 무한궤도 19ton([주]① 과 맞음) · D 줄 1/Q hr/㎡ · 원문 대 실무 어긋남 기록 — 영월 호표 Q=576.95 는 E 자리에 e(0.96)를 넣은 값으로 정확히 역산됨 · 다른 실무엔 이 호표 없음 → 원문이 또렷해 원문 E=0.4 로 셈(공종 사유 한 줄) 새 제목 B·D 618원/㎡ · 바뀐 제목 0 · 프로젝트 내역 표토제거 9,954.32㎡ 가 금액으로 섬(+6,151,768) · 잴 시험 둘 빨강→초록 · 끄기 셋 빨강 · 전체 시험 1703 + 364 통과 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BW6Jdsh18WPtYUR6THZJqn
45 lines
2.1 KiB
Python
45 lines
2.1 KiB
Python
"""표토제거 답외구간 9-15-2 — 2026-09-14 브레인 ㉰ 첫째(B08 준비공 표토제거 줄이 부르는 코드).
|
||
|
||
원문 L5288: T 0.2m · L 20m · E 0.4 · q0 3.2㎥ · e 0.96 · f 1/1.3 · V1 40m/분(1단) · V2 46m/분(1단) · t 0.25분
|
||
[주]① 무한궤도 불도저(19ton) ② q = 3.2 × e · ㎝ = L/V1 + L/V2 + 0.25 · Q1 = 60 × q × f × E / ㎝ ㎥/시간 · Q = Q1/T ㎡/시간
|
||
③ 건설품셈 8-2-1 불도저 참조 → 불도저 식(`dozer_hourly_output`)을 그대로 쓰고 T 로 나눔
|
||
⚠ 실무 영월 「표토제거 답외구간」 호표 Q=576.95 는 **E 자리에 e(0.96)를 넣은 값**으로 정확히 역산됨
|
||
(60 × 3.07 × 0.77 × 0.96 ÷ (1.18 × 0.2) = 576.95) · 다른 실무(봉화·대흥·소광·거창)엔 이 호표 없음 →
|
||
그 현장 실수 · 원문이 또렷하므로 원문 E=0.4 로 셈(2026-09-15 브레인 규칙 · 어긋남 기록)
|
||
"""
|
||
|
||
from __future__ import annotations
|
||
|
||
from decimal import Decimal
|
||
|
||
from B09_Estimation.B09_Estimation_UnitPrice import cached_build
|
||
|
||
|
||
def test_표토제거_답외구간_일위대가가_불도저_19톤_1_Q_로_섬() -> None:
|
||
from B09_Estimation.B09_Estimation_TopsoilRemoval import topsoil_output
|
||
|
||
q1, q = topsoil_output()
|
||
assert q1 == Decimal("47.92") and q == Decimal("239.60"), (q1, q)
|
||
book = cached_build().book
|
||
title = book.titles["B-FP-09-15-02"]
|
||
assert title.unit == "㎡"
|
||
rows = [
|
||
r for d in book.details["B-FP-09-15-02"] for r in [d, *book.details.get(d.ref_code, [])]
|
||
]
|
||
dozer = next(r for r in rows if r.ref_code == "X-0101-0019")
|
||
assert dozer.quantity == Decimal(1) / q and dozer.output == q, dozer
|
||
|
||
|
||
def test_식_줄에_T_로_나눈_것과_실무_어긋남이_적힘() -> None:
|
||
book = cached_build().book
|
||
notes = " ".join(
|
||
r.note
|
||
for d in book.details["B-FP-09-15-02"]
|
||
for r in [d, *book.details.get(d.ref_code, [])]
|
||
)
|
||
assert "T" in notes and "9-15-2" in notes, notes
|
||
from B09_Estimation.B09_Estimation_KnownGaps import known_gap_note
|
||
|
||
note = known_gap_note("FP-09-15-02")
|
||
assert "576.95" in note and "0.96" in note and "E=0.4" in note, note
|