简介:面向能源动力领域的技术人员、科研人员及相关专业学生,基于 MATLAB 的超临界二氧化碳布雷顿简单循环计算程序,能替代繁琐的人工手算,帮助使用者快速完成热力状态参数求解与循环性能评估。压缩包内包含 2 个 m 文件,均为 MATLAB 功能脚本,整体体积仅 2KB,结构清晰,便于逐行阅读和按需调整算法。程序以热源、冷凝器、压缩机、透平四大关键设备参数为输入,利用超临界二氧化碳的物性关系,计算工质在等熵压缩、等压加热、等熵膨胀、等压冷却全过程中的压力、温度、比容变化,并输出循环热效率、压气机效率与透平效率等核心指标。已有 2442 人浏览学习,适合用于研究生课程设计、科研预研以及工程方案初步选型;通过修改输入参数即可快速对比不同工况下的系统性能,开展参数敏感性分析,为超临界二氧化碳布雷顿循环的设计优化提供可靠的数据支持。
1. 超临界二氧化碳布雷顿简单循环MATLAB计算程序:先搞清楚它算什么
在预研阶段做超临界二氧化碳布雷顿简单循环的热力计算,最容易翻车的不是公式,而是物性。CO2在临界点附近的密度、比热变化非常剧烈,手算查表要么取不到点,要么插值差得离谱。这套MATLAB计算程序把压缩机、加热器、透平、冷却器四个设备组成的闭式简单循环做成了一条可复算的计算链路,输入压缩机入口温度与压力、压比、透平入口温度等几个关键参数,就能输出四个状态点的热力参数以及循环效率、比功。它面向的是热力设计、课程设计和初步方案比较的场景:想快速评估某个温度压力组合的循环性能,或者验证一个新构型的效率趋势,都适用。适合刚接触sCO2动力循环的从业者和需要定量判断的工程师。
2. 简单循环的建模思路:四个设备、四个状态点如何映射到MATLAB程序中
2.1 循环构型先定性:简单循环为什么值得先算
sCO2布雷顿循环不是只有一种构型,回热、再压缩、部分冷却这些复杂构型都是在基础形式上叠加换热器和分流节点得来的。这套资源限制在“简单循环”,含义很明确:压缩机、加热器、透平、冷却器四个部件串联成闭式回路,工质按压缩、定压吸热、膨胀、定压冷却的顺序周而复始。没有回热器,也没有工质分流,数值模型在四部件模型里属于最容易收敛的一类。
四个状态点的编号是整套程序的约定基础。1点是压缩机入口,压力略高于临界压力,温度贴近临界温度,工质处于高密度超临界区;2点是压缩机出口,压力和温度同时升高,仍保持密相状态;3点是透平入口,也是加热器出口,温度全循环最高,压力近似等于2点压力;4点是透平出口,压力和温度都下降,但按简单循环设计其压力仍高于临界压力。所有输出报表围绕这四个点展开,程序里的中间变量也基本以这四组压力、温度、焓、熵为核心。
为什么先算简单循环?因为工程判断需要一条清晰基线。回热循环的效率提升幅度必须与简单循环对比才有意义,压缩机和透平的功量占比、冷却器热负荷量级也要在简单循环里先建立直观概念。把这四个状态点算准了,后面无论往哪个方向加复杂度,热力学骨架都不会歪。我刚接触这类程序时,习惯先把设备与状态点的对应关系写在纸上,再对照程序内部变量名逐一确认,这一步比直接运行结果更省后续排错时间。
2.2 包的内部文件分工:主脚本、物性函数与输出模块
压缩包解压后,文件组织通常遵循主脚本、物性函数、输出模块三层结构,不同版本的命名可能有差异。主脚本负责接收初始参数、调用计算函数、汇总结果;物性函数负责根据压力和温度返回密度、焓、熵等参数;输出模块把四个状态点和循环性能指标打印成表格,或者进一步绘制温熵图。这个分层逻辑能让后续修改只停留在主脚本层面,不必动底层物性接口。
拿到资源包的第一件事,是先找出物性数据加载部分。程序可能直接内置数据表,也可能通过一个类似CO2_props.m的函数在启动时构建表。常见做法是运行一次数据准备脚本,生成.mat或.csv文件供主程序读取。如果主脚本里没有加载语句,而是直接把物性矩阵写死在代码里,那就要留意矩阵的数值范围。
我一般会先看主脚本开头的参数区。输入参数集中堆放是这类程序的普遍习惯,看到结构体或者一组以p1、T1、pr、TIT命名的变量,基本可以确定是输入区。中间量多命名为h1、s1、h2s这类带数字后缀的变量,对应第几个状态点。输出量集中在循环效率、净功、加热量、冷却负荷等汇总变量上。理清这个命名规律后,复现时就不会被几十个变量名绕晕。
2.3 核心计算流程七步走:从输入参数到效率输出
主脚本的计算流程大致可以拆成七步。第一步,由压缩机入口温度和压力调用物性函数,得到1点焓、熵和密度;第二步,以熵s1不变为前提,按压缩机出口压力求等熵压缩终态焓h2s,再用压缩机等熵效率反推实际出口焓h2;第三步,根据h2与p2反查压缩机出口温度T2;第四步,由用户给定透平入口温度TIT,3点压力近似取p2;第五步,透平等熵膨胀到4点压力,用透平等熵效率求实际出口焓h4;第六步,计算加热量、透平功、压缩功与净功;第七步,输出循环效率和比功。
等熵反查是整个程序的数值核心。物性函数通常只提供由p、T求h、s的正向接口,而等熵过程需要由p、s反求h、T,所以程序内部必须做一轮迭代。二分法最常见,从室温到TIT附近作为温度区间,熵残差压到1e-6量级就能满足工程精度。也有程序用牛顿迭代,速度更快,但在临界区容易震荡。这个反查层写得好不好,直接决定程序在不同工况下是否都能收敛。
下面给一个与资源包逻辑等价的最小框架代码,方便理解主程序在做什么。实际包内函数名可能不同,但流程一脉相承。
%% sCO2 simple Brayton cycle, minimal skeleton p1 = 7.6e6; T1 = 305.15; % compressor inlet, Pa and K pr = 2.2; p2 = pr * p1; % pressure ratio TIT = 823.15; % turbine inlet temperature, K eta_comp = 0.85; eta_turb = 0.90; h1 = CO2_h(p1, T1); % enthalpy at state 1 s1 = CO2_s(p1, T1); % entropy at state 1 % isentropic compression to p2 h2s = CO2_h_at_s(p2, s1); h2 = h1 + (h2s - h1) / eta_comp; T2 = CO2_T(p2, h2); % invert temperature from p and h % turbine inlet, ignore pressure loss here h3 = CO2_h(p2, TIT); s3 = CO2_s(p2, TIT); % isentropic expansion to p1 h4s = CO2_h_at_s(p1, s3); h4 = h3 - eta_turb * (h3 - h4s); T4 = CO2_T(p1, h4); qin = h3 - h2; % heat input per unit mass w_comp = h2 - h1; % compressor work per unit mass w_turb = h3 - h4; % turbine work per unit mass w_net = w_turb - w_comp; % net work per unit mass eta_cycle = w_net / qin; % cycle thermal efficiency fprintf('T2=%.2f K T4=%.2f K w_net=%.2f kJ/kg eta=%.4f\n', ... T2, T4, w_net/1e3, eta_cycle);CO2_h、CO2_s、CO2_T、CO2_h_at_s在框架里是占位函数,对应资源包里的物性接口。逻辑说明中有一点最关键:h2s和h4s全部走定熵反查,熵的残差必须严格收敛,否则后续效率误差会被压缩机和透平效率放大。参数说明方面,压力统一用Pa,温度统一用K,框架里的eta_comp和eta_turb都是等熵效率,工程上通常在0.82到0.92之间。如果程序运行结果出现效率为负,优先查这个反查层是否收敛,而不是急着改输入参数。
2.4 传参约定与单位约定:复现时最值得先确认的两件事
程序内部的数据组织形式会影响你改参数的难度。有些版本把所有输入参数放到一个结构体里,比如params.p1、params.T1,主计算函数只接收这一个结构体,好处是参数扫描时可以直接生成工况矩阵。另一种常见做法是全局变量,传参方便但调试时容易互相覆盖。复现时建议先确认属于哪种约定,再决定怎么改批量工况。
单位约定是另一个高频雷区。同一个程序包内部可能混合使用Pa与MPa、K与℃,如果物性函数入口和主脚本的约定不一致,数值会成倍偏移。检查方法很直接:在主脚本参数区打印一次p1和T1的实际数值,确认传入物性函数前经过了哪些换算。我见过某版本在生成物性表时使用℃,主脚本却按K传参,最终TIT整体偏移几十度,效率曲线整体左移,看起来还像一条正常曲线。从那以后我养成了习惯:每次打开新程序包,先运行一个最小调用,输入一组已知p、T,核对物性输出是否落在合理量级,再开始正式计算。
3. 关键参数设置与物性计算:让程序跑出来的效率有物理意义
3.1 七个输入参数的量级与物理含义
程序能够正常运行只是第一步,参数给得合不合理决定输出数字有没有物理意义。简单循环里最敏感的七个输入参数集中在主脚本参数区,它们的典型范围如下表。
| 参数 | 典型范围 | 对计算结果的影响 |
|---|---|---|
| 压缩机入口压力p1 | 7.5~8.5 MPa | 决定入口是否处于高密度超临界区,直接影响压缩功 |
| 压缩机入口温度T1 | 305~310 K | 距临界点越近密度越高,但过近会导致物性插值波动 |
| 压力比pr | 1.8~3.0 | 决定压比功分配,存在最优区间 |
| 透平入口温度TIT | 723~1023 K | 效率提升最直接的杠杆,也是材料成本的核心约束 |
| 压缩机等熵效率 | 0.82~0.90 | 压缩功的放大因子,越低效率损失越大 |
| 透平等熵效率 | 0.85~0.92 | 直接影响透平做功,通常按机组技术成熟度取定值 |
| 冷却器出口温度 | 与T1合并或单独设置 | 冷却不足时整个循环会退化到气态布雷顿水平 |
压缩机入口状态是超临界循环区别于常规气体循环的根本。临界点位于7.38 MPa、304.13 K,入口温度和压力必须保证工质处在“类液态”区域,密度大、可压缩性小,压缩功才能被压下来。如果把T1设到320 K以上,密度下降明显,压缩功上升,循环效率会迅速走低。反过来,T1太接近临界点也不可取,物性表在临界点附近的剧烈变化会让插值精度变得不稳定。
压力比需要谨慎对待。sCO2工质的比热和密度随压力变化明显,压比过高时压缩机出口温度上升,加热器入口焓值抬高,单位质量工质从热源吸收的热量下降;压比过低时透平焓降不足,比功偏低。对简单循环而言,压比落在2.0~2.5之间往往是效率不错的区间。做参数扫描时可以在这个区间内加密步长,快速找到峰值。其余参数如等熵效率,没有实测数据时先取文献常见值,不要为了追求高效率把等熵效率设成0.98,那会让结果失去工程参考价值。
3.2 超临界CO2物性表:内置查表与外接物性接口的选择
物性计算是整份程序的“黑匣子”,也最需要使用者留心。严谨的工程计算应使用状态方程模型,但MATLAB课程设计类资源通常不自己实现复杂状态方程,而是预先建表、运行时插值。程序包里一般会有一个生成物性表的脚本,把压力从7 MPa到25 MPa、温度从300 K到1100 K的范围离散成网格,逐点计算出焓、熵、密度后存成矩阵。主程序运行时用双线性插值得到任意p、T处的值。
这样做的优点是计算速度快、结构简单,缺点是临界区附近的精度取决于网格密度。临界点附近比热出现尖峰,如果表离散步长太大,插值结果可能明显偏离真实值。常见做法是在压力7.3~8.0 MPa、温度304~310 K区域加密网格,压力步长收到0.01 MPa、温度步长收到0.1 K量级。如果资源包没有预留加密逻辑,可以自己在生成物性表的循环里加一段局部网格。这个修改不改变主程序逻辑,只是让表数据更密,运行时间增加也有限。
物性表是否存在覆盖范围的限制,也要提前确认。比如表只生成到900 K,把TIT设成950 K就会走到边界外推,结果不可信。我一般会运行一次数据准备脚本后查看数据矩阵的最大压力和最高温度,再决定扫描范围。另一个细节是物性数据参考点:焓、熵的绝对值依赖参考态的选择,不同程序包之间不可直接对比。判断循环是否合理时,只看焓差、功量、效率这些相对量,不要盯着焓值是负值就以为程序出了问题。
3.3 定熵反查和收敛判断:数值层最影响结果的地方
定熵反查的收敛品质直接决定结果可信度。程序先把等熵过程拆成两步:由入口熵和目标压力求等熵终态,再由等熵效率修正到实际终态。二分法实现简单、稳定性好,温度区间取300到1200 K,每次迭代用熵残差判断是否继续。CO2在超临界区熵随温度基本单调递增,二分法不会出现多解问题。
收敛容差需要与物性表精度匹配。如果物性表本身只保留四位有效数字,把熵残差压到1e-8反而会陷入无效迭代。常见做法是把残差控制在表精度的十分之一左右,既能保证效率计算前三到四位有效数字稳定,又不会让程序空转。若资源包提供了收敛系数参数,先用默认值跑一遍,再看命令行输出的最终残差是否达标。
迭代初值对二分法无所谓,对牛顿迭代却很敏感。压缩机出口反查的初值可以估为T1加上温升预估值,透平出口反查的初值可以取TIT的0.7倍。如果程序用的牛顿迭代出现临界区震荡,切换到二分法分支是最快的止血手段,结果不受影响,只是多几次迭代而已。这个数值层的坑很隐蔽,因为表面上看是“物性计算”,实际上是“迭代算法”,两者出问题的表现完全不同。
3.4 用临界点快速自检:一运行就知道物性表靠不靠谱
复现时我习惯先做一次临界点自检。在命令行调用物性函数,输入7.3773 MPa、304.13 K附近的一组压力温度,查看密度和比热是否出现合理的大数值。如果密度输出在几十kg/m³量级,说明物性表参考态或单位约定有问题;如果比热输出与文献值相差数倍,说明临界区网格太稀。
自检通过后再跑默认工况。资源包如果附带了参考输出,直接对比效率与状态点温度,是验证物性表最省力的方式。没有参考值时,用能量守恒做粗校验:加热量减去净功应等于冷却器散热量,闭合差超过百分之几就要回头查。临界点自检这个习惯能拦截掉大部分物性层面的错误,这些错误在正常工况下往往藏得很深,表面输出看起来完全正常。
4. 手把手复现与验证:把下载的程序跑出可信的效率数字
4.1 环境准备:路径、工具箱与运行顺序
把压缩包解压到纯英文路径下,是最容易忽略却最重要的准备工作。MATLAB在中文或带空格的长路径下读取.mat或.csv物性文件时,偶发编码和路径分隔符兼容问题,程序本身没错,却报找不到文件。运行时建议把主脚本所在目录设为当前工作目录,再执行addpath(genpath('sCO2_SimpleCycle'))把子目录一并加载。
工具箱方面,绝大多数情况下不需要额外许可证,基础MATLAB环境即可运行。若包内使用了fit或interp2这类基础函数,它们都包含在标准环境中。如果用到cftool或优化工具箱特性,README里通常会注明,运行前扫一眼即可。
运行顺序上,先运行物性数据准备脚本,再运行主计算脚本,最后运行绘图脚本。不要跳过第一步,否则主程序会报变量未定义。如果不确定哪些脚本属于准备阶段,看文件名里带build、gen、data字样的优先。主脚本文件名一般包含main、run、cycle等关键词。第一次运行不要改任何参数,用包内默认参数跑通一遍,确认环境无误后再进入工况修改阶段。
4.2 第一次运行后先看状态点表,再信效率数字
程序输出通常分两部分:状态点表和循环性能指标。状态点表按四个状态点列出温度、压力、焓、熵,先按循环逻辑做快速自检。2点温度应高于1点,3点是全循环最高温,4点温度低于3点但高于冷却器出口设定。压力关系中2点等于3点,4点等于1点。任何一点违背这个顺序,大概率是单位或物性范围问题。
下面是一组典型工况下输出量级的示意,帮助理解结果长什么样。精确值依赖包内物性表参考点,这里看的是温度、压力与功量的相对关系。
| 状态点 | 压力(MPa) | 温度(K) | 说明 |
|---|---|---|---|
| 1 压缩机入口 | 7.6 | 305 | 超临界密相区 |
| 2 压缩机出口 | 16.7 | 约365 | 压缩后升温 |
| 3 透平入口 | 16.7 | TIT设定值 | 循环最高温 |
| 4 透平出口 | 7.6 | 约650 | 膨胀后降温降压 |
焓与熵的绝对数值不要跨程序对比,因为参考态可能不同。只看差值:压缩功对应h2减h1,透平功对应h3减h4,加热量对应h3减h2。程序如果输出密度,也可以辅助判断:1点密度应在数百kg/m³量级,如果低于300 kg/m³,入口可能偏离超临界设计区。循环效率通常在20%~35%范围内波动,具体数值随TIT和压比变化。若效率超出这个区间太多,先不要高兴,回头检查输入条件更稳妥。
4.3 用能量守恒和参考值做双重对拍
验证程序可信度有两个方向。第一个是能量守恒闭合校验:加热量减去净功应等于冷却器散热量。程序若输出了冷却器热负荷,直接对比;没有输出时,用Qout = qin - w_net自行计算,闭合差在1%以内说明数值链路正常。第二个是对拍外部参考值,选择一组与文献案例接近的工况,比如压缩机入口7.5 MPa、305 K,压比2.0,TIT 823 K,将程序输出与手册或专业物性查询结果对比,效率误差应在1到2个百分点以内。
对拍遇到偏差时,优先检查程序是否隐式加入了回热器或压损模型。有些版本虽然在界面文字上写着简单循环,内部却预置了换热器端差修正。检查方法是在主脚本里搜索recuperator、effectiveness等关键词,找到后把相关参数设为0。另一点是压缩机入口温度是否被程序强制关联到冷却器出口温度,若存在二次修正,实际循环可能与用户设定不一致。
包内若自带示例输出,直接对比效率与温度是最高效的验证方式。我会先在参数区恢复默认值,记录输出,再改成文档列出的算例值对比。这条链路跑通后,再做参数扫描才有底气。对拍验证不是可选项,尤其是你要拿程序结果支撑报告结论的时候。
4.4 MATLAB命令行里值得关注的运行日志
资源包有时会在命令行打印中间量,这些信息对排查很有用。看到T2和T4的数值时,与状态点表对照,确认打印值与最终输出一致。若发现命令行显示的温度和表格温度不同,多半是打印位置用了不同的单位,或者循环里有第二套计算路径被误触发。
迭代消耗信息同样值得看。程序若输出每次工况的迭代次数,可以观察到临界区附近迭代次数是否突然上升。正常情况下一个工况点应在几十次迭代内收敛,如果某个工况迭代次数成倍增长,物性表在该区域的离散质量可能不足。运行时间异常拉长时,优先怀疑反查迭代初值设置,而不是机器性能。
命令行出现的警告信息不要忽略。MATLAB对矩阵越界、缺失值、复数结果都会给出提示,很多程序在临界区生成复数后没有立即报错,而是带着复数继续算到效率层。看到任何与NaN、复数相关的警告,先回到物性自检步骤排查,避免拿着错误结果做后续分析。
5. 避坑排查:sCO2简单循环程序最常见的五个翻车现场
这一章直接列出简单循环程序运行中最常见的五个问题,每个都按“现象→原因→解决”展开。遇到程序跑出怪结果时,按这个清单逐条对照,能覆盖大部分翻车场景。
5.1 报错NaN或复数:临界区物性插值失真
现象:程序能启动,但状态点2或4的输出变成NaN,某些焓熵值是复数,效率显示为NaN。原因:物性表在临界压力与临界温度附近的网格太稀,插值矩阵在临界区产生奇异值,或者反查迭代在临界区找不到一致解。解决:把物性生成脚本中7.3~8.0 MPa、304~310 K的网格加密,压力步长改为0.02 MPa、温度步长改为0.1 K,重新生成表格后再运行。如果程序启动时不重建物性表,需要手动修改生成脚本的重建开关。还有一种路径是直接缩小工况范围,把T1设到308 K以上,避开临界点最陡区域,但治标不治本。
5.2 效率反常高于常规水平:冷却器出口条件不合理
现象:循环效率超过45%,明显高于简单循环的合理水平,甚至逼近卡诺效率。原因:冷却器出口温度设得太低,压缩机入口落在两相区或近临界密度虚高区,压缩功被人为压低。解决:把T1限制在临界温度以上至少2~3 K,并检查程序是否设置了独立的冷却器出口温度参数,确认它与压缩机入口温度一致。快速判断方法是看1点密度,入口密度超过800 kg/m³往往意味着状态点已经进入过冷液区域,这时候的“高效率”是虚的。
5.3 压比扫描中途卡死:反查迭代初值与容差不匹配
现象:跑压比扫描时前几个工况正常,压力比升高到某个值后计算卡住,久久不出结果。原因:高压力比下压缩机出口温度预估偏低,牛顿迭代在临界区附近震荡,程序迭代上限不够,跳出循环并输出错误值。解决:先把反查方法强制设为二分法,再把迭代上限从几十提高到200。修改后重新扫描观察是否恢复收敛,若仍然卡顿,说明物性表压力上限不足,需要扩展数据范围。压力比扫描是参数化分析里最容易触发这个问题的场景。
5.4 输出温度与设定值偏差几十度:单位混用
现象:TIT设定为823 K,程序记录3点温度却变成723 K,效率曲线整体左移。原因:物性函数内部用摄氏度,主脚本用开尔文传参,或者生成物性表时K与℃混用。解决:在物性函数入口处统一做一次单位转换,并在命令行打印转换后的实际温度与设定值对比。横向扫参时尤其要小心,因为偏移量是加性常数,在不同TIT档位下相对误差看起来不一致,最容易骗过眼睛。单位问题不像报错那样显眼,往往要等对拍参考值时才暴露。
5.5 冷却器热负荷闭合差偏大:压损缺失
现象:用Qout = Qin - W校验,闭合差超过5%。原因:简单循环程序默认忽略管道压损,但加热器和冷却器的流动阻力在高压CO2下不可忽略,尤其压比只有1.8左右时,压损对循环的影响占比明显升高。解决:在输入参数区增加压损比例项,加热器压损按2%入口压力、冷却器压损按1.5%入口压力修正,计算3点压力时用p2乘以修正系数。若资源包不支持这项设置,在主脚本里加一行修正再重跑对拍数据,闭合差通常会降到1%以内。
6. 进阶用法:参数扫描与简单循环效率寻优
6.1 一维扫描先看趋势,效率随TIT近线性上升
保持压比和效率参数不变,把TIT从723 K按25 K步长扫到1023 K,效率通常呈现近线性上升趋势。这个趋势比具体效率值更有工程价值,可以用来判断高温化投入是否划算。扫描代码只需在主脚本外加一层for循环,每次循环记录效率,最后绘制曲线。
TIT_list = 723:25:1023; eta_list = zeros(size(TIT_list)); for i = 1:length(TIT_list) eta_list(i) = run_cycle(p1, T1, pr, TIT_list(i)); end plot(TIT_list, eta_list * 100); xlabel('TIT (K)'); ylabel('Cycle efficiency (%)');这段代码里的run_cycle对应包内主计算函数,不同版本名称可能不同。逻辑说明:每轮循环共用p1、T1和压比,只变化TIT,隔离出单一变量的影响。参数说明:TIT从723 K起步是因为材料耐温通常不低于450℃,上限取1023 K是考虑常规金属材料的应用边界。曲线斜率如果在高段变平,说明继续提升温度的效率收益递减。
6.2 二维嵌套扫描找最优压比
把压比从1.6以0.05间隔扫到3.0,效率曲线通常出现单峰。固定TIT后找到的峰值压比,只适用于该温度。要得到更可靠的结论,把TIT扫描和压比扫描嵌套起来形成二维网格,用max函数定位全局最优工况。MATLAB里用两个for循环即可,运行时间主要由物性反查次数决定,先跑粗网格再在峰值附近加密,是最省时间的做法。
6.3 工程边界判断:效率不是唯一目标
参数寻优很容易让人只盯效率峰值而忽略运行边界。高TIT需要耐高温合金,高压比需要更厚的管壁和更贵的压缩机,冷却器热负荷又随温差变化。建议输出效率峰值的同时,把透平出口温度和冷却器热负荷同步打印出来。对于初步预研,效率提升1.5个百分点但设备材料成本翻倍往往不是好选择,这个判断程序不会替你完成。
我自己跑这类程序时养成了一个习惯:不管改哪个参数,都先从状态点1开始检查,确认它落在超临界区内,再看收敛残差,最后才信效率数字。从那以后,我用这个程序做参数扫描再没有出现过整条曲线失效的情况。希望帮到你。
本文还有配套的精品资源,点击获取