help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Getting Matlab geophysics code running in Octave


From: Lester Anderson
Subject: Re: Getting Matlab geophysics code running in Octave
Date: Mon, 5 Aug 2013 21:47:30 +0100

Hi all,

I think the issue lies in the plotting somewhere, as it actally plots the curves and axes correctly (axis labels need tweaking) but otherwise working. What it does not do compared to the expected plot is add the label boxes on the curves as in the original graphic I showed.

However, I noticed on closer inspection that what I was the plot going blank, was dues to a new plot going on top of the original one. I generated a graphic (attached), but on screen the overlaid plot is white so blanks out what is beneath.

It looks like it is a closer solution, just need to know what is trying to plot on top!  Did notice that the y axis label was not showing the gamma symbol or the superscript properly, a formatting issue there. Still gives an error message:

octave:3> coheref2
warning: isstr is obsolete and will be removed from a future version of Octave, please use ischar instead
warning: set: allowing rev to match xdir value reverse
warning: get: allowing linew to match line property linewidth
warning: get: allowing linew to match line property linewidth
warning: get: allowing linew to match line property linewidth
warning: get: allowing linew to match line property linewidth
warning: get: allowing linew to match line property linewidth
stopped in c:\matlab\functions\simmons_matlab\coheref2.m at line 74
74: keyboard
debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\coheref2.m at line 75
75: fb=fillbox([post(1:end-1,1)-tbx post(1:end-1,1)+tbx post(1:end-1,2)+tbb post(1:end-1,2)-tbb],'w');
debug> dbstep
error: 'fillbox' undefined near line 75 column 4
error: called from:
error:   c:\matlab\functions\simmons_matlab\coheref2.m at line 75, column 3
octave:3>

When compared with the expected output (coheref2.gif) it is easier to see what is missing or not plotting correct. I am wondering if the "plot" sitting on toip of the main curves plot is part of the box labels thing?

Cheers
Lester


On 5 August 2013 07:33, Lester Anderson <address@hidden> wrote:
Hi Ben,

Yes it was the wrong defval - changed that it that sorts some issues! Thanks for spotting that.

octave:1> cd c:\matlab\functions\simmons_matlab
octave:2> coheref2

warning: isstr is obsolete and will be removed from a future version of Octave, please use ischar instead
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 62
62:   keyboard
debug> who
Variables in the current scope:

E     G     T     Te    ans   argn  drho  f2    g     lbd   r     rc    v

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 63
63:   defval('xver',0)

debug> who
Variables in the current scope:

E     G     T     Te    ans   argn  drho  f2    g     lbd   r     rc    v

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 64
64:   if xver==1

debug> who
Variables in the current scope:

E     G     T     Te    ans   argn  drho  f2    g     lbd   r     rc    v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 64
64:   if xver==1
debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 69
69:   k=2*pi./lbd;

debug> who
Variables in the current scope:

E     G     T     Te    ans   argn  drho  f2    g     lbd   r     rc    v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 73
73:   D=(E*Te.^3)/(12*(1-v^2));

debug> who
Variables in the current scope:

E     G     T     Te    ans   argn  drho  f2    g     k     lbd   r     rc    v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 76
76:   if length(Te)>=1 && length(f2)==1 && length(r)==1

debug> who
Variables in the current scope:

D     E     G     T     Te    ans   argn  drho  f2    g     k     lbd   r     rc    v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 76
76:   if length(Te)>=1 && length(f2)==1 && length(r)==1

debug> who
Variables in the current scope:

D     E     G     T     Te    ans   argn  drho  f2    g     k     lbd   r     rc    v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 76
76:   if length(Te)>=1 && length(f2)==1 && length(r)==1
debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 80
80:     [LL,FF2]=meshgrid(lbd,f2);

debug> who
Variables in the current scope:

D     E     G     T     Te    ans   argn  drho  f2    g     k     lbd   r     rc    v     xver


debug> whos
Variables in the current scope:

   Attr Name        Size                     Bytes  Class
   ==== ====        ====                     =====  =====
        D           1x1                          8  double
        E           1x1                          8  double
        G           1x1                          8  double
    f   T           1x1                          8  double

    f   Te          1x1                          8  double
        ans         1x1                          8  double

  a     argn        4x6                         24  char
    f   drho        1x1                          8  double

    f   f2          1x5                         40  double
    f   g           1x1                          8  double
        k           1x1000                    8000  double

    f   lbd         1x1000                    8000  double
    f   r           1x1                          8  double
    f   rc          1x1                          8  double
        v           1x1                          8  double
    f   xver        1x1                          8  double

