@@ -49,21 +49,22 @@ function differentiate(f::Fun{<:JacobiWeight{<:Any,<:IntervalOrSegment}})
49
49
S= f. space
50
50
d= domain (f)
51
51
ff= Fun (S. space,f. coefficients)
52
+ zeroT = zero (S. α- 1 )
52
53
if S. β== S. α== 0
53
54
u= differentiate (ff)
54
- Fun (JacobiWeight (0 , 0 ,space (u)),u. coefficients)
55
+ Fun (JacobiWeight (zeroT,zeroT ,space (u)),u. coefficients)
55
56
elseif S. β== 0
56
57
x= Fun (identity,d)
57
58
M= tocanonical (d,x)
58
59
Mp= tocanonicalD (d,leftendpoint (d))
59
60
u= - Mp* S. α* ff + (1 - M). * differentiate (ff)
60
- Fun (JacobiWeight (0 ,S. α- 1 ,space (u)),u. coefficients)
61
+ Fun (JacobiWeight (zeroT ,S. α- 1 ,space (u)),u. coefficients)
61
62
elseif S. α== 0
62
63
x= Fun (identity,d)
63
64
M= tocanonical (d,x)
64
65
Mp= tocanonicalD (d,leftendpoint (d))
65
66
u= Mp* S. β* ff + (1 + M). * differentiate (ff)
66
- Fun (JacobiWeight (S. β- 1 ,0 ,space (u)),u. coefficients)
67
+ Fun (JacobiWeight (S. β- 1 ,zeroT ,space (u)),u. coefficients)
67
68
else
68
69
x= Fun (identity,d)
69
70
M= tocanonical (d,x)
@@ -158,27 +159,31 @@ end
158
159
function jacobiweightDerivative (S:: JacobiWeight{<:Any,<:ChebyshevInterval} )
159
160
d= domain (S)
160
161
161
- if S. β== S. α== 0
162
- DerivativeWrapper (SpaceOperator (Derivative (S. space),S,
163
- JacobiWeight (0 ,0 ,rangespace (Derivative (S. space)))),1 )
164
- elseif S. β== 0
165
- w= Fun (JacobiWeight (0 ,1 ,ConstantSpace (d)),[1. ])
162
+ zeroT = zero (S. α- 1 )
163
+ oneT = oneunit (zeroT)
164
+ DSsp = Derivative (S. space)
166
165
167
- DDβ0= - S. α + w* Derivative (S. space)
168
- rsβ0= S. α== 1 ? rangespace (DDβ0) : JacobiWeight (0. ,S. α- 1 ,rangespace (DDβ0))
166
+ if S. β == S. α == 0
167
+ DerivativeWrapper (SpaceOperator (DSsp,S,
168
+ JacobiWeight (zeroT,zeroT,rangespace (DSsp))),1 )
169
+ elseif S. β == 0
170
+ w = Fun (JacobiWeight (zeroT,oneT,ConstantSpace (d)),[1.0 ])
171
+
172
+ DDβ0 = - S. α + w* DSsp
173
+ rsβ0 = JacobiWeight (zeroT,S. α- 1 ,rangespace (DDβ0))
169
174
DerivativeWrapper (SpaceOperator (DDβ0,S,rsβ0),1 )
170
- elseif S. α== 0
171
- w= Fun (JacobiWeight (1 , 0 ,ConstantSpace (d)),[1. ])
175
+ elseif S. α == 0
176
+ w = Fun (JacobiWeight (oneT,zeroT ,ConstantSpace (d)),[1.0 ])
172
177
173
- DDα0= S. β + w* Derivative (S . space)
174
- rsα0= S . β == 1 ? rangespace (DDα0) : JacobiWeight (S. β- 1 ,0. ,rangespace (DDα0))
178
+ DDα0 = S. β + w* DSsp
179
+ rsα0 = JacobiWeight (S. β- 1 ,zeroT ,rangespace (DDα0))
175
180
DerivativeWrapper (SpaceOperator (DDα0,S,rsα0),1 )
176
181
else
177
- w= Fun (JacobiWeight (1 , 1 ,ConstantSpace (d)),[1. ])
182
+ w = Fun (JacobiWeight (oneT,oneT ,ConstantSpace (d)),[1.0 ])
178
183
x= Fun ()
179
184
180
- DD= S. β* (1 - x) - S. α* (1 + x) + w* Derivative (S . space)
181
- rs= S . β == 1 && S . α == 1 ? rangespace (DD) : JacobiWeight (S. β- 1 ,S. α- 1 ,rangespace (DD))
185
+ DD = S. β* (1 - x) - S. α* (1 + x) + w* DSsp
186
+ rs = JacobiWeight (S. β- 1 ,S. α- 1 ,rangespace (DD))
182
187
DerivativeWrapper (SpaceOperator (DD,S,rs),1 )
183
188
end
184
189
end
@@ -192,7 +197,7 @@ function Derivative(S::JacobiWeight{<:Any,<:IntervalOrSegment}, k::Number)
192
197
else
193
198
D= Derivative (S)
194
199
Dk = TimesOperator (Derivative (rangespace (D),k- 1 ), D)
195
- DerivativeWrapper (Dk, k)
200
+ DerivativeWrapper (Dk, k, S )
196
201
end
197
202
end
198
203
0 commit comments