塔式太阳能热发电系统中,定日镜场的设计直接影响整个电站的光热转换效率。传统定日镜多采用矩形平面镜阵列,这种设计虽然加工简单,但存在两个固有缺陷:一是平面镜反射的太阳光在长距离传输后会产生显著发散;二是矩形镜片拼接时存在不可避免的间隙损失。针对这些问题,抛物聚焦型定日镜应运而生——通过将镜面设计为抛物面形状,可使反射光线精确聚焦到接收塔的特定位置。
在实际工程中,大型定日镜(通常边长10米以上)并非整体抛物面,而是由众多小镜片按照抛物面曲率排列组成。这种构造方式带来一个关键问题:当定日镜采用五边形、六边形等非矩形轮廓时,如何高效精确地计算每块小镜片的安装角度和位置?这正是本研究要解决的核心技术难题。
提示:抛物面定日镜的聚光原理类似于卫星天线,但需要考虑太阳运动的时变特性和镜面可制造性等工程约束。
传统光线追踪方法在计算定日镜场光学效率时存在两大瓶颈:一是CPU串行计算效率低下;二是单向追踪(仅从太阳到镜面)难以准确模拟实际光路。我们提出的BMCRT算法创新性地采用双向追踪策略:
太阳→镜面路径:根据Buie光锥模型生成太阳光线,考虑太阳视张角(约0.53°)带来的光线发散特性。每条光线携带的辐射功率为:
code复制P_ray = DNI * A_mirror / N_rays
其中DNI为直射辐射强度,A_mirror为镜面面积,N_rays为光线数量。
镜面→接收器路径:在镜面反射点处,根据抛物面法向量计算反射方向,并统计到达接收器的能量分布。关键计算公式为:
python复制def reflect_vector(in_vec, normal):
return in_vec - 2 * np.dot(in_vec, normal) * normal
GPU加速实现时,我们将每条光线的追踪过程映射为CUDA的一个线程,利用NVIDIA显卡的并行计算能力(实测采用RTX 3090显卡),实现了460万条光线追踪仅需5ms的惊人速度。
对于六边形等非矩形镜面,我们采用改进的Loop细分算法进行自适应离散化:
初始网格生成:以多边形顶点和中心点构成初始三角网格。例如六边形镜会生成6个初始三角形。
细分规则:
v_new = 0.5*(v1 + v2)v' = (1-n*β)v + βΣv_neighbor抛物面映射:将平面三角顶点投影到抛物面:
math复制z = (x^2 + y^2)/(4f)
f为抛物面焦距,根据接收塔高度和镜场布局确定。
通过3-4次细分迭代,单个六边形镜面可离散为1000+个三角面片,满足毫米级精度要求。图3展示了细分过程的可视化效果。
坐标系定义:
顶点坐标计算:
python复制def calc_vertex_position(radius, sides, iteration):
vertices = []
for i in range(sides):
angle = 2*pi*i/sides
x = radius * cos(angle)
y = radius * sin(angle)
vertices.append([x, y, 0])
# 应用Loop细分
for _ in range(iteration):
vertices = loop_subdivision(vertices)
return vertices
法向量计算:
每个三角面片的法向量通过叉积求得:
numpy复制normal = np.cross(v1-v0, v2-v0)
normal /= np.linalg.norm(normal)
GPU内存管理:
并行化策略:
精度控制方法:
cuda复制__device__ float atomicAddDouble(float* address, float val)
{
unsigned long long int* addr_as_ull = (unsigned long long int*)address;
unsigned long long int old = *addr_as_ull, assumed;
do {
assumed = old;
old = atomicCAS(addr_as_ull, assumed,
__float_as_ull(val + __ull_as_float(assumed)));
} while (assumed != old);
return __ull_as_float(old);
}
通过对比平面镜与抛物面镜的光斑分布(图7),我们发现:
| 镜面类型 | 光斑直径(m) | 截断效率(%) | 能流峰值(kW/m²) |
|---|---|---|---|
| 平面六边形 | 4.2 | 82.3 | 890 |
| 抛物六边形 | 2.7 | 91.8 | 1250 |
抛物面设计使能流密度峰值提升40%,同时减少约35%的光斑面积,这对降低接收器热损失具有重要意义。
与传统工具SolTrace的对比测试显示:
这一突破使得实时优化定日镜场布局成为可能,传统需要数小时的计算现在只需数秒即可完成。
镜面加工公差控制:
风荷载考量:
code复制L_max = 0.8 * √(E*I/(q*C_d))
E为弹性模量,I为截面惯性矩,q为风压,C_d为阻力系数清洗维护建议:
在宁夏某50MW光热电站的实际应用中,采用我们的六边形抛物面定日镜设计,年发电量提升7.2%,同时减少了15%的镜场用地面积。这个案例证明,非矩形定日镜在复杂地形条件下具有独特的布局优势。