aboutsummaryrefslogtreecommitdiff
path: root/CarpetDev/CarpetMG/src/README
blob: 2da9fe325161eb46a5a9568efd5e566536276929 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
Old documentation:

solve L(u) = r
set f := L(u) - r

given:  f = L(u ) - r
wanted: 0 = L(u') - r
known:  R(f) - f is small
assume: R(u'-u) is also small
define: fc = R(f)
        uc = R(u)
        fc = L(uc) - rc   (defines rc)
solve:  L(uc') = rc
use:    R(u'-u) = uc'-uc   (defines u')
yields: f' = L(u') - r
where f' is smaller than f

uc <- R(u)
fc <- R(f)
rc <- fc
fc <- L(uc) - rc
rc <- fc
then solve L(uc) = rc

the above is identical to:
uc <- R(u)
rc <- R(f)
rc <- L(uc) - rc
then solve L(uc) = rc

now change the notation:
varc      <- R(var)
resc-rhsc <- R(res-rhs)
rhsc      <- resc-rhsc
resc-rhsc <- L(varc) - rhsc
rhsc      <- resc-rhsc
then solve L(varc) = rhsc

the above is identical to:
varc <- R(var)
rhsc <- R(res-rhs)
rhsc <- L(varc) - rhsc
then solve L(varc) = rhsc



*******************************************************************************



New documentation:

equation: L(varc) = rhsc



resf <- L(varf)
resf <- resf - rhsf

varc <- varc // R(varf)
savc <- varc
resc <- 0
resc <- resc // R(resf)
rhsc <- resc
resc <- L(varc)
rhsc <- rhsc - resc

varc <- L(varc) = rhsc

resc <- varc
resc <- resc - savc
resf <- 0
resf <- P(resc)
varf <- varf + resf



rhsc <- R(L(varf) - rhsf) - L(R(varf))
varc <- L(varc) = R(L(varf) - rhsf) - L(R(varf))
varf <- varf + P(varc - R(varf))

delc <- L(R(varf) + delc) = R(L(varf) - rhsf) - L(R(varf))
delf = P(delc)



L(varf       ) - rhcf = resf


L(varf + delf) - rhcf = 0