发明内容
本发明的目的是提供一种热渗耦合作用下地源热泵地埋管温度场数值模拟方法,本发明能够方便地取得大规模管群周围土壤温度分布随渗流变化情况,有效缩短运算时间,并扩大计算管群的规模。
为解决上述技术问题,本发明的技术方案如下:
一种热渗耦合作用下地源热泵地埋管温度场数值模拟方法,其特征在于包括以下步骤:
步骤1:输入模型条件及岩土热物性数据作为算法的初始参数;
步骤2:初始化管群模型及土壤的相关参数,包括:步骤1中所提到各项参数;
步骤3:初始化循环指针τ=1,△τ=r,r为时间τ的变化步长,系统运行时间τ的变化范围为1~t,t为设定的系统运行截止时间;
步骤4:判断τ≤t,如果是,则转入步骤5;如果否,则转入步骤8;
步骤5:调用热流量子程序,计算得到热流场的分布情况;
步骤6:调用温度迭代子程序,计算得到温度场的分布情况;
步骤7:改变运行时间τ,执行τ=τ+r,回到步骤4,进入下一个子循环;
步骤8:输出温度场计算数值结果,进而获取设定渗流速度和土壤参数情况下土壤各处温度值。
其中条件及岩土热物性数据包括管群排列方式、管群数量、管群边界条件设置、土壤初始温度为t0、土壤导热系数为λ、土壤比热容为c、土壤比热容为cw、土壤密度为ρ、恒定热流值为q、土壤含水率ω和地下水渗流速度u。
子程序热流量子程序的步骤如下:
步骤A:热流场初始化,各个网格节点处初始赋值为零;
步骤B:初始化循环指针i=1,i的变化步长为1;
步骤C:初始化循环指针j=1,j的变化步长为1;
步骤D:判断j≤N,,如果是,则转入步骤E;如果否,则转入步骤G,N值表示纵向网格数,由热流场初始化时得到;
步骤E:通过计算模型计算判断该点是否为埋管节点,如果是,则转入步骤F;如果否,则执行j=j+1,转入步骤D;
步骤F:记录节点赋值,执行j=j+1,转入步骤D;
步骤G:执行i=i+1;
步骤H:判断i≤M,,如果是,则转入步骤I;如果否,则转入步骤C,M值表示横向网格数,由热流场初始化时得到;
步骤I:将热流场数据传递返还给组程序。
子程序温度迭代子程序的步骤如下:
步骤a:温度场初始化,各个网格节点处初始赋值为初始地温t0;
步骤b:初始化循环指针i=1,i的变化步长为1;
步骤c:判断i≤M,,如果是,则转入步骤4;如果否,则转入步骤h,M值表示横向网格数,由温度场初始化时得到;
步骤d:初始化循环指针j=1,j的变化步长为1;
步骤e:判断j≤N,,如果是,则转入步骤f;如果否,则执行i=i+1,转入步骤c,N值表示纵向网格数,由温度场初始化时得到;
步骤f:通过计算模型计算该点处温度值,模型计算可通过下式得到:
步骤 g:记录(τ+r/2)时刻温度场数据,然后执行j=j+1,转入步骤e;
步骤h:初始化循环指针j=1,j的变化步长为1;
步骤i:判断j≤N,,如果是,则转入步骤j;如果否,则转入步骤n,N值表示纵向网格数,由温度场初始化时得到;
步骤j:初始化循环指针i=1,i的变化步长为1;
步骤k:判断i≤M,,如果是,则转入步骤l;如果否,则执行j=j+1,转入步骤i,M值表示横向网格数,由温度场初始化时得到;
步骤l:通过计算模型计算该点处温度值,然后执行i=i+1,转入步骤j;模型计算可通过下式得到:
步骤m:记录(τ+r)时刻温度场数据,然后执行i=i+1,转入步骤k;
步骤n:将温度场数据传递返还给主程序。
本发明提出一种热渗耦合作用下地源热泵地埋管温度场数值模拟方法,其程序主要包括三部分:主运行程序、热流场计算子程序和温度迭代计算子程序。
运行主程序,输入模型条件及岩土热物性数据,包括:管群排列方式,管群数量,管群边界条件设置,土壤初始温度为t
0,土壤导热系数为λ,土壤比热容为c,土壤比热容为c
w,土壤密度为ρ,恒定热流值为q,土壤含水率w,地下水渗流速度u,系统运行时间等作为算法的初始参数;初始化程序中生成的管群模型、热流场及温度场;设定程序迭代的时间步长,并初始化循环指针;先调用热流场子程序,通过计算模型计算判断该点是否为埋管节点,若是,则将热流参数赋值于该节点,若否,则将零赋值于该点,得到热流场分布情况,并返回主程序;将热流场与前一迭代时刻得到温度场进行叠加;接着,调用温度迭代子程序,运用式(1)进行横向网格隐式迭代,计算(τ+r/2)时刻温度场数据
(1)
运用式(2)进行纵向网格隐式迭代,计算(τ+r)时刻温度场数据
得到温度场的分布情况,并返回主程序;运行至预定结束时刻输出温度场计算数值结果,进而获取设定渗流速度和土壤参数情况下土壤各处温度值。
本发明的优点如下。
(1)提出了一种新的算法对渗流影响下土壤温度场的计算速度快。渗流影响下温度场计算双向隐式算法如下:
横向迭代计算:
纵向迭代计算:
可见,土壤温度场的确定需要确定迭代时间步长r;本发明采用隐式计算方法,所得结果对时间步长r的取值变化影响不敏感。先给定纵向网格变量j,改变横向网格变量i在各自的范围内进行遍历,每一组值计算出(τ+r/2)时刻对应的温度值;而后给定横向网格变量i,改变纵向网格变量j在各自的范围内进行遍历,每一组值计算出(τ+r)时刻对应的温度值。
(2)这一确定方法对热渗耦合作用下地源热泵地埋管温度场数值模拟方法提供了一种新的算法,将土壤与地下水换热量视为内部换热,简化热源项,可以在短时间内快速的计算出渗流影响下的土壤温度场,为地源热泵地埋管的设计及研究提供了一定的参考依据。
具体实施方式
一种热渗耦合作用下地源热泵地埋管温度场数值模拟方法。
主程序运行:
步骤1:输入模型条件及岩土热物性数据,包括:管群排列方式,管群数量,管群边界条件设置,土壤初始温度为t0,土壤导热系数为λ,土壤比热容为c,土壤比热容为cw,土壤密度为ρ,恒定热流值为q,土壤含水率ω,地下水渗流速度u作为算法的初始参数;
步骤2:初始化管群模型及土壤的相关参数,包括:步骤1中所提到各项参数;
步骤3:初始化循环指针τ=1,△τ=r,r为时间τ的变化步长,系统运行时间τ的变化范围为1~t,t为设定的系统运行截止时间;
步骤4:判断τ≤t,如果是,则转入步骤5;如果否,则转入步骤8;
步骤5:调用热流量子程序,计算得到热流场的分布情况;
步骤6:调用温度迭代子程序,计算得到温度场的分布情况;
步骤7:改变运行时间τ,执行τ=τ+r,回到步骤4,进入下一个子循环;
步骤8:输出温度场计算数值结果,进而获取设定渗流速度和土壤参数情况下土壤各处温度值。
热流子程序调用运行:
步骤1:热流场初始化,各个网格节点处初始赋值为零;
步骤2:初始化循环指针i=1,i的变化步长为1;
步骤3:初始化循环指针j=1,j的变化步长为1;
步骤4:判断j≤N,,如果是,则转入步骤5;如果否,则转入步骤7,N值表示纵向网格数,由热流场初始化时得到;
步骤5:通过计算模型计算判断该点是否为埋管节点,如果是,则转入步骤6;如果否,则执行j=j+1,转入步骤4;
步骤6:记录节点赋值,执行j=j+1,转入步骤4;
步骤7:执行i=i+1;
步骤8:判断i≤M,,如果是,则转入步骤9;如果否,则转入步骤3,M值表示横向网格数,由热流场初始化时得到;
步骤9:将热流场数据传递返还给组程序。
温度迭代子程序调用运行:
步骤1:温度场初始化,各个网格节点处初始赋值为初始地温t0;
步骤2:初始化循环指针i=1,i的变化步长为1;
步骤3:判断i≤M,,如果是,则转入步骤4;如果否,则转入步骤8,M值表示横向网格数,由温度场初始化时得到;
步骤4:初始化循环指针j=1,j的变化步长为1;
步骤5:判断j≤N,,如果是,则转入步骤6;如果否,则执行i=i+1,转入步骤3,N值表示纵向网格数,由温度场初始化时得到;
步骤6:通过计算模型计算该点处温度值,模型计算可通过下式得到:
步骤 7:记录(τ+r/2)时刻温度场数据,然后执行j=j+1,转入步骤5;
步骤8:初始化循环指针j=1,j的变化步长为1;
步骤9:判断j≤N,,如果是,则转入步骤10;如果否,则转入步骤14,N值表示纵向网格数,由温度场初始化时得到;
步骤10:初始化循环指针i=1,i的变化步长为1;
步骤11:判断i≤M,,如果是,则转入步骤12;如果否,则执行j=j+1,转入步骤9,M值表示横向网格数,由温度场初始化时得到;
步骤12:通过计算模型计算该点处温度值,然后执行i=i+1,转入步骤10;模型计算可通过下式得到:
步骤13:记录(τ+r)时刻温度场数据,然后执行i=i+1,转入步骤11;
步骤14:将温度场数据传递返还给主程序。