Reply by dbd January 14, 20132013-01-14
On Monday, January 14, 2013 11:46:23 AM UTC-8, Bryan wrote:
> ... > You seem to have a problem comprehending my post. I never stated I failed to understand how to acheive a normal or Hermitian transpose, just that I've fallen victim to mistakenly using one when the other was intended, just as others have noted. You pasted a portion of the page that provided no logic toward the difference between ' and .'. Clearly, given that multiple users on this thread have made this mistake before lends itself to the fact that it's not intuitive syntax.
You seem to have a problem understanding the Matlab documentation. It states their usage of "array operation" and "matrix operation" and lists every operator example. That the usage in Matlab documentation and syntax is not the same as your previous usage of "array" and "matrix" or whether you distinguish between "array" and "matrix" at all outside of Matlab documentation and syntax is irrelevant. It wasn't until your third post that you used the word "intuitive". That concept may be where the problem is. My point is that in computer syntax, people who think it is appropriate to substitute their personal intuition for documented rules and definitions (the "intuitions of the language designers" if you must describe things in terms of intuitions) are behaving incompetently even if such people are not uncommon.
> > The caret operator in my previous post was meant to indicate superscript, but I'm sure you knew that.
Your use of syntax (x^T, x^H) was, perhaps, intuitive to you. It is also ambiguous and as a substitute for the Matlab syntax (or even if it is not such a substitute) is therefore broken. In a forum with an ASCII interface, I find it intuitive to consider "^" in a mathematical expression to be an operator and not as direction to a non-existent typesetter. But you are right, I didn't let my intuition keep me from understanding the intent despite an "obvious" error. In English text we can tolerate more error than in computer language syntax. If you want to reduce coding error while acting on "intuition", expect to learn a different "intuition" for each computer language you use. Expect to learn that "intuition" from the documentation and specifications, not your personal baggage. "The nice thing about standards is that there are so many of them to choose from." Andrew S. Tannenbaum (disputed:) Dale B. Dalrymple
Reply by Bryan January 14, 20132013-01-14
On Monday, January 14, 2013 11:30:14 AM UTC-7, dbd wrote:
> On Monday, January 14, 2013 5:42:07 AM UTC-8, Bryan wrote: >... > I've RTFM, thanks. That's not my issue; my issue is the choice of notation (' and .'). In linear algebra, the standard notation is defined by x^T for transpose and x^H for Hermitian (conjugate) transpose. But since you brought it up, how does the paragraph you posted explain the behavior of ' vs .'? What is an elementwise transpose? What is an array transpose? Transpose is by its nature a matrix operation. If you were competent to RTFM or you had bothered to read the single arithmetic operators page I referenced for you, you would know the answers to your questions. The willfully ignorant need their hands held more. From the referenced page for those of you who can't figure out how to read from the net on your own: ' Matrix transpose. A' is the linear algebraic transpose of A. For complex matrices, this is the complex conjugate transpose. .' Array transpose. A.' is the array transpose of A. For complex matrices, this does not involve conjugation. Descriptions are also available there all other operator/dot-operator pairs which provide examples for those unable to interpret "element by element" on their own. http://www.mathworks.com/help/matlab/ref/arithmeticoperators.html Designers of computer languages often try to make their operations easily entered by computer keyboard to avoid having to implement editors and GUIs that emulate the full range of symbology available to typographers or having verbose descriptions embedded in the operator's expression. Self-consistency and avoidance of ambiguity within the language are the usual values driving decisions. Manuals are then used to delineate the choices made to work with the keyboard. Different languages have different manuals. That's why it is important to pay attention when reading the manual for a language you are using. Along those lines, I was not aware of any texts that use "x^T" instead of x-with a superscript-T or "x^H" instead of x-with a superscript-H. Can you give some examples? How do they resolve the ambiguities with "x raised to the T-th power" and "x raised to the H-th power"? Dale B. Dalrymple
You seem to have a problem comprehending my post. I never stated I failed to understand how to acheive a normal or Hermitian transpose, just that I've fallen victim to mistakenly using one when the other was intended, just as others have noted. You pasted a portion of the page that provided no logic toward the difference between ' and .'. Clearly, given that multiple users on this thread have made this mistake before lends itself to the fact that it's not intuitive syntax. The caret operator in my previous post was meant to indicate superscript, but I'm sure you knew that.
Reply by dbd January 14, 20132013-01-14
On Monday, January 14, 2013 5:42:07 AM UTC-8, Bryan wrote:
>... > I've RTFM, thanks. That's not my issue; my issue is the choice of notation (' and .'). In linear algebra, the standard notation is defined by x^T for transpose and x^H for Hermitian (conjugate) transpose. But since you brought it up, how does the paragraph you posted explain the behavior of ' vs .'? What is an elementwise transpose? What is an array transpose? Transpose is by its nature a matrix operation.
If you were competent to RTFM or you had bothered to read the single arithmetic operators page I referenced for you, you would know the answers to your questions. The willfully ignorant need their hands held more. From the referenced page for those of you who can't figure out how to read from the net on your own: ' Matrix transpose. A' is the linear algebraic transpose of A. For complex matrices, this is the complex conjugate transpose. .' Array transpose. A.' is the array transpose of A. For complex matrices, this does not involve conjugation. Descriptions are also available there all other operator/dot-operator pairs which provide examples for those unable to interpret "element by element" on their own. http://www.mathworks.com/help/matlab/ref/arithmeticoperators.html Designers of computer languages often try to make their operations easily entered by computer keyboard to avoid having to implement editors and GUIs that emulate the full range of symbology available to typographers or having verbose descriptions embedded in the operator's expression. Self-consistency and avoidance of ambiguity within the language are the usual values driving decisions. Manuals are then used to delineate the choices made to work with the keyboard. Different languages have different manuals. That's why it is important to pay attention when reading the manual for a language you are using. Along those lines, I was not aware of any texts that use "x^T" instead of x-with a superscript-T or "x^H" instead of x-with a superscript-H. Can you give some examples? How do they resolve the ambiguities with "x raised to the T-th power" and "x raised to the H-th power"? Dale B. Dalrymple
Reply by Bryan January 14, 20132013-01-14
On Saturday, January 12, 2013 12:50:26 AM UTC-7, dbd wrote:
> On Friday, January 11, 2013 6:53:58 AM UTC-8, Bryan wrote: ... > > Add me to that list. I think MATLAB needs better notation to make the two more distinct. At least that's my excuse :) From: http://www.mathworks.com/help/matlab/ref/arithmeticoperators.html "MATLAB software has two different types of arithmetic operations. Matrix arithmetic operations are defined by the rules of linear algebra. Array arithmetic operations are carried out element by element, and can be used with multidimensional arrays. The period character (.) distinguishes the array operations from the matrix operations. However, since the matrix and array operations are the same for addition and subtraction, the character pairs .+ and .- are not used." RTFM? Dale B. Dalrymple
I've RTFM, thanks. That's not my issue; my issue is the choice of notation (' and .'). In linear algebra, the standard notation is defined by x^T for transpose and x^H for Hermitian (conjugate) transpose. But since you brought it up, how does the paragraph you posted explain the behavior of ' vs .'? What is an elementwise transpose? What is an array transpose? Transpose is by its nature a matrix operation.
Reply by dbd January 12, 20132013-01-12
On Friday, January 11, 2013 6:53:58 AM UTC-8, Bryan wrote:
...
> > Add me to that list. I think MATLAB needs better notation to make the two more distinct. At least that's my excuse :)
From: http://www.mathworks.com/help/matlab/ref/arithmeticoperators.html "MATLAB software has two different types of arithmetic operations. Matrix arithmetic operations are defined by the rules of linear algebra. Array arithmetic operations are carried out element by element, and can be used with multidimensional arrays. The period character (.) distinguishes the array operations from the matrix operations. However, since the matrix and array operations are the same for addition and subtraction, the character pairs .+ and .- are not used." RTFM? Dale B. Dalrymple
Reply by Bryan January 11, 20132013-01-11
On Thursday, January 10, 2013 4:38:08 PM UTC-7, Rick Lyons wrote:
> On Thu, 10 Jan 2013 18:21:03 +0100, "willi" wrote: >out is a row vector but displayed as column vector. >Did you by any chance type: out' >This will display the conjugated transpose of out, try: out.' Good job willi! (That conjugation that takes place during transposition has tripped me up more than once.) [-Rick-]
Add me to that list. I think MATLAB needs better notation to make the two more distinct. At least that's my excuse :)
Reply by Rick Lyons January 10, 20132013-01-10
On Thu, 10 Jan 2013 18:21:03 +0100, "willi"
<williwie_123_rm_321_@hotmail.com> wrote:

