Google Mail Calendar Documents Reader Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Message from discussion Want to 'Solve' a piecewise equation for a common term
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Follow-up To:
Add Cc | Add Follow-up to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers that you hear
 
Jean-Marc Gulliet  
View profile   Translate to Translated (View Original)
 More options 4 Aug 2007, 11:17
Newsgroups: comp.soft-sys.math.mathematica
From: Jean-Marc Gulliet <jeanmarc.gull...@gmail.com>
Date: Sat, 4 Aug 2007 10:17:56 +0000 (UTC)
Local: Sat 4 Aug 2007 11:17
Subject: Re: Want to 'Solve' a piecewise equation for a common term

misno...@gmail.com wrote:
> I've been battling to try to get a solution to my equation, but it
> requires solving of a piecewise function, which I cannot work out how
> to do. Say I have a piecewise function of the form

> temp = Piecewise[{
>      { 2*N*x, x < 0},
>      { N*x,    x >= 0}
> }]

> I want to either solve this via
> Solve[1==temp, N]
> and either get, with the inequalities,

> N -> Piecewise[{
>     {1/(2*x), x < 0},
>     {1/x, x >= 0}
> }]

> or just get mathematica to realise that there is a common term - N,
> and factor it out to, say,
> N * Piecewise[{
>      {2*x, x < 0},
>      {x, x >= 0}
> }]
> from where solve can handle it perfectly well.

> Is this type of operation possible, or am I stuck editing them by hand?

Use *Reduce* for it knows how to handle correctly expressions with
*Piecewise*.

In[1]:= temp = Piecewise[{{2*n*x, x < 0}, {n*x, x >= 0}}];
Reduce[1 == temp, n]

Out[2]= (x > 0 && n == 1/x) || (x < 0 && n == 1/(2 x))

In[3]:= Reduce[1 == n*Piecewise[{{2*x, x < 0}, {x, x >= 0}}], n]

Out[3]= (x > 0 && n == 1/x) || (x < 0 && n == 1/(2 x))

*Solve* does /not/ know what to do with *Piecewise*.

In[4]:= Solve[1 == n*Piecewise[{{2*x, x < 0}, {x, x >= 0}}], n]

Out[4]= {{n -> 1/\[Piecewise] {
      {2 x, x < 0},
      {x, x >= 0}
     }}}

(Also, note that I have replaced capital N by n because N has already a
built-in meaning.)

Regards,
Jean-Marc


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google