Total is 2041 elements using 16160 bytes

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 81
81:     DD=D; RR=r;

debug> who
Variables in the current scope:

D     E     FF2   G     LL    T     Te    ans   argn  drho  f2    g     k     lbd   r     rc    v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 81
81:     DD=D; RR=r;

debug> who
Variables in the current scope:

D     DD    E     FF2   G     LL    T     Te    ans   argn  drho  f2    g     k     lbd   r     rc    v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 88
88:   KK4=(2*pi./LL).^4;

debug> who
Variables in the current scope:

D     E     G     RR    Te    argn  f2    k     r     v
DD    FF2   LL    T     ans   drho  g     lbd   rc    xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 89
89:   KK=(2*pi./LL);

debug> who
Variables in the current scope:

D     E     G     LL    T     ans   drho  g     lbd   rc    xver
DD    FF2   KK4   RR    Te    argn  f2    k     r     v

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 92
92:   xai=1+DD.*KK4/drho/g;

debug> who
Variables in the current scope:

D     E     G     KK4   RR    Te    argn  f2    k     r     v
DD    FF2   KK    LL    T     ans   drho  g     lbd   rc    xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 93
93:   phi=1+DD.*KK4/rc/g;

debug> who
Variables in the current scope:

D     E     G     KK4   RR    Te    argn  f2    k     r     v     xver
DD    FF2   KK    LL    T     ans   drho  g     lbd   rc    xai

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 94
94:   beta=rc./xai/drho;

debug> who
Variables in the current scope:

D     E     G     KK4   RR    Te    argn  f2    k     phi   rc    xai
DD    FF2   KK    LL    T     ans   drho  g     lbd   r     v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 99
99:   Ctop=(xai+FF2.*rc^2./drho^2.*phi-RR.*sqrt(FF2)*rc./drho.*[phi.*xai+1]).^2;

debug> who
Variables in the current scope:

D     E     G     KK4   RR    Te    argn  drho  g     lbd   r     v     xver
DD    FF2   KK    LL    T     ans   beta  f2    k     phi   rc    xai

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 100
100:   Cbot1=xai.^2+FF2.*rc^2./drho^2-2*RR.*sqrt(FF2)*rc/drho.*xai;

debug> who
Variables in the current scope:

Ctop  DD    FF2   KK    LL    T     ans   beta  f2    k     phi   rc    xai
D     E     G     KK4   RR    Te    argn  drho  g     lbd   r     v     xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 101
101:   Cbot2=1+FF2.*rc^2./drho^2.*phi.^2-2*RR.*sqrt(FF2)*rc/drho.*phi;

debug> who
Variables in the current scope:

Cbot1  D      E      G      KK4    RR     Te     argn   drho   g      lbd    r      v      xver
Ctop   DD     FF2    KK     LL     T      ans    beta   f2     k      phi    rc     xai

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 103
103:   G2b=Ctop./Cbot1./Cbot2;

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    KK     LL     T      ans    beta   f2     k      phi    rc     xai
Cbot2  D      E      G      KK4    RR     Te     argn   drho   g      lbd    r      v      xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 105
105:   if xver==1

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    G2b    KK4    RR     Te     argn   drho   g      lbd    r      v      xver
Cbot2  D      E      G      KK     LL     T      ans    beta   f2     k      phi    rc     xai

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 105
105:   if xver==1

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    G2b    KK4    RR     Te     argn   drho   g      lbd    r      v      xver
Cbot2  D      E      G      KK     LL     T      ans    beta   f2     k      phi    rc     xai

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 116
116:   Zb=-2*pi*G*rc*exp(-KK*T).*...

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    G2b    KK4    RR     Te     argn   drho   g      lbd    r      v      xver
Cbot2  D      E      G      KK     LL     T      ans    beta   f2     k      phi    rc     xai

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 121
121:   Zb=Zb/1e-5;

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    G2b    KK4    RR     Te     ans    beta   f2     k      phi    rc     xai
Cbot2  D      E      G      KK     LL     T      Zb     argn   drho   g      lbd    r      v      xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 124
124:   Zf=Zb+2*pi*G*rc/1e-5;

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    G2b    KK4    RR     Te     ans    beta   f2     k      phi    rc     xai
Cbot2  D      E      G      KK     LL     T      Zb     argn   drho   g      lbd    r      v      xver


