9,701 reputation
1644
bio website
location
age
visits member for 2 years, 8 months
seen 5 hours ago

Mar
24
comment Controlling output of graphics, the role of “;” and code structure/formatting
I think the recommended way is to use Print[Show[...]]; per line. Unlike Print, Show has no side effects (at least not since the major changes in how graphics are handled in version 6). The magenta highlighting doesn't really indicate a syntax error, I'd rather consider it an error in the highlighting. If you find that highlighting irritating you could put the ; after the comment, add another ; after the comment or explicitly put Null after it. As documented a;b; is actually CompoundExpression[a,b,Null] ...
Mar
24
comment NDSolve in exact points - nonlinear equation (Degrees and Radians confusion)
As your interpolating functions are only valid in the t-range where you solved the equation you should include that as a constraint. I would also suggest to use NMinimize/NMaximize if you search a global min/max of a numeric function, they seem to work well for your problem:NMaximize[{zsol[t], 0 <= t <= 15}, t]
Mar
21
revised WhenEvent for several variables
added links to the refs
Mar
21
answered WhenEvent for several variables
Mar
21
comment Issue with Compile
The syntax of ReplacePart (documentation for V5.2) has changed. It might be that Compile hasn't learned that change (a probable reason is that newer versions with the new syntax can use patterns which Compile couldn't support anyway). In an uncompiled evalation the old syntax still seems to work...
Mar
21
comment How can I get WhenEvent to recognize criterion I specify?
@usumdelphini: it is difficult to analyze what's going wrong without seeing the actual code. If the above suggestions don't help for your case I'd suggest to write a new question with giving more details, especially a working example will always help wonders to generate useful answers...
Mar
14
comment How to get list of duplicates when using DeleteDuplicates?
I just have noticed an upvote on this answer and guessed that was related to this question. I think the fact that a function in matlab gets the information about how many arguments its caller expects from it is very unique and somewhat unusual (are there other languages having this?). My mentioned answer did mimic that behavior by examining the stack, but it's more a hack than a solution. Without that feature, you can of course not expect a function to return different things depending on how many return values the caller expects...
Mar
10
answered Launching external program in background process with ParallelSubmit
Mar
10
comment Launching external program in background process with ParallelSubmit
I think you just need to DistributeDefinitions for runFijiMacro (and potentially other self-defined functions you are using within it). My guess of what happens is that the function is not known in the parallel kernels and they return the unevaluated expression. Only when these are returned to the main kernel with the WaitAll they are evaluated -- sequentially on the main kernel. Search the documentation for ParallelSubmit for DistributeDefinitions to find an example usage and some more details...
Mar
7
answered Fast way to get positions of “boxed” array elements?
Mar
6
comment Merging two held expressions into a held compound expression
@zorank: @@ is a shortcut for Apply. @@@ is a shortcut for Apply[_,_,{1}] that is apply at first level. You'll find details in the documentation for Apply...
Mar
4
answered Merging two held expressions into a held compound expression
Mar
4
comment Why does Plot[Hold[x], {x,0,1}] work?
I would absolutely agree with your guess that it is the internal handling of evaluation control which make these work accidentially. The question remains whether that indicates that these internally do more ReleaseHolds than necessary and whether that is intended or a lack of attention. In any case it seem to not cause much problems, I think?
Mar
2
revised GUI and Dynamic update problems
added missing definition for identity
Mar
2
comment NDSolve with varying PrecisionGoal and WorkingPrecision
I'm not sure but I think that the difference might be that with a higher lower bound NDSolve will try to make an exact match in the x-steps for that value which might result in a slightly different discretization. You can see similar effects with e.g. NDSolve[{y'[x] == y[x] Cos[x + y[x]], y[0] == 1}, y, {x, 0, 5, 30}, WorkingPrecision -> 50, PrecisionGoal -> 50]. See e.g. this answer about the undocumented feature I used here for the x range specification...
Mar
2
answered GUI and Dynamic update problems
Mar
2
comment NDSolve with varying PrecisionGoal and WorkingPrecision
I think this doesn't really do what you expect and the OP intended: if you give a start value for x=0 but ask NDSolve to solve for x=5 to x=30 in the second call it will actually solve from x=0 with high precision but only store the results from 5 to 30 in the result. If you want to only solve with low precision you should instead give the lower precision endpoint result as starting value for the second call, something like: y[0] == SetPrecision[(y /. First@low)[5], 50]...
Feb
11
revised How to make a single-variable out of a NDSolve solution?
added 149 characters in body
Feb
11
comment How to make a single-variable out of a NDSolve solution?
@Sektor: I of course appreciate your politeness :-)
Feb
10
comment Changing package content in batch
I'm actually surprised that my comment seems more relevant than I thought. The problem is that importing and reexporting won't create the same thing as the Mathematica-specific "ascii"-encoding of special characters is only correctly done when using the CharacterEncoding option for Export. Here is an example to play with: ExportString[ImportString["b [Rule] a", "Text"], "Text"]. Of course this is mainly relevant if the package files are generated from a notebook with the auto save as package functionality, otherwise you probably won't expect such characters in a package file...