MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: Re: Simplify with NestedLessLess?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg106603] Re: [mg106594] Re: [mg106531] Re: [mg106487] Simplify with NestedLessLess?
  • From: Dave Bird <dbird at ieee.org>
  • Date: Mon, 18 Jan 2010 02:34:32 -0500 (EST)
  • References: <201001141049.FAA19892@smc.vnet.net> <4B4F39E7.1070002@wolfram.com> <4B4FAC81.7000108@ieee.org> <4B4FB26F.7050702@wolfram.com> <201001150821.DAA29881@smc.vnet.net> <op.u6k8eysrtgfoz2@bobbys-imac.local> <120224.1263732054539.JavaMail.root@n11> <002e01ca9797$f613f780$e23be680$@net>
  • Reply-to: dbird at ieee.org

I tried this on:

examp=-288 C^2 Cf^2 L2^2 Rg^5 Vd^4 Vg^2-288 C^2 Cf^2 L2^2 Rg^5 Vd^3 
Vg^3-72 C^2 Cf^2 L2^2 Rg^5 Vd^2 Vg^4+\[Sqrt]((-288 C^2 Cf^2 L2^2 Rg^5 
Vd^4 Vg^2-288 C^2 Cf^2 L2^2 Rg^5 Vd^3 Vg^3-72 C^2 Cf^2 L2^2 Rg^5 Vd^2 
Vg^4+144 C Cf^3 L2^2 Rg^5 Vd^4 Vg^2+72 C Cf^3 L2^2 Rg^5 Vd^3 Vg^3-2 Cf^3 
L2^3 Rg^3 Vg^6)^2+4 (12 C Cf L2 Rg^4 Vd^2 (Vd+Vg) (C Vg+2 Cf Vd)-Cf^2 
L2^2 Rg^2 Vg^4)^3)+144 C Cf^3 L2^2 Rg^5 Vd^4 Vg^2+72 C Cf^3 L2^2 Rg^5 
Vd^3 Vg^3-2 Cf^3 L2^3 Rg^3 Vg^6

It ran for about two hours before I aborted it. I suspect the reason is 
because there is no form (C+Cf) that results.

If we use the following as a starter on the above examp, it yields some 
excellent candidates for elimination.

Collect[ExpandAll[examp /. C -> Cf*eps], Cf, Simplify]

Out[106]= -72 Cf^4 eps L2^2 Rg^5 Vd^2 Vg^2 (2 Vd+Vg) ((2 eps-1) Vd+eps 
Vg)-2 Cf^3 L2^3 Rg^3 Vg^6+12 \[Sqrt](Cf^7 eps L2^3 Rg^8 Vd^2 (48 Cf^2 
eps^2 Rg^4 Vd^4 (Vd+Vg)^3 (eps Vg+2 Vd)^3+12 Cf eps L2 Rg^2 Vd^2 Vg^4 (8 
(6 eps^2-6 eps+1) Vd^4+4 (24 eps^2-19 eps+1) Vd^3 Vg+(71 eps^2-44 eps-1) 
Vd^2 Vg^2+2 eps^2 Vg^4+2 eps (11 eps-5) Vd Vg^3)+L2^2 Vg^8 ((8 eps-2) 
Vd^2+9 eps Vd Vg+3 eps Vg^2)))

How can we parameterize the terms where powers of eps are compared to 
\[PlusMinus] 1 or 2 or whatever? I now think operator 
control/interpretation is vital since some apriori knowledge of the 
degree of magnitude is necessary. In other words, it may or may not be 
acceptable in a given case to eliminate for example (71 eps^2-44 eps-1)->-1

Thanks,

Dave

