Singularhttp://www.singular.uni-kl.de/forum/ Symbolic computation in a procedurehttp://www.singular.uni-kl.de/forum/viewtopic.php?f=10&t=2574 Page 1 of 1

 Author: jcapcotemp [ Mon Feb 20, 2017 11:52 am ] Post subject: Symbolic computation in a procedure Hi,I am new to singular and have much more experience in mathematica and maple. One thing that separates singular from the other CAS I know is that indeterminates (I call them "symbols") have to be iniitated in a ring before doing any kind of algebra. Now suppose I create a procedure, in here it seems that singular does not care if the ring variables have not been defined. But what confuses me is that the following does not workCode:proc test123(){  return v(1)*v(2);}ring A = 0,(v(1..2)),dp;test123();I'm not really sure how to use the ring variables in the procedure and the documentation does not make me any wiser. Any help would be appreciated. I am trying to ports most of my codes (algebraic geometry for kinematics) to singular because this gives me the opportunity to continue using a free CAS and distribute this to interested people (without requiring them to have maple) and I am slowly getting annoyed of maples slowness (commandline execution gets slower after every new version of maple and older maple are known to be difficult when operating system updates). I also like and feel more comfortable with the C/C++ structure of singular.

 Author: gorzel [ Mon Feb 20, 2017 3:18 pm ] Post subject: Re: Symbolic computation in a procedure Almost any command in Singular needs to be called with (may be empty) parentheses. The return command is not exception from this rule. So put the ( ), and it works as desired.Code:> proc test123()  {    return(v(1)*v(2)); }> ring A = 0,(v(1..2)),dp;> test123();v(1)*v(2)Hint: To make this proc independent of the names of the variables, write:Code:> proc test1234()  {    return(var(1)*var(2)); }> ring rdp = 0,(x,y),dp;> test1234();xy

 Page 1 of 1 All times are UTC + 1 hour [ DST ] Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Grouphttp://www.phpbb.com/