|
|
代码输入前置,仅仅改变m,n的数值即可生成完美“欧拉砖 ” ,有幸遇见砖的体对角线是整数,哈哈,你赢麻啦!哈哈哈…祝你好运!
import math
from typing import Dict, Any
# ===================== 顶层自定义输入参数区(直接修改 m、n 即可一键重算) =====================
m = 2
n = 1
# ==========================================================================================
class EulerBrickGenerator:
"""
【嫦娥灵枢合组】欧拉砖参数化生成器(鲍方程母核构造版)
核心纲领:几何为本体,代数为末体
构造来源:基于自研P/Q锁死母式迭代生成三维欧拉砖整数族
输出结构:全部数据封装进self.result字典,支持打印、JSON导出、入库、批量遍历扫描
"""
def __init__(self, m: int, n: int):
# 入参强校验:必须正整数且 m > n
if not (isinstance(m, int) and isinstance(n, int) and m > n > 0):
raise ValueError(f"参数约束 m > n > 0 且均为正整数,当前输入 m={m}, n={n}")
self.m = m
self.n = n
# 1. 底层母式纯整数运算,全程无浮点中间变量,规避精度漂移
m2 = m * m
n2 = n * n
mn = m * n
P = 10 * m2 * n2 - 3 * m2 ** 2 - 3 * n2 ** 2
Q = m2 ** 2 - n2 ** 2
# 三维棱长生成式(自带绝对值保证正边长)
x = abs(2 * mn * P)
y = abs(8 * mn * Q)
z = abs((m2 - n2) * (m2 + 4 * mn + n2) * (m2 - 4 * mn + n2))
# 三组面对角平方和
sum_xy = x * x + y * y
sum_xz = x * x + z * z
sum_yz = y * y + z * z
sum_xyz = sum_xy + z * z
# 整数开方核验(math.isqrt仅返回整数部分,再二次平方回验是否完全平方数)
r1 = math.isqrt(sum_xy)
r2 = math.isqrt(sum_xz)
r3 = math.isqrt(sum_yz)
# 代数恒等式兜底断言:本构造必然三条面对角为整数,断言用于捕获极端异常逻辑bug
assert r1 * r1 == sum_xy, f"母式构造异常:xy面对角非完全平方,sum_xy={sum_xy}"
assert r2 * r2 == sum_xz, f"母式构造异常:xz面对角非完全平方,sum_xz={sum_xz}"
assert r3 * r3 == sum_yz, f"母式构造异常:yz面对角非完全平方,sum_yz={sum_yz}"
# 三边最大公约数,用于判断是否为本原解
common_gcd = math.gcd(x, math.gcd(y, z))
is_body_integer = (math.isqrt(sum_xyz) ** 2 == sum_xyz)
# 2. 结构化数据封装:全部结果收拢进self.result字典,便于对接外部数据管道
self.result: Dict[str, Any] = {
"params": (m, n),
"edges": (x, y, z),
"face_diagonals": (r1, r2, r3),
"body_diagonal_sq": sum_xyz,
"is_body_integer": is_body_integer,
"is_primitive": (common_gcd == 1),
"gcd": common_gcd
}
def show(self):
"""控制台格式化打印归档结果"""
res = self.result
x, y, z = res["edges"]
r1, r2, r3 = res["face_diagonals"]
body_sq = res["body_diagonal_sq"]
print("=" * 65)
print("【嫦娥灵枢 · 欧拉砖参数化生成归档输出】")
print("=" * 65)
print(f"生成母参数 : m = {res['params'][0]}, n = {res['params'][1]}")
print(f"本原属性标记 : {'✅ 本原欧拉砖' if res['is_primitive'] else f'❌ 派生倍数解 (整体公因子={res["gcd"]})'}")
print("-" * 65)
print(f"三维棱长 (x,y,z): ({x}, {y}, {z})")
print(f"xy平面面对角线 : {r1}")
print(f"xz平面面对角线 : {r2}")
print(f"yz平面面对角线 : {r3}")
print("-" * 65)
print(f"空间体对角线平方值 : {body_sq}")
if res["is_body_integer"]:
print(f"体对角线判定结果 : ✅ 整数闭合【命中完美长方体!重大发现】")
else:
print(f"体对角线判定结果 : ❌ 无理数(标准欧拉砖构型)≈ {math.sqrt(body_sq):.12f}")
print("=" * 65)
if __name__ == "__main__":
brick = EulerBrickGenerator(m, n)
brick.show() |
|