Subversion Repositories wimsdev

Rev

Rev 5763 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2071 zjchen 1
!set methtit=方程的加权和式
2
!set methparmtype=parm equation >,parm equation >,\
3
    number, number, choice 2
4
!set methparmrelax=5
5
!set methhelp=这个方法计算两个方程的加权和式.\
6
    所得结果或者可以加到假设中,\
7
    或者取代两个初始方程中的一个.
8
 
9
!if $wims_read_parm iswordof form check
10
 !goto $wims_read_parm
11
!endif
12
 
13
!exit
14
:form
17234 bpr 15
 引入一个新方程, 它是 <br>
2071 zjchen 16
 !default methparm3=1
17
 !default methparm4=1
18
 !read deduc/methparm.phtml 3,5
19
 乘方程
20
 !read deduc/methparm.phtml 1
17234 bpr 21
 <br>加上
2071 zjchen 22
 !read deduc/methparm.phtml 4,5
23
 乘方程
24
 !read deduc/methparm.phtml 2
17234 bpr 25
 <br>
2071 zjchen 26
 新的方程
27
 !formselect methparm5 list 0,1,2 prompt \
28
    被加到假设中,\
29
    替换第一个方程,\
30
    替换第二个方程
31
!exit
32
:check
33
 !ifval $methparm3=0 and $methparm4=0
34
  error=系数是零!
35
  !exit
36
 !endif
37
 !ifval ($methparm=1 and $methparm3=0) or \
38
    ($methparm=2 and $methparm4=0)
39
  error=你要用一个系数全为零的方程去替换吗?\
40
   这会丢失信息的!
41
  !advance penalty
42
  !exit
43
 !endif
44
 !distribute items $methparmobj1 into data1,left1,sign1,right1
45
 !distribute items $methparmobj2 into data2,left2,sign2,right2
46
 !if $data1 issametext $data2
47
  error=这个方法禁止一个方程与自己相加.
48
  !exit
49
 !endif
50
 methexp=\(($methparm3)*($left1 $sign1 $right1) + ($methparm4)*($left2 $sign2 $right2))
17234 bpr 51
 
2071 zjchen 52
 !read deduc/sub/simplify ($methparm3)*($left1) + ($methparm4)*($left2)\
53
    ($methparm3)*($right1) + ($methparm4)*($right2)
54
 !distribute lines $out into newleft, newright
55
 !if $newleft=$empty or $newright=$empty
56
  error=bad_data
57
  !exit
58
 !endif
59
 
60
 newobject$methparm5=$newleft = $newright
61
 oldobject=$methparm5
62
 forcereplace=$methparm5
63
 
64
!exit
65