From: Walter Roberson on 20 Apr 2010 01:42 Walter Roberson wrote: > xiscopolo Polo wrote: > So, rewriting from the mess you posted into matlab, and guessing that > you mean implied multiplication in some cases: > > Zf1 = 1/sqrt(cos(x)^2+i*sin(x)*cos(y)*4*beta) / ke + (2*beta/ke)^2 ); > > which is a syntax error, as it has too many ')'. > > beta = 0.884 > > Zf2 = 1/2*pi * int(Zf1,y,0,2*pi) > K = int(2*sin(x) / real(Zf1), x, 0, pi/2) > > One might almost suspect that > the expressions are wrong and that K should reference Zf2 instead of Zf1. I'm not sure that I trust the result, but I found via Maple that Zf2 can be transformed to be dependently only on ke, and independent of x. That then becomes a constant as far as the integral in K is concerned, leaving you with a trivial integral (provided that you use Zf2 instead of Zf1 for K.) The steps that you would do in Maple to achieve this independence upon x and y, is: Zf2 := 1/2*Pi * int(convert(Zf1,`1F1`),y=0..2*Pi); That is, Zf1 gets rewritten in terms of 1F1 forms such as GAMMA and exp(Pi*I*something) . A fair number of these cancel in the expression. The integral that results for Zf2 is 1/2*Pi * (97682/15625)*Pi/ke^2 Then in K, provided that ke is a real non-zero number, Re() of this Zf2 will be the same as Zf2, eliminating a nasty computational complexity. int(2* sin(x) / constant, x = 0..Pi/2) is 2/constant which is (31250/48841)*ke^2/Pi^2 . I do not yet trust that the integral of the 1F1 converted form really does eliminate both x and y from consideration... it doesn't if I simply the expression before doing the integral, for example. I will need to cross-check for bugs in the symbolic package. _After_ I get some sleep!
|
Pages: 1 Prev: Constrained Portfolio Optimization Next: Matlab mexing with gfortran -- String handling. |