debug> whos
Variables in the current scope:

   Attr Name        Size                     Bytes  Class
   ==== ====        ====                     =====  =====
        Cbot1       5x1000                   40000  double
        Cbot2       5x1000                   40000  double
        Ctop        5x1000                   40000  double
        D           1x1                          8  double
        DD          1x1                          8  double
        E           1x1                          8  double
        FF2         5x1000                   40000  double
        G           1x1                          8  double
        G2b         5x1000                   40000  double
        KK          5x1000                   40000  double
        KK4         5x1000                   40000  double
        LL          5x1000                   40000  double
        RR          1x1                          8  double
    f   T           1x1                          8  double

    f   Te          1x1                          8  double
        Zb          5x1000                   40000  double
        ans         1x1                          8  double

  a     argn        4x6                         24  char
        beta        5x1000                   40000  double
    f   drho        1x1                          8  double

    f   f2          1x5                         40  double
    f   g           1x1                          8  double
        k           1x1000                    8000  double

    f   lbd         1x1000                    8000  double
        phi         5x1000                   40000  double

    f   r           1x1                          8  double
    f   rc          1x1                          8  double
        v           1x1                          8  double
        xai         5x1000                   40000  double
    f   xver        1x1                          8  double

Total is 62043 elements using 496176 bytes

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 126
126:   l=lbd;

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    G2b    KK4    RR     Te     Zf     argn   drho   g      lbd    r      v      xver
Cbot2  D      E      G      KK     LL     T      Zb     ans    beta   f2     k      phi    rc     xai

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 129
129:   varns={G2b,k,l,Zb,Zf};

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    G2b    KK4    RR     Te     Zf     argn   drho   g      l      phi    rc     xai
Cbot2  D      E      G      KK     LL     T      Zb     ans    beta   f2     k      lbd    r      v      xver

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 130
130:   varargout=varns(1:nargout);

debug> who
Variables in the current scope:

Cbot1  Ctop   DD     FF2    G2b    KK4    RR     Te     Zf     argn   drho   g      l      phi    rc     varns  xver
Cbot2  D      E      G      KK     LL     T      Zb     ans    beta   f2     k      lbd    r      v      xai

debug> dbstep
stopped in c:\matlab\functions\simmons_matlab\forsyth.m at line 197
197:

debug> who
Variables in the current scope:

Cbot1      DD         G2b        RR         Zf         drho       l          rc         xai
Cbot2      E          KK         T          ans        f2         lbd        v          xver
Ctop       FF2        KK4        Te         argn       g          phi        varargout
D          G          LL         Zb         beta       k          r          varns

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 38
38:   [h, varargin, nargs] = __plt_get_axis_arg__ ("semilogx", varargin{:});

debug> who
Variables in the current scope:

argn      varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 40
40:   if (nargs < 1)  --------> draws a blank figure window here scaled 0-1 in x,y
debug>

debug> who
Variables in the current scope:

argn      h         nargs     varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 44
44:   oldh = gca ();

debug> who
Variables in the current scope:

argn      h         nargs     varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 46
46:     axes (h);

debug> who
Variables in the current scope:

argn      h         nargs     oldh      varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 47
47:     newplot ();

debug> who
Variables in the current scope:

argn      h         nargs     oldh      varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 49
49:     set (h, "xscale", "log");
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 50
50:     if (any( strcmp (get (gca, "nextplot"), {"new", "replace"}))) ---------------> changes xaxis scaling 1e^-1 to1e^+0
debug>
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 51
51:       set (h, "xminortick", "on");

debug> who
Variables in the current scope:

argn      h         nargs     oldh      varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 54
54:     tmp = __plt__ ("semilogx", h, varargin{:});

debug> who
Variables in the current scope:

argn      h         nargs     oldh      varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 56
56:     if (nargout > 0) ---------------> draws plot with semilog X (1e+1 to 1e+4) and linear y and 5 curves
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 57
57:       retval = tmp;
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 60
60:     axes (oldh);

debug> who
Variables in the current scope:

argn      h         nargs     oldh      retval    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\semilogx.m at line 63
63: endfunction

debug> who
Variables in the current scope:

argn      h         nargs     oldh      retval    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 42
42:   if (nargin == 0)
debug> who
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 42
42:   if (nargin == 0)
debug> who
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 43
43:     h = get (gcf (), "currentaxes");
debug> who
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 44
44:     if (isempty (h))

debug> who
Variables in the current scope:

h

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 44
44:     if (isempty (h))

debug> who
Variables in the current scope:

h

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 51
51: endfunction

debug> who
Variables in the current scope:

h

debug> dbstep
warning: set: allowing rev to match xdir value reverse
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylim.m at line 41
41:   ret = __axes_limits__ ("ylim", varargin{:});    xaxis limits switched left to right to give max 1e4 on the left
debug>
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylim.m at line 43
43:   if (! isempty (ret))

debug> who
Variables in the current scope:

argn      ret       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylim.m at line 43
43:   if (! isempty (ret))