>out is a row vector but displayed as column vector. >Did you by any chance type: out' >This will display the conjugated transpose of out, try: out.'
Good job willi! (That conjugation that takes place during transposition has tripped me up more than once.) [-Rick-]
Reply by Tim Wescott January 10, 20132013-01-10
On Thu, 10 Jan 2013 11:28:57 -0600, sudarshan_onkar wrote:

>>out is a row vector but displayed as column vector. Did you by any >>chance type: out' >>This will display the conjugated transpose of out, try: out.' >> >>-- >>rgds >> >> >> > Yes. That was the issue. Thanks a lot.
That trips me up all the time, too. -- My liberal friends think I'm a conservative kook. My conservative friends think I'm a liberal kook. Why am I not happy that they have found common ground? Tim Wescott, Communications, Control, Circuits & Software http://www.wescottdesign.com
Reply by sudarshan_onkar January 10, 20132013-01-10
>out is a row vector but displayed as column vector. >Did you by any chance type: out' >This will display the conjugated transpose of out, try: out.' > >-- >rgds > >
Yes. That was the issue. Thanks a lot. Regards Sudarshan
Reply by willi January 10, 20132013-01-10
out is a row vector but displayed as column vector. 
Did you by any chance type: out'
This will display the conjugated transpose of out, try:  out.'

--
rgds