《化工过程分析与综合》复习题及习题期末试卷仅供学习交流,勿用于商业流股断裂方法一:L-R分解法L–R分解法遵循的原则:断裂流股数目最少,且将所有循环路打开。例:现有一个为最大循环网的不可分割子系统,其信息流图如下:14253S4S3S2S1S6S5S7S8(4)流股断裂方法分析:在这个信息流程图中有8个流股:S1,S2,…,S8。五个节点:1,2,3,4,5。构成了A,B,C,D四个环路。14253S4S3S2S1S6S5S7S8ADCB在Lee–Rudd法中,首先分析信息流图,再用环路矩阵表示出来.ABCD环路S1S2S3S4S5S6S7S801100000000000111101000000011110(流股)fR14253S4S3S2S1S6S5S7S8ACDB矩阵做法:Si流股若在A环中出现则标1,若不出现则标0。例如:A环,由S2,S3两流股构成,其余为零。矩阵中还有:加和行,用f表示:它由每一列中的非零元素加和构成。加和列(R):它将每一行非零元素加和构成f称为环路频率:代表某流股出现在所有环路中的次数R称为环路的秩:代表某环路中包含的流股总数。ABCD环路S1S2S3S4S5S6S7S801100000000000111101000000011110(流股)fR14253S4S3S2S1S6S5S7S8ACDB经运算,可得出加和f和R值,环路矩阵成为下面样子:ABCDS1S2S3S4S5S6S7S801100000000000111101000000011110R2234f12121121不独立的列•不独立的列(f=1):与f值较大的列相比较,若某列中的非零元素与f值较大列的非零元素同行,则该列相对于f值大的列不独立。•如:S2的f值较大,与其余小于它的列相比较,会发现S2的非零元素为C行和A行。而S1列,C行非零。S3,A行非零。其余列中无与S2同行的非零的元素,则判别出S1,S3相对于S2不独立。表示为:S1,S3S2。S5,S6S4。ABCDS1S2S3S4S5S6S7S801100000000000111101000000011110R2234f12121121不独立的列S7的f值较大,比较发现S8,S5,S6的f值较小且与S7有同行非零。故可认为:S5,S6,S8S7。S2,S4,S7独立。寻找切断流股的方法是:I、在环路矩阵中除去不独立的列,构成仅有独立列的环路矩阵,并计算其秩。由前面分析可知:S1,S3,S5,S6,S8不独立,除去。原矩阵变为:f222ABCDS2S4S7100001110011R1122ABCDS1S2S3S4S5S6S7S801100000000000111101000000011110R2234f12121121不独立的列II,将独立列构成的环路矩阵中秩为1的行中非零元素所在列定为切断流股。本列即为S2,S7两列。结论:断裂S2,S7流股。f222ABCDS2S4S7100001110011R112214253S4S3S2S1S6S5S7S8ADCBIII,将选择出的断裂流股断开,若仍有环路存在,则重复I,II步。若无环路留下,则切断流股选择结束。分析:显然,断开S2,S7使A,B,C,D四个环路均打开。此时,可设定S2,S7流股变量。计算顺序:S2设计算1S7设计算4节点2的输出,S7计再与S7设比较。节点5的输出,S2计再与S2设比较。迭代计算,直至满足精度,即可求解14253S4S3S2S6S7S8ADCB1、进退算法的基本思想由单峰函数的性质可知,对于存在极小值的单峰函数,在极小点左边,函数值严格下降,而在极小点右边,函数值应严格上升。•据此,可以从某个给定的初始点出发,沿着函数值下降的方向逐步前进(或后退)直至发现函数值开始上升为止。由两边高中间低的三点函数值,就可以确定极小值所在的初始区间[a0,b0]2、进退算法(1)选定初始点a0与步长h(2)计算并比较y(a0)和y(a0+h),根据比较结果有前进和后退两种可能:①前进计算:②后退运算:前进计算:若y(a0)≥y(a0+h),则步长加倍,计算y(a0+3h)。若y(a0+h)≤y(a0+3h),则令a0=a0,b0=a0+3h若y(a0+h)≥y(a0+3h),令a0=a0+h,h=2h,重复上述前进运算。后退运算:若y(a0)≤y(a0+h),则后退计算y(a0-h);若y(a0-h)≥y(a0),则令a0=a0-h,b0=a0+h,停止运算。•否则继续后退。例:•求函数的极小所在区间•初始点a0=1,步长h=1•解:h=a0=12)(xxeexy)()(762.3)2()(543.1)1()(0000ayhayyhayyay)()(762.3)2()(543.1)1()(0000ayhayyhayyay所以应后退543.1)(1)(12)0()(00000ayhayeeyhay应继续后退,后退时步长加倍,所以计算后退,计算)()3(762.3)2()21()3(000hayhayyyhay•找到了函数值大()、小()、大()的三点,即a0=a0-3h=-2,b0=a0=1•用进退算法找到了初始搜索区间[a0,b0]为[-2,1])3(0hay)(0hay)(0ay4、黄金分割法的优缺点•(1)、优点:简单、高效,计算次数少•(2)、缺点:对解析性能好的单峰函数,计算量较大。•例:用黄金分割法求下面问题的最优解•minf(x)=e–x+x2•S.t.–2≤x≤3•精度要求:将原始区间缩短5倍.•解:a=-2,b=3•x1=b-λ(b-a)=3-0.618034*(3+2)•=-0.09017•x2=a+λ(b-a)=-2+0.618034*(3+2)•=1.09017•f(x1)=1.10249•f(x2)=1.5246-231.09-0.09•f(x1)=0.9219f(x2)=1.5246•a=-2,b=1.09017•x1=b-λ(b-a)=1.09017-0.618034*(1.09017•+2)=-0.81966•x2=a+λ(b-a)=-2+0.618034*(1.09017•+2)=-0.09017-231.09-0.09f1=1.10249f2=1.5246•f(x2)=1.10249•f(x1)=1.1124•f(x2=-0.09017)=1.10249•f(x1=-0.81966)=1.1124•a=-0.81966,b=1.09017-231.09-0.09-0.819f1=1.1124f2=1.10249•a=-0.81966,b=1.09017-23b=1.09f2=0.83f1=1.1a=-0.819x1=-0.09017f(-0.09017)=1.10249x2=a+λ(b-a)=-0.81966+0.618034*(1.09017+0.81966)=0.36067f(0.36067)=0.82729f(x2)=f(0.36067)=0.82729f(x1)=f(-0.09017)=1.10249舍去[a,x1]a=-0.09017,b=1.090170.36-0.09-0.090171.090170.639320.36067f1=1.10249f2=1.5246x1=0.36067f(0.36067)=0.82729x2=a+λ(b-a)=-0.09017+0.618034*(1.09017+0.09017)=0.63932f(0.63932)=0.93638f(x1)=f(0.36067)=0.82729f(x2)=f(0.63932)=0.93638舍去[x2,b]a=-0.09017,b=0.63932若要求将原始区间缩短5倍∵b-a=0.63932+0.09017=0.73102ln=l0×En=5×0.2=1∴x*=x1=0.36067,f*=f(0.36067)=0.82729a=-0.81966,b=1.09017例:求函数的梯度和Hesses矩阵。解:1梯度:21221312322213)(432)(xxexxxyxxxxxxy1323132146442xxxxxxyxyxyy例•Hesses矩阵6040404023323223122322222121321222122xxyxxyxxyxxyxxyxxyxxyxxyxyy31232221432)(xxxxxxy1323132146442xxxxxxyxyxyy2212213)(xxexxxy212112122263xxxxexxxexxy'']'[']'[uvvuuveueuu212121212121211212212222666xxxxxxxxxxxxexxexxexexxexexy212112122263xxxxexxxexxy212213)(xxexxxy例:用F-R共轭梯度法,求解解:由于F-R共轭梯度法计算过程中需原函数的梯度信息,所以应先求出梯度函数001.0,0,041060min021222121Txxxxxxxxf初始点取122124210xxxxxfxg410002400210,0000xfgPk第一次迭代,首先确定搜索方向,利用原函数的导数信息用该方向搜索新点x(1),将x(1)代入原函数进行一维搜索000000141041000hhfhfPhxfxfh20000202000761166041041044101060hhhhhhhh)(,763157894.07621160762116'000高共轭方向对精度要求很解出hhh05263158.363157894.7410763157894.0000001Phxx0001Phxx52631578.52105263.2242101111111221xxxxxfg2,1kg且不小于30540166.041052631578.52105263.2222220210gg计算7479224.68434903.0.......41030540166.052631578.52105263.20011PgPk=1进行第二次迭代,求代入原函数1h11121Phxfxfh7479224.68434903.005263158.363157894.21hf21222121141060,xxxxxxxfh)7479224.605263158.3)(8434903.063157894.7(...)7479224.605263158.3()8434903.063157894.7(...)7479224.605263158.3(4)8434903.063157894.7(106011212111hhhhhh