Load new definition of derivative of abs(x)
fricas
)lib FSPECX
FunctionalSpecialFunction is now explicitly exposed in frame initial
FunctionalSpecialFunction will be automatically loaded when needed
from /var/aw/var/LatexWiki/FSPECX.NRLIB/FSPECX
fricas
%signum:=differentiate(abs(%x),%x)
Type: Expression(Integer)
fricas
signum(z)==eval(%signum,%x=z)
Type: Void
fricas
signum(x)
fricas
Compiling function signum with type Variable(x) -> Expression(
Integer)
Type: Expression(Integer)
fricas
%diracDelta:=differentiate(signum(%x),%x)
fricas
Compiling function signum with type Variable( ) -> Expression(
Integer)
Type: Expression(Integer)
fricas
diracDelta(z)==eval(%diracDelta/2,%x=z)
Type: Void
fricas
diracDelta(x)
fricas
Compiling function diracDelta with type Variable(x) -> Expression(
Integer)
Type: Expression(Integer)
fricas
dirac2:=(diracDelta(x+%i*yy)+diracDelta(x-%i*yy))/2
fricas
Compiling function diracDelta with type Polynomial(Complex(Integer))
-> Expression(Complex(Integer))
Type: Expression(Complex(Integer))
fricas
abs2sqrt:RewriteRule(Integer,Complex Integer,Expression(Complex Integer)):= rule abs(a+%i*b)==sqrt(a^2+b^2)
Type: RewriteRule
?(Integer,
Complex(Integer),
Expression(Complex(Integer)))
fricas
realDirac:=abs2sqrt(dirac2)/2
Type: Expression(Complex(Integer))
fricas
integrate(eval(realDirac,yy=1),x=%minusInfinity..%plusInfinity,"noPole")
Type: Union(f1: OrderedCompletion
?(Expression(Complex(Integer))),
...)
fricas
integrate(eval(realDirac,yy=1/1000),x=%minusInfinity..%plusInfinity,"noPole")
Type: Union(f1: OrderedCompletion
?(Expression(Complex(Integer))),
...)
fricas
limit(realDirac,yy=0)
Type: Union(OrderedCompletion
?(Expression(Complex(Integer))),
...)
fricas
diracDelta(z)==eval(realDirac,x=z)
Compiled code for diracDelta has been cleared.
1 old definition(s) deleted for function or rule diracDelta
Type: Void
fricas
f(x)==x+c
Type: Void
fricas
f(x)*diracDelta(x)
fricas
Compiling function f with type Variable(x) -> Polynomial(Integer)
fricas
Compiling function diracDelta with type Variable(x) -> Expression(
Complex(Integer))
Type: Expression(Complex(Integer))
fricas
-- yy disappears?
-- limit(%,yy=0)
integrate(%,x=%minusInfinity..%plusInfinity,"noPole")
Type: Union(f1: OrderedCompletion
?(Expression(Complex(Integer))),
...)
Properties
fricas
signum(x^2)
fricas
Compiling function signum with type Polynomial(Integer) ->
Expression(Integer)
Type: Expression(Integer)
fricas
diracDelta(x)^2
Type: Expression(Complex(Integer))
fricas
diracDelta(x^2)
fricas
Compiling function diracDelta with type Polynomial(Integer) ->
Expression(Complex(Integer))
Type: Expression(Complex(Integer))
fricas
signum(x)*diracDelta(x)
Type: Expression(Complex(Integer))
fricas
integrate(abs(x),x)
Type: Union(Expression(Integer),...)
fricas
-- expected x*abs(x)/2
integrate(signum(x),x)
Type: Union(Expression(Integer),...)
fricas
-- expected abs(x)
integrate(diracDelta(x),x)
Type: Union(Expression(Complex(Integer)),...)
fricas
-- expected signum(x)/2
--
integrate(diracDelta(x),x=%minusInfinity..%plusInfinity,"noPole")
Type: Union(f1: OrderedCompletion
?(Expression(Complex(Integer))),
...)
fricas
integrate(x*diracDelta(x),x=%minusInfinity..%plusInfinity,"noPole")
Type: Union(f1: OrderedCompletion
?(Expression(Complex(Integer))),
...)
Representing diracDelta as a series of bump functions
fricas
)lib GDRAW
GnuDraw is now explicitly exposed in frame initial
GnuDraw will be automatically loaded when needed from
/var/aw/var/LatexWiki/GDRAW.NRLIB/GDRAW
X:=[(x/10)::DFLOAT for x in -100..100 by 2];
fricas
Y:=[eval(realDirac,[x=x1,y=1.0])::DFLOAT for x1 in X];
Cannot convert from type Expression(Complex(DoubleFloat)) to
DoubleFloat for value
+-----------+
2 | 2
0.5 yy \|yy + 100.0
-------------------------
4 2
yy + 200.0 yy + 10000.0
gnuDraw(X,Y,"SandBoxDiracDelta1.dat")
There are 2 exposed and 0 unexposed library operations named gnuDraw
having 3 argument(s) but none was determined to be applicable.
Use HyperDoc Browse, or issue
)display op gnuDraw
to learn more about the available operations. Perhaps
package-calling the operation or using coercions on the arguments
will allow you to apply the operation.
Cannot find a definition or applicable library operation named
gnuDraw with argument type(s)
List(DoubleFloat)
Variable(Y)
String
Perhaps you should use "@" to indicate the required return type,
or "$" to specify which version of the function you need.
