Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.soft-sys.math.mathematica > #16780

Re: checking the sign of all terms in a long expression

Path csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.fsmpi.rwth-aachen.de!newsfeed1.swip.net!uio.no!newspump.sol.net!posts.news.twtelecom.net!nnrp3.twtelecom.net!not-for-mail
From Dan siegal-gaskins <dantimatter@gmail.com>
Newsgroups comp.soft-sys.math.mathematica
Subject Re: checking the sign of all terms in a long expression
Date Sat, 12 Apr 2014 09:17:34 +0000 (UTC)
Sender steve@smc.vnet.net
Approved Steven M. Christensen <steve@smc.vnet.net>, Moderator
Message-ID <lib0be$i7f$1@smc.vnet.net> (permalink)
References <20140411061009.8DE2B6A30@smc.vnet.net> <6E89E63B-4C08-4CA7-BA0B-ECCB2B06A812@math.umass.edu>
Lines 55
Organization Time-Warner Telecom
NNTP-Posting-Date 12 Apr 2014 09:23:34 GMT
NNTP-Posting-Host 75864d0a.news.twtelecom.net
X-Trace DXC=3OOmFY0J>NPXg:DhlW=laUC_A=>8kQj6];[h;PUXBgbTPm3bW^Q9cmVEFiONJ7[GoVEU`g9_kC0JT
X-Complaints-To abuse@twtelecom.net
Xref csiph.com comp.soft-sys.math.mathematica:16780

Show key headers only | View raw


Thanks everyone for the quick responses! 
It turns out that some of the terms are multiplied by negative numbers other than -1.  This solution worked well:

toCheckv2 = a + a b + a b c + a c - 2 b + bc + d - e f;
Cases[toCheckv2 // ExpandAll, Times[_?Negative, __]]

{-2 b, -e f}

cheers
dan


On Apr 11, 2014, at 7:54 AM, Murray Eisenberg wrote:

> Are the symbols a, b, etc., just symbolic, as you seem to indicate, or might they be actual numeric values, too?
>
> If indeed the symbols a, b, etc. are just symbols and NOT numbers, then the following should help -- but note that Mathematica will automatically rearrange the terms of toCheck into its usual canonical form.
>
>         toCheck = a + a b + a b c + a c - b + bc + d - e f
>    (* a - b + a b + bc + a c + a b c + d - e f *)
>
>         Flatten@Position[List@@toCheck, Times[-1,__]]
>    (* {2, 8} *)
>
> If you insist on identifying the "negative" terms by their positions in the original expression, before it is evaluated, then you may want to treat it as a string, and the treatment will be trickier.
>
>
> On Apr 11, 2014, at 2:10 AM, dantimatter <google@dantimatter.com> wrote:
>
>>
>> hello all
>> is there to check the signs of all terms in a symbolic expression, like
>>
>> toCheck = a + a b + a b c + a c - b + bc + d ....
>>
>> in this case, with the assumption that the a, b, c etc are all positive, only one term is negative (b by itself) and the rest are positive.  I have expressions like this that have a hundred or more terms and i'm worried i might not be catching all those that are of a different sign.
>>
>> thanks
>>
>
> Murray Eisenberg                                murray@math.umass.edu
> Mathematics & Statistics Dept.      
> Lederle Graduate Research Tower      phone 240 246-7240 (H)
> University of Massachusetts               
> 710 North Pleasant Street                
> Amherst, MA 01003-9305
>
>
>
>
>
>

Back to comp.soft-sys.math.mathematica | Previous | Next | Find similar


Thread

Re: checking the sign of all terms in a long expression Dan siegal-gaskins <dantimatter@gmail.com> - 2014-04-12 09:17 +0000

csiph-web