annotate scripts/plot/__plr2__.m @ 2303:5cffc4b8de57

[project @ 1996-06-24 09:15:24 by jwe]
author jwe
date Mon, 24 Jun 1996 09:15:24 +0000
parents 5d29638dd524
children 5ca126254d15
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2303
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
1 ### Copyright (C) 1996 John W. Eaton
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
2 ###
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
3 ### This file is part of Octave.
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
4 ###
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
5 ### Octave is free software; you can redistribute it and/or modify it
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
6 ### under the terms of the GNU General Public License as published by
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
7 ### the Free Software Foundation; either version 2, or (at your option)
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
8 ### any later version.
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
9 ###
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
10 ### Octave is distributed in the hope that it will be useful, but
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
11 ### WITHOUT ANY WARRANTY; without even the implied warranty of
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
12 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
13 ### General Public License for more details.
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
14 ###
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
15 ### You should have received a copy of the GNU General Public License
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
16 ### along with Octave; see the file COPYING. If not, write to the Free
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
17 ### Software Foundation, 59 Temple Place - Suite 330, Boston, MA
5cffc4b8de57 [project @ 1996-06-24 09:15:24 by jwe]
jwe
parents: 1887
diff changeset
18 ### 02111-1307, USA.
933
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
19
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
20 function polar_int_2 (theta, rho, fmt)
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
21
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
22 if (nargin != 3)
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
23 usage ("polar_int_2 (theta, rho, fmt)");
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
24 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
25
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
26 if (any (imag (theta)))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
27 theta = real (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
28 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
29
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
30 if (any (imag (rho)))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
31 rho = real (rho);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
32 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
33
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
34 if (is_scalar (theta))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
35 if (is_scalar (rho))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
36 x = rho * cos (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
37 y = rho * sin (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
38 plot_2_s_s (x, y, fmt);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
39 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
40 elseif (is_vector (theta))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
41 if (is_vector (rho))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
42 if (length (theta) != length (rho))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
43 error ("polar: vector lengths must match");
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
44 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
45 if (rows (rho) == 1)
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
46 rho = rho';
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
47 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
48 if (rows (theta) == 1)
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
49 theta = theta';
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
50 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
51 x = rho .* cos (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
52 y = rho .* sin (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
53 plot_2_v_v (x, y, fmt);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
54 elseif (is_matrix (rho))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
55 [t_nr, t_nc] = size (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
56 if (t_nr == 1)
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
57 theta = theta';
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
58 tmp = t_nr;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
59 t_nr = t_nc;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
60 t_nc = tmp;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
61 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
62 [r_nr, r_nc] = size (rho);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
63 if (t_nr != r_nr)
1303
f85193c7dabc [project @ 1995-05-02 21:18:31 by jwe]
jwe
parents: 1014
diff changeset
64 rho = rho';
933
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
65 tmp = r_nr;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
66 r_nr = r_nc;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
67 r_nc = tmp;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
68 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
69 if (t_nr != r_nr)
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
70 error ("polar: vector and matrix sizes must match");
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
71 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
72 x = diag (cos (theta)) * rho;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
73 y = diag (sin (theta)) * rho;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
74 plot_2_v_m (x, y, fmt);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
75 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
76 elseif (is_matrix (theta))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
77 if (is_vector (rho))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
78 [r_nr, r_nc] = size (rho);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
79 if (r_nr == 1)
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
80 rho = rho';
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
81 tmp = r_nr;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
82 r_nr = r_nc;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
83 r_nc = tmp;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
84 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
85 [t_nr, t_nc] = size (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
86 if (r_nr != t_nr)
1303
f85193c7dabc [project @ 1995-05-02 21:18:31 by jwe]
jwe
parents: 1014
diff changeset
87 theta = theta';
933
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
88 tmp = t_nr;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
89 t_nr = t_nc;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
90 t_nc = tmp;
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
91 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
92 if (r_nr != t_nr)
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
93 error ("polar: vector and matrix sizes must match");
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
94 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
95 diag_r = diag (r);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
96 x = diag_r * cos (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
97 y = diag_r * sin (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
98 plot_2_m_v (x, y, fmt);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
99 elseif (is_matrix (rho))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
100 if (size (rho) != size (theta))
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
101 error ("polar: matrix dimensions must match");
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
102 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
103 x = rho .* cos (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
104 y = rho .* sin (theta);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
105 plot_2_m_m (x, y, fmt);
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
106 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
107 endif
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
108
598a3aa40360 [project @ 1994-11-17 04:23:41 by jwe]
jwe
parents:
diff changeset
109 endfunction