debug> who
Variables in the current scope:

argn      ret       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylim.m at line 46
46: endfunction

debug> who
Variables in the current scope:

argn      ret       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlim.m at line 45
45:   ret = __axes_limits__ ("xlim", varargin{:});

debug> who
Variables in the current scope:

argn      varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlim.m at line 47
47:   if (! isempty (ret))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlim.m at line 47
47:   if (! isempty (ret))

debug> who
Variables in the current scope:

argn      ret       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlim.m at line 50
50: endfunction

debug> who
Variables in the current scope:

argn      ret       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 36
36:   [h, varargin, nargin] = __plt_get_axis_arg__ ("xlabel", varargin{:});
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 38
38:   if (rem (nargin, 2) != 1)

debug> who
Variables in the current scope:

argn      h         nargin    varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 38
38:   if (rem (nargin, 2) != 1)

debug> who
Variables in the current scope:

argn      h         nargin    varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 42
42:   tmp = __axis_label__ (h, "xlabel", varargin{:},

debug> who
Variables in the current scope:

argn      h         nargin    varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 45
45:   if (nargout > 0)  ------------------> labels the xaxis
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 45
45:   if (nargout > 0)

debug> who
Variables in the current scope:

argn      h         nargin    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 45
45:   if (nargout > 0)

debug> who
Variables in the current scope:

argn      h         nargin    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 46
46:     retval = tmp;

debug> who
Variables in the current scope:

argn      h         nargin    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\xlabel.m at line 49
49: endfunction

debug> who
Variables in the current scope:

argn      h         nargin    retval    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylabel.m at line 30
30:   [h, varargin, nargin] = __plt_get_axis_arg__ ("ylabel", varargin{:});

debug> who
Variables in the current scope:

argn      varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylabel.m at line 32
32:   if (rem (nargin, 2) != 1)

debug> who
Variables in the current scope:

argn      h         nargin    varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylabel.m at line 32
32:   if (rem (nargin, 2) != 1)

debug> who
Variables in the current scope:

argn      h         nargin    varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylabel.m at line 36
36:   tmp = __axis_label__ (h, "ylabel", varargin{:},

debug> who
Variables in the current scope:

argn      h         nargin    varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylabel.m at line 39
39:   if (nargout > 0)  ------------------> labels the yaxis

debug> who
Variables in the current scope:

argn      h         nargin    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylabel.m at line 39
39:   if (nargout > 0)

debug> who
Variables in the current scope:

argn      h         nargin    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylabel.m at line 40
40:     retval = tmp;

debug> who
Variables in the current scope:

argn      h         nargin    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\ylabel.m at line 43
43: endfunction

debug> who
Variables in the current scope:

argn      h         nargin    retval    tmp       varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 41
41:   [ax, varargin, nargs] = __plt_get_axis_arg__ ("grid", varargin{:});

debug> who
Variables in the current scope:

argn      varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 43
43:   grid_on = (strcmp (get (ax, "xgrid"), "on")

debug> who
Variables in the current scope:

argn      ax        nargs     varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 47
47:   minor_on = (strcmp (get (ax, "xminorgrid"), "on")

debug> who
Variables in the current scope:

argn      ax        grid_on   nargs     varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 51
51:   if (nargs > 2)

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 51
51:   if (nargs > 2)

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin

debug> dbtep
error: 'dbtep' undefined near line 2 column 1
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 51
51:   if (nargs > 2)

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin


debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 56
56:     x = varargin{1};

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 57
57:     if (ischar (x))

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 57
57:     if (ischar (x))

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 58
58:       if (strcmpi (x, "off"))

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 58
58:       if (strcmpi (x, "off"))

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 58
58:       if (strcmpi (x, "off"))

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 61
61:         grid_on = true;

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 87
87:   if (grid_on)

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 87
87:   if (grid_on)

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 88
88:     set (ax, "xgrid", "on", "ygrid", "on", "zgrid", "on");

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 89
89:     if (minor_on)

debug> who
Variables in the current scope:

argn      ax        grid_on   minor_on  nargs     varargin  x

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 89
89:     if (minor_on)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 92
92:       set (ax, "xminorgrid", "off", "yminorgrid", "off", "zminorgrid", "off");
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\grid.m at line 99
99: endfunction ----------------> grid drawn on figure x and y
debug> dbstep
warning: get: allowing linew to match line property linewidth --------------> bold curve lines
warning: get: allowing linew to match line property linewidth
warning: get: allowing linew to match line property linewidth
warning: get: allowing linew to match line property linewidth
warning: get: allowing linew to match line property linewidth
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 54
54:   if (nargin > 0 && numel (varargin{1}) == 1 && ishandle (varargin{1})
debug>
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 54
54:   if (nargin > 0 && numel (varargin{1}) == 1 && ishandle (varargin{1})
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 61
61:     ax = gca ();
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 62
62:     fig = gcf ();
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 63
63:     nargs = numel (varargin);
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 66
66:   hold_all = false;
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 67
67:   if (nargs == 0)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 67
67:   if (nargs == 0)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 67
67:   if (nargs == 0)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 70
70:     state = varargin{1};
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 71
71:     if (ischar (state))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 71
71:     if (ischar (state))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 72
72:       if (strcmpi (state, "off"))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 72
72:       if (strcmpi (state, "off"))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 72
72:       if (strcmpi (state, "off"))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 72
72:       if (strcmpi (state, "off"))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 78
78:         turn_hold_off = false;
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 87
87:   if (turn_hold_off)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 87
87:   if (turn_hold_off)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 90
90:     set (ax, "nextplot", "add");
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 91
91:     set (fig, "nextplot", "add");
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 93
93:   set (ax, "__hold_all__", hold_all);
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\hold.m at line 95
95: endfunction
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 42
42:   if (nargin == 0)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 42
42:   if (nargin == 0)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 43
43:     h = get (gcf (), "currentaxes");
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 44
44:     if (isempty (h))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 44
44:     if (isempty (h))
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\gca.m at line 51
51: endfunction
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 30
30:   if (nargin == 0 || nargin > 1)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 30
30:   if (nargin == 0 || nargin > 1)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 32
32:     idx = find (strcmpi (varargin(1:2:end), "parent"), 1, "first");
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 33
33:     if (! isempty (idx) && length (varargin) >= 2*idx)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 33
33:     if (! isempty (idx) && length (varargin) >= 2*idx)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 37
37:       cf = gcf ();
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 39
39:     tmp = __go_axes__ (cf, varargin{:});
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 40
40:     if (__is_handle_visible__ (tmp)) --------------> clears the figure ALL BLANK here
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 41
41:       set (ancestor (cf, "figure"), "currentaxes", tmp);
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 58
58:   if (nargout > 0)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 58
58:   if (nargout > 0)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 59
59:     h = tmp;
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\plot\axes.m at line 62
62: endfunction
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 27
27:   is_matlab_function = true;
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 30
30:   switch (fcn)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 30
30:   switch (fcn)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 30
30:   switch (fcn)

debug> who
Variables in the current scope:

fcn                 is_matlab_function

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 30
30:   switch (fcn)

debug> who
Variables in the current scope:

fcn                 is_matlab_function

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 30
30:   switch (fcn)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 30
30:   switch (fcn)
debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 57
57:     if (ismember (fcn, missing_functions ()))

debug> who
Variables in the current scope:

fcn                 is_matlab_function

debug> dbstep
stopped in C:\Octave\Octave3.6.4_gcc4.6.2\share\octave\3.6.4\m\help\unimplemented.m at line 57
57:     if (ismember (fcn, missing_functions ()))
debug>

Once the figure was cleared it never came back - had to stop at this point.

Looks like a call to axes.m wipes it.

Sorry for the very long mail but took a while to find where it blanks out!

Let me know if this is meaningful.
Cheers
Lester


On 5 August 2013 00:41, Ben Abbott <address@hidden> wrote:
On Aug 4, 2013, at 12:29 PM, Lester Anderson wrote:

> Hi,
>
> I found the defval.m code. From the functions I uploaded, it looks like all it was doing was defining the values of the constant variables, now wehether that is the issue why it was not running correct I do not know. But maybe the solution is more simple.
>
> In the xample I uploaded, all the key things are available, so there are no other toolbox things required. Defval is clearly a Matlab intrinsic function. As I mentioned before, values for 'g' and 'G' can be declared normally without the need for the defval function.
>
> If you can figure out how the plot was created, from those two functions, that would be a big help. If I ignored the defval in the code and replaced it as R=... or G=... etc, it sort of runs but not to generate the output as pected from the image result. Not having worked with Matlab before, I am still learning the procedures with Octave; I have come from a Fortran 95 background. Since a lot of geophysics code is in Matlab, I thought try Octave and see how it copes.
>
> Hopefully I have not gone into the deep end !
>
> Cheers
> Lester

I think you got the wrong defval.m.  The one your looking for is available from the same page you gave a link to earlier.

        http://geoweb.princeton.edu/people/simons/DOTM/defval.m

Ben



Attachment: plot1.png
Description: PNG image

Attachment: coheref2.gif
Description: GIF image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]