Re: Manipulate a complex expression
- To: mathgroup at smc.vnet.net
- Subject: [mg77824] Re: Manipulate a complex expression
- From: Daniele <d.malleo at gmail.com>
- Date: Sun, 17 Jun 2007 06:19:46 -0400 (EDT)
- References: <f505ip$qug$1@smc.vnet.net>
Hello, as a follow up to my previous post, I think I can clarify my question with a simpler example. Once I define the following: complexEps[permittivity_, conductivity_, omega_] := permittivity - (I conductivity/omega); epsilonCyt := complexEps[permittivityCyt, conductivityCyt, omega]; omega := 2 Pi f permittivityCyt := 50; Why does this work: Manipulate[Plot[Im[Evaluate[complexEps[permittivityCyt, conductivityCyt, omega]]], {f, 1 10^5,1 10^10}], {conductivityCyt, 0.1, 0.5}] While this doesn't: Manipulate[Plot[Im[Evaluate[epsilonCyt]], {f, 1 10^5, 1 10^10}], {conductivityCyt, 0.1, 0.5}] I would think that the two 'Manipulate' expressions would be equivalent, but obviously I'd be wrong.... thanks. On 16 Jun, 09:04, Daniele <d.mal... at gmail.com> wrote: > Hello, > I'm trying to use the new Manipulate function to evaluate a complex > expression. I'm getting a headache, as I'm not familiar with the > Mathematica notation (I do most of my work, numerically, with another system). > Maybe somebody here can help debug these few lines? > > The expression I want to 'manipulate' is the following: > > MeasuredCMF := VolumeFraction ( EpsilonCell - EpsilonMedium)/ > ( EpsilonCell + 2 EpsilonMedium) > > Where VolumeFraction is a parameter, and the other variables are > complex and a function of 'f'. > They are defined below. > > omega := 2 Pi f > EpsilonCyt := PermittivityCyt - ( ConductivityCyt/omega) I > EpsilonMembrane := PermittivityMembrane - (ConductivityMembrane/omega) > I > EpsilonMedium := PermittivityMedium - (ConductivityMedium/omega) I > > CMFCell := ( EpsilonCyt - EpsilonMembrane)/( EpsilonCyt + 2 > EpsilonMembrane) > v := CellRadius/(CellRadius - MembraneThickness) > EpsilonCell := EpsilonMembrane *(v^3 + 2 CMFCell)/(v^3 - CMFCell) > > Epsilon0 = 8.85 10^-12; > PermittivityCyt = 120 Epsilon0; > PermittivityMembrane = 6 Epsilon0; > PermittivityMedium = 80 Epsilon0; > ConductivityCyt = 0.15; > ConductivityMedium = 0.15; > ConductivityMembrane = 1 10^-9; > CellRadius = 10 10^-6; > MembraneThickness = 9 10^-9; > > if I define VolumeFraction (eg. VolumeFraction=0.1) and plot > Re[MeasuredCMF] vs. f, I have no problem. > But I am unable to successfully do the following (I get a blank plot) > > Manipulate[ > LogLinearPlot[ > Evaluate[Re[MeasuredCMF]], {f, 1 10^5, 1 10^9}], {{VolumeFraction, > 0.2}, 0.1, 0.5}] > > Can somebody help? I suspect I'm not using the assignment syntax > correctly. > Thanks > > Daniele Malleo