On Tue, Feb 7, 2017 at 7:14 AM,  <valerio...@gmail.com> wrote:
>
>
> On Saturday, February 4, 2017 at 4:46:38 PM UTC-6, Dima Pasechnik wrote:
>>
>>
>>
>> On Saturday, February 4, 2017 at 8:48:22 PM UTC, valer...@gmail.com wrote:
>>>
>>> I would like to know the right way to do in SAGE what I am currently
>>> doing with Mathematica in these two examples (I actually know how to do the
>>> first one in SAGE, but probably not in the best way):
>>> 1) Finding the intersection of a generic tangent line to f(x) with f(x):
>>> f[x_]:= x^2(x^2-1)
>>> L[a_,x_]:=f[a]+f'[a](x-a)
>>> Solve[L[a,x]==f[x],x]
>>> Here the main issue for me is how use the derivative f'(x) without having
>>> to define a new function g(x)=derivative(f(x))
>>
>>
>> Are your f always polynomials? Sage can do much more with polynomials then
>> with "generic" symbolic functions.
>> (e.g. for intersecting plane curves an exact approach would be to compute
>> the resultant, etc)
>>
>> Regarding your last question, certainly there is no need to define a new
>> named function for everything, e.g.
>> sage: f(x)=x^2
>> sage: f.diff(x)
>> x |--> 2*x
>> sage: f.diff(x)(5)
>> 10
>>
>> works
>
>
> f is not always a polynomial, but the above surely answers my question,
> thank you
>>
>>
>>>
>>>
>>> 2) Testing if |f(z)| < f(|z|) for various choices of f:
>>> Pl[f_,r_]:=Plot[Abs[f[r Exp[I t]]]/f[r],{t,0,2Pi}]
>>> Here I am mostly interested in how to write a command that uses a
>>> function as a variable.
>>
>>
>> Sage has two different types of "functions": 1) native Python functions 2)
>> symbolic functions;
>> certainly both of these can be passed around as parameters.
>
>
> I have not been able to use f as a parameter. To use a simpler example, what
> is the SAGE code corresponding to this Mathematica code:
> f[x_]:=1+x+x^2
> g[x_]:=1+x+x^2+x^3
> Ex[f_]:=Expand[f[x]^2]
> Ex[f]
>
> 1 + 2 x + 3 x^2 + 2 x^3 + x^4
>
> Ex[g]
>
> 1 + 2 x + 3 x^2 + 4 x^3 + 3 x^4 + 2 x^5 + x^6
>
> etc.
>

Here's one way:

sage: f = 1+x+x^2
sage: g = 1+x+x^2+x^3
sage: def my_expand(x): return (x^2).expand()
sage: my_expand(f)
x^4 + 2*x^3 + 3*x^2 + 2*x + 1
sage: my_expand(g)
x^6 + 2*x^5 + 3*x^4 + 4*x^3 + 3*x^2 + 2*x + 1



>
>
>
>>
>>
>>>
>>>
>>> Thanks for any suggestions.
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-support+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-support@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-support.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send email to sage-support@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to