David Park wrote:
> I think I'm beginning to see what you want to do. You want to factor terms
> that can be factored into the form factor(C+Cf) and retain all other terms.
> Then you can spot these terms and make suitable simplifications.
>
> Here is a somewhat more complicated expression, just to give a more general
> test example.
>
> expr = (-Cf^2 L2^2 Rg^2 Vg^4 + 
>    3 (4 C Rg^2 Vd^2 + 4 Cf Rg^2 Vd^2 + 2 C Rg^2 Vd Vg))/(
>   1 - Sqrt[4 C Rg^2 Vd^2 + 4 Cf Rg^2 Vd^2 + 2 C Rg^2 Vd Vg + extra]);  
> ExpandAll[expr] //. 
>   a_ C + a_ Cf + terms_. -> a HoldForm[(C + Cf)] + terms // Simplify  
> % /. C + Cf -> C // ReleaseHold  
>
> (Rg^2 (-6 C Vd Vg+Cf^2 L2^2 Vg^4-12 Vd^2 (C+Cf)))/(-1+Sqrt[extra+2 C Rg^2 Vd
> Vg+4 Rg^2 Vd^2 (C+Cf)])
>
> (Rg^2 (-12 C Vd^2-6 C Vd Vg+Cf^2 L2^2 Vg^4))/(-1+Sqrt[extra+4 C Rg^2 Vd^2+2
> C Rg^2 Vd Vg])
>
> We expanded everything, used a factoring rule, putting C+Cf in a HoldForm to
> protect it, and then used Simplify. You could then replace C+Cf with C.
>
>
> David Park
> djmpark at comcast.net
> http://home.comcast.net/~djmpark/  
>
>
>
> From: Dave Bird [mailto:dbird at ieee.org] 
>
>
> Interesting! But, I don't think I am correctly communicating what I'm 
> after yet. (Although, I admit that I am struggling some to keep up with 
> you guys in your Mathematica replies due to my inexperience.)
>
> The original expression that I put up for illustration is:
>
> -Cf^2 L2^2 Rg^2 Vg^4+3 (4 C Rg^2 Vd^2+4 Cf Rg^2 Vd^2+2 C Rg^2 Vd Vg)
>
> We compare 4 C Rg^2 Vd^2 to 4 Cf Rg^2 Vd^2 because the two terms share 
> common coefficients so that they "reduce" to (4 Rg^2 Vd^2+4 Rg^2 Vd^2) 
> (C+Cf) . Thus it becomes obvious that C may be discarded w.r.t. Cf.
>
> Please forgive if I have missed the correct application of your 
> suggestion, and thanks for the interest.
>
> Dave
>
> DrMajorBob wrote:
>   
>> Series[-Cf^2 L2^2 Rg^2 Vg^4 +
>>    3 (4 C Rg^2 Vd^2 + 4 Cf Rg^2 Vd^2 + 2 C Rg^2 Vd Vg), {C, 0,
>>    5}] // Simplify
>>
>> SeriesData[C, 0, {
>>  Cf Rg^2 (12 Vd^2 - Cf L2^2 Vg^4), 6 Rg^2 Vd (2 Vd + Vg)}, 0, 6, 1]
>>
>> Bobby
>>
>> On Fri, 15 Jan 2010 02:21:09 -0600, Dave Bird <dbird at ieee.org> wrote:
>>
>>     
>>> Not infinitesimals. I'm working in analog circuit design/analysis. I
>>> have a 3 pole symbolic circuit response (third order) which is not
>>> easily separable. I can use Mathematica to find the three roots of the
>>> response. But, the roots are, of course, very messy. I know that certain
>>> elements in the circuit are orders of magnitude larger than other like
>>> elements - capacitors in this case. For example, one small section of
>>> one root is
>>>
>>> -Cf^2 L2^2 Rg^2 Vg^4+3 (4 C Rg^2 Vd^2+4 Cf Rg^2 Vd^2+2 C Rg^2 Vd Vg)
>>>
>>> I know that C<<Cf. By careful inspection, I can see that the first term
>>> in the parens will drop out compared to the second term in the parens. I
>>> would like Mathematica to do this without my having to examine it so
>>> closely since there are many other like situations.
>>>
>>> This kind of situation occurs in many other engineering situations.
>>>
>>> Hope this helps clarify.
>>>
>>> Thanks for the interest.
>>>
>>> Dave
>>>
>>>
>>>
>>>
>>> Daniel Lichtblau wrote:
>>>       
>>>> Dave Bird wrote:
>>>>         
>>>>> Thanks Daniel for the observation. I forgot to add that both a, and b
>>>>> are real positive. That, of course would have to be added to the
>>>>> assumptions.
>>>>>
>>>>> Dave
>>>>>           
>>>> It's still not obvious what you are wanting to do. I have the idea you
>>>> are working in some sense with infinitesmals. If so, I doubt Simplify
>>>> would be the best tool for removing them; it really can only do that
>>>> if it is told, in some way, to replace them with zero. How might one
>>>> instruct Simplify to figure that out?
>>>>
>>>> Daniel
>>>>
>>>>
>>>>         
>>>>> Daniel Lichtblau wrote:
>>>>>           
>>>>>> dbird wrote:
>>>>>>             
>>>>>>> Please excuse if this has been answered before, but I can't find it.
>>>>>>>
>>>>>>> Is there some way to do a Simplify with assumptions using a
>>>>>>> NestedLessLess or something similar? For example:
>>>>>>>
>>>>>>> d=a+b
>>>>>>> Simplify[d,NestedLessLess[a,b]]
>>>>>>>
>>>>>>> Answer is:
>>>>>>> a+b
>>>>>>>
>>>>>>> Answer should be:
>>>>>>> b
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>> Dave
>>>>>>>               
>>>>>> I fail to see why the result should be b.
>>>>>>
>>>>>> Daniel Lichtblau
>>>>>> Wolfram Research
>>>>>>
>>>>>>
>>>>>>             
>>>>         
>>     
>
>
>
>   


  • Prev by Date: Re: Re: Re: Simplify with NestedLessLess?
  • Next by Date: Re: Re: Simplify with NestedLessLess?
  • Previous by thread: Re: Re: Re: Simplify with NestedLessLess?
  • Next by thread: Re: Re: Simplify with NestedLessLess?