Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

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

Search the Archive

Schroedinger EQ

  • To: mathgroup at smc.vnet.net
  • Subject: [mg122003] Schroedinger EQ
  • From: raj kumar <rajesh7796gm at gmail.com>
  • Date: Sat, 8 Oct 2011 05:35:45 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com

dear esteemed experts,

i wonder if somebody can help me

i have been trying to find a a certain value of a parameter V that
will "match" the logarithmic derivative (of solutions to the time
independent Schroedinger eq ) at both sides of a particular point
called the matching point. But cannot seem to find the correct V value
that will make
bc1[V_] = bc2[V_].. ...mathematica keeps giving an error message .See
below for the code.

any help will be most appreciated


a=0.63;
A8;
j=9/2;
L=4;
mu=(931.5 (208 1.))/(208+1.);
Z=82;
 Subscript[a, so]=0.5;
R=1.25 A^(1/3);
Subscript[V, so]=7;
Subscript[R, c]=1.25 A^(1/3);
Subscript[R, so]=1.1 A^(1/3);
 V1[x_,V_]:=-(V/(E^((x-R)/a)+1)); V2[x_]:=-((2 ((j+1) j-L (L+1)-3/4)
Subscript[V, so] E^((x-Subscript[R, so])/Subscript[a, so]))/
(Subscript[a, so] (E^((x-Subscript[R, so])/Subscript[a, so])+1)^2));
pott[x_,V_]=V1[x,V]+V2[x];

emin=-55;
emax=  -5;
xmax=10;
xmin=0.1;
xmatch=4.5;
e=3.94;

eq[V_, x_, x0_] = {-(
\!\(\*SuperscriptBox["y", "\[Prime]\[Prime]",
MultilineFunction->None]\)[x]/(
      2 mu)) + (pott[x, V] + L (L + 1)/(2 mu (x^2))) y[x] == -e y[x],
   y[x0] == 0,
\!\(\*SuperscriptBox["y", "\[Prime]",
MultilineFunction->None]\)[x0] == 1/10^6};
y1[V_, x_] := y[x] /. NDSolve[eq[V, x, xmin], y, {x, xmin, xmatch}];
bc1[V_] := \!\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\(y1[x]\)\)/y1[x] /. x ->
xmatch;
y2[V_, x_] := y[x] /. NDSolve[eq[V, x, xmax], y, {x, xmax, xmatch}];
bc2[V_] := \!\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\(y2[x]\)\)/y2[x] /. x ->
xmatch;
bc[V_?NumericQ] := bc1[V] - bc2[V];
Vvalue = V /.
   If[emax == emin, V,
    FindRoot[bc[V], {V, emin, emax}, AccuracyGoal -> 10,
     WorkingPrecision -> 20]];
Print["the value of V is =" , Vvalue]



  • Prev by Date: Re: average of the consecutive coin tosses
  • Next by Date: Re: Wolfram LinkLibrary and additional dll on Windows
  • Previous by thread: Re: Rank of a matrix depending on a variable
  • Next by thread: Different scales on the same axis