« first day (224 days earlier)      last day (4277 days later) » 

12:19 AM
@NasserM.Abbasi well, OK. without knowing anything else, and just looking at x'[t] and theta'[t], I'd we'd need to think about the physics of this, not NDSolve. but maybe I'm wrong
@J.M. there's a joke here? :(
@Mana I was trying to point out to OP that his methods will necessarily be heuristic, since the general problem is hard.
But it seems that the papers were not even glanced at.
@Mana you're everywhere
@Jin I have a lot of interests.
Hey @Jin! How's it going?
12:58 AM
@Mana SE's most interesting man..
@J.M. hello there
@Jin oh wow, my ego can't take this. it's going to over-inflate and explode.
@J.M. guess what I'm doing?
@Mana that statement implies that your ego has a boundary...
@Jin You're not currently munching on bacon, are you?
@Jin he doesn't always visit other chat rooms, but when he does, he visits mma.se
@J.M. no. but i did earlier...
12:59 AM
@Jin I learn new things every day; it didn't, so I guess it doesn't.
@R.M you're correct. I occasionally visit other SE chat rooms when my will is weak. But they meant nothing to me, I swear.
@j.m. Maybe he's just thanking you beforehand. The papers look like they'll take some work to understand
anyways, I'm making top user swag package for MMA.se
also about to send an email to our office manager to buy me Mathematica, my trial ran out.
@r.m. But will they fit toads?
1:02 AM
@Jin it was more along the lines of dos equis man than an actual observation :)
@R.M I feel so ashamed that I missed that meme... I love memes
now go cry in a corner. and no bacon.
@acl they make water repellant ones too
I'm hoping to get the swag made in time for the WRI conference too
and we'll send them to those who are attending.
(and top users of course)
what's typically in the top user package?
Q: SharePoint Stack Exchange Top User Swag

Rebecca ChernoffAs a thank you for being awesome, if you have at least 730 reputation and are on page 1 or page 2 of … http://sharepoint.stackexchange.com/users?tab=reputation&filter=all … we'll be sending you a little care package shortly: SharePoint Stack Exchange t-shirt in your size Sha...

1:05 AM
btw, have you guys ever done round 2 of swag for any site other than SO (and of course, gaming for other reasons)
@R.M no
so the trick is to get in early in the beta, get rep and camp out on page 2
I have made special swag for conference purpose.
Is a sharpie a marker pen in this context?
@acl yes
1:56 AM
Interesting... I never noticed that Epilog doesn't work with LogLinearPlot (or log plots in general)...
@does it really not? I see to remember using it, and something like having to use normal (graphics, not logarithmic) coordinates, but right now can't check as my machines are busy and I am writing on an (apparently now ancient and obsolete) iPad
baah.. never mind. I figured it out. I assumed that using the original coordinates for a point in epilog would work because that's what's displayed on the axes, but I need to use the log10 coordinates
@r.m. Right I remember some irritation before working that out, yes
Still better that the PlotLegends atrocity: works ok, makes your plots unviewable
2:26 AM
@acl Still not right though... the two coordinate systems differ by some scaling factor. i.e., I need to use k Log10@coord, where k is unknown (or some quirky hidden relation)
I think I'll just chuck it and roll my own
2:41 AM
any good question today?
@Verde "to be or not to be?"
that is the question
question = (2 b) || ! (2 b)
@R.M Science may cure you. In two thousand years.
@Verde You're way too optimistic. :)
@acl Are you writing a thesis?
@J.M. A toad becoming human is a gene manip problem. No more than 2000 years if you trust my favorite guru
2:51 AM
@Verde Who, Venter?
(Also, I see that you do not think much of the magical kisses of princesses... ;) )
@J.M. I got a few of those, and my ugliness didn't get better
I mean
@Jin clap!
2:56 AM
clap clap
Hi Jin!
making the sticker next.
the t-shirt is nice
for the conference?
@Verde if you missed the conversation from earlier, this is for the top user swag package we'll send out to MMA.se community
it will be used for the conference too.
nice swag
2:57 AM
the swag will contain MMA.se branded tshirt and sticker, and SE branded pens, stickers and sharpie
Whee, now I'll have two sets of swag! :D
@Jin Very nice from SE!
@J.M. what's the other swag from?
the mod's package?
@Jin probably math.se
3:00 AM
being a mod at sex.se is like being a cameraman at an orgy
@Verde ha.. we actually had a sexuality.se site
but we shut it down
yep. I know
@Jin move the logo a little and tilt it, and it could pass for a linear approximation to a heart
I never browsed the site, but I can guess it was a mess
or polygon heart, whatever
3:03 AM
@R.M paste it here
at least, my heart is not 5 pointed
@R.M toads' hearts are moebius-like
my heart is 5 sided
@Jin sorry, you'll have to undergo open heart surgery to change it to seven sided
damn! Asians aren't copyright repectful
3:05 AM
@R.M k==Log[10] (The log plots draw using natural logs.)
@Verde guilty. my heart is bootlegged.
@BrettChampion facepalm! damn, good thing I rolled my own... I would've marked the axes in decibels otherwise and been off by a factor
@Jin How it feels having your web design turning real? The shirt and all that, I mean
the site is the real deal... this is a chore for Jin
3:07 AM
@Verde I'm used to it now... after 30+ sites.
but i remember the first time I received the Gaming site tshirt, and wearing it...
it felt very surreal
I think my favorite shirt is the Stack Overflow 3rd anniversary shirt.
@Jin You should come to the conference. :-)
Q: Stack Overflow T-shirt, 3rd anniversary edition

JinI was talking to Jarrod the other night about the early days of Stack Overflow. I then realized SO came out of private Beta three years ago. What better way to celebrate this milestone than making a T-shirt for it? I wanted to come up with a design that's interesting and regular SO users can r...

@Jin yeah. It is very different to design for the virtual world, and then materializing it
unicorns! ;)
Did you get that one @verde?
It was after the gaming shirt design, I realized the design isn't just about the community site itself. it's really a total branding package, from the site design, community blog, mod cards, user cards, tshirt, stickers, misc promos etc.
3:10 AM
@Jin I LOVE the meme +100
oh speaking of community blog, I skinned mathematica.blogoverflow.com
@Jin awsome!
@R.M Nope :(
@Jin I already have swag from math.SE; this will be the second time I receive free swag. :)
Now we need to write some posts... anyone have anything in mind?
3:11 AM
@J.M. I think we have this one user, who's active on a lot of our sites... so far he's received 8 packages :)
I think I should get down to writing something at some point...
@Jin Nice!
@Verde In your opinion, is that a good or bad thing? :)
I might have bitten off more than I can chew...
@Jin Hah, good for him. :)
3:11 AM
as far as blogging goes, I'd advise to blog at a pace you(as a community) are comfortable with
just set a pace, doesn't have to feel obligated to get X post/week/month type of thing
or you'll burn yourself out
@J.M. Not sure. Probably depends on your ability to switch jobs
@Jin can we have syntax highlighting (mma.se has its own) on the blog? Perhaps ping a dev on our behalf?
@R.M blog uses Wordpress, which isn't part of the SE engine. I can ask our dev to look into it
@Jin thanks :)
Does any of you have experience with Eigensystem and "large" (on the order of 100x100) sparse matrices?
3:17 AM
@CHM Are they Hermitian?
(and order-86 matrices are considered "medium sized" these days. ;))
@CHM 100x100 is not large by any standards, really
I know.
ok.. I thought you forgot a few zeros :)
3:18 AM
I put it in "" because I don't think it's large either.
@CHM Could you post an ArrayPlot[] of your matrix so we have an idea of the beastie?
I'm just surprised that Mathematica takes so long... almost half an hour for an 86x86
@CHM I'm fairly certain you're doing symbolic computation
Try Eigensystem@N@matrix
No no, I'm not.
@R.M That's what I'm doing.
3:20 AM
That one took 1694.07 s to complete
and it's all numerical?
maybe my computer's dying.
It's... banded. QR is not supposed to take long on this...
Something's fishy here.
3:23 AM
Out of curiosity, how long would be considered normal for such Eigensystem calculation?
One minute AT MOST would be my guess.
question: what would you put a MMA.se sticker on? (it's going to be about 2.5x2.5")
laptop, phone, notebook etc?
But anyway, I'm going to leave my computer sleep for the night.
See if that helps.
@Jin My corkboard.
@CHM Depends on the computer... :D
@J.M. 2009 MBP with 10.6.8 running MMA 8.0.4
Damn, you got my hopes up with version 10... :D
3:29 AM
Actually, Eigensystem is not the problem... this function is:
eigenSystem[matrix_] := Module[{out, evals, evecs},
Clear[evals, evecs];
{evals, evecs} = Eigensystem@N@matrix;
evecs = Orthogonalize@evecs;
out = SortBy[Transpose[{evals, evecs}], First]
Anyway, yes, a minute and a half would be already rather slow.
@CHM Do you know that if your matrix is symmetric and numeric, then the eigenvectors are already normalized after Eigensystem[] is done with it?
@CHM With[{mat = RandomReal[1, {86, 86}]}, Eigensystem@mat; // AbsoluteTiming] gives 0.006165 on my machine
and this is without any symmetry or structure in the matrix. It'll be faster if there's structure
@R.M That's ridiculous.
@J.M. They're not orthogonal, I have to make sure they are.
That's why we said, 86x86 is really piece of cake... I think the issue lies elsewhere
Thanks for the comforting - I would have been EXTREMELY surprised to have to wait 30 minutes for such computations.
3:31 AM
@CHM Oh, you checked? SFAICT the orthogonalization is already automatic for Hermitian matrices...
(i.e. evecs.ConjugateTranspose[evecs] ought to give the identity matrix.)
But they're always sparse!
@CHM Ah, I see. I thought you said that the matrices were Hermitian...
They are - now you know where the problem lies: in my head.
I was just confusing my matrix with my molecule.
It might surprise you that finding the eigensystem of a banded matrix can be faster than performing Gram-Schmidt on a dense matrix of comparable size...
@Jin nice job of the blog skinning, thanks!
3:37 AM
Anyway, lunch time for me. Later, you guys (and gal. Hey @Verbeia!)
@Verbeia my pleasure.
@J.M. Hmm. I'm just beginning to use numerical computation - most of my work until now was done analytically. I have no idea of the algorithms used in one case or another, so I'm not really surprised. Thanks though.
4:01 AM
I'm actually puzzled by the behaviour in this question, which I've replicated. Is this just one of those fundamental calculus things that I've forgotten?
4:12 AM
@Verbeia Well, one can't split integrals like how he expects... integration is definitely messier than differentiation
For e.g., integral of 1/x is Log[x] and of x is (x^2)/2, but one cannot deduce that the integral of 1 = x * 1/x is x from these two
@R.M yes, but not even be able to pull out the constant q? (the fact that it's q[t] in the OP's code doesn't change the behaviour)
I must be missing something. Anyway, gotta go to a meeting so lunchbreak definitely over. Bye all.
4:37 AM
@Verbeia well, it doesn't always pull the constants out... try replacing q[t] with 1 or something, for example. It can't get more constanty than that! I think I might have seen a question somewhere on it. Maybe not. I think Mathematica figures out that it cannot proceed anywhere with this integral and doesn't bother pulling the constant out. This is reasonable, given that the general behaviour when it cannot do something is to return the input unevaluated
4 hours later…
8:36 AM
Hello. I am looking at the nice Weighted Histogram mathematica.stackexchange.com/a/3996/1089 and I am puzzled by the following
why doesn't `Histogram[ {1, 2, 2, 3, 3, 3, 4, 4, 5}, {1, 6, 1}]` return the same as `WeightedHistogram[
Array[1 # &, {9}] -> {1, 2, 2, 3, 3, 3, 4, 4, 5}, {1, 6, 1}]`
There are 2 issues i) the scope is different ii) the amplitude is different
Even ``WeightedHistogram[
Array[1/9 # &, {9}] -> {1, 2, 2, 3, 3, 3, 4, 4, 5}, {1, 6, 1}]` doesn't yield the same amplitude
3 hours later…
11:30 AM
Q: Should we allow Project Euler questions?

Sjoerd C. de VriesRecently, we received two project Euler questions: How to find palindromic numbers (Project Euler #4)? How to improve the performance of solutions to Project Euler (#39)? I won't claim they are off-topic here. In fact, they often make exemplary Mathematica questions. However, I feel it goes a...

1 hour later…
12:57 PM
A quickie: what's the default ColorFunction used by MatrixPlot[]?
1:19 PM
@J.M. Good question, "SunsetColors" seems to be closest, but I don't think it's any of the ColorData["Gradients"]. I would have expected AbsoluteOptions[MatrixPlot[mat], ColorFunction] to return something but it doesn't.
@J.M. Something similar to (Flatten[ColorData["Gradients"]][[29]])
So, it looks to be unique to MatrixPlot[], then?
Another interesting bit: ArrayPlot[] and MatrixPlot[] seem to be the only functions that accept the ColorFunction -> "Monochrome" setting...
1:50 PM
    RGBColor[0.26048676279850463`, 0.13684290836957352`,
     0.8915693904020753`]}, {0.1666667`,
    RGBColor[0.2301976043335622`, 0.49996185244525826`,
     0.8481879911497673`]}, {0.333333`,
    RGBColor[0.3924010070954452`, 0.6587624933241779`,
     0.797589074540322`]}, {0.499999`,
    RGBColor[0.6483710994125277`, 0.8233157854581521`,
     0.8988021667811094`]}, {0.5`, GrayLevel[1]}, {0.500001`,
    RGBColor[0.8578316929884794`, 0.8576028076600289`,
     0.6542305638208591`]}, {0.666667`,
@J.M. ^^
@R.M How'd you get that out?
used a hook to print out what it was using
Could you show the code? I'm curious.
Rule[ColorFunction, arg_] := Block[{$flag = True},
    Rule[ColorFunction, arg]
] /; ! TrueQ[$flag]
It's the Villegas–Gayley trick to inject custom code
Cool. :)
1:58 PM
@R.M Neat detective work!
You should also be aware that MatrixPlot does some rescaling of the matrix entries internally, so plugging this into ArrayPlot wouldn't give the exact same answer unless the same rescaling is used
Ah, right. Thanks for the reminder. It isn't the simple rescaling by Min[]/Max[], I suppose...
I don't know... never really tried figuring it out. I don't normally use MatrixPlot
I tend to prefer ArrayPlot[] myself, since all I use it for is to look at sparsity patterns. It's just that the coloring by MatrixPlot[] got me curious, since I couldn't copy it...
It's even easier with TracePrint[MatrixPlot[mat], Blend[___], TraceInternal -> True]
I just found out and wanted to post, but R>M. already beat me.
2:11 PM
@SjoerdC.deVries I tried out TracePrint[] actually, but I keep forgetting that TraceInternal option...
@SjoerdC.deVries Isn't that only because you now know that you need to be looking for a Blend? What if you wanted to find out generally?
@R.M. I believe all gradients are made with \Blend
I'm still confused by Trace and friends and very rarely use it (and every time I do, I forget what I was looking for in the first place)
@r.m I did a naked TracePrint first and almost blew up my computer ;-(
Then I started looking for colorfunction type keywords
@SjoerdC.deVries Hmm... good point.
2:14 PM
@SjoerdC.deVries That's why most people are intimidated by TracePrint[], I'm told. :D
rats, I keep forgetting to pull the On[] trick on someone...
I had to kill the kernel
mmmm, On trick?
@SjoerdC.deVries I did that too... I thought "Hey, let me remove this Blend guy and see what it spits out"... :(
@SjoerdC.deVries Have a guy execute On[] before doing anything else.
@SjoerdC.deVries You know those code dumpers who pile pages of code upon us and say "it doesn't work"... I've always wanted to tell them to try On[] and look for messages and see where the error lies
2:17 PM
Fair's fair, right? I read your code, you read the messages
It's not as evil as having a novice do rm -rf * on the Terminal, but still delicious... >:)
@SjoerdC.deVries I don't think PE questions should be closed... we should evaluate it just like any other question — if it is about Mathematica and reasonably scoped (i.e. not 95% math, 5% basic mma type), then it should stay open
@J.M. OSs that allow that are evil
I don't have time for an answer now, but I'll write one later
2:22 PM
@R.M OK. Looking forward to it
I'd much rather we enforce the spirit of Google and spirit of Documentation center first than spirit of Euler
@R.M. spirit of Documentation center?
heh, the spirit of looking in the docs before you ask ;)
2 hours later…
4:07 PM
@J.M. according to the docs, the eigenvectors for degenerate eigenvalues are chosen to be linearly independent, not orthogonal. This applies to Hermitian matrices, too. This has bitten me fairly often, unfortunately.
4:18 PM
posted on August 29, 2012 by William Sehorn

In Stephen Wolfram’s personal analytics blog post, he showed a number of interesting plots of the steps he’s recorded on his pedometer over the past two years. Each plot highlighted a different feature of his activity. For example, this daily step distribution makes it clear that Stephen is typically most physically active around noon: In [...]

@rcollyer How very odd...
q = Orthogonalize[RandomVariate[NormalDistribution[], {5, 5}]];
m = q.DiagonalMatrix[{4, 3, 2, 2, 1}].ConjugateTranspose[q];
v = Eigenvectors[m];
Chop[ConjugateTranspose[v].v] == IdentityMatrix[5]
and compare with
q = Orthogonalize[
   RandomVariate[NormalDistribution[], {5, 5}] +
    I RandomVariate[NormalDistribution[], {5, 5}]];
m = q.DiagonalMatrix[{4, 3, 2, 2, 1}].ConjugateTranspose[q];
v = Eigenvectors[m];
Chop[ConjugateTranspose[v].v] == IdentityMatrix[5]
So, the implementation for Hermitian matrices is botched, somewhat...
4:44 PM
@ J.M quick question: do you know if there is a mathematica function, say Digitize[] which would behave like that: given tt = {5, 3, 1, 5, 5, 2, 1, 5}
Digitize[tt, Range[1, 6]] would return
{6, 4, 2, 6, 6, 3, 2, 6} i.e. return the index for each tt of the bin in which tt falls.
For instance 2 is the index of the second bin (1 being the index corresponding to tt<1).
6 is the bin tt>= 5 and tt<6 etc..
Does it make sense?
@chris Nothing built-in IIRC, but this could be implemented...
5:06 PM
@J.M. OK. Its odd because its a rather useful building block for a few things.
@chris Well, BinLists[] and BinCounts[] would be helpful here, though.
Maybe something like f[l1_, l2_] := Flatten[Position[BinLists[l1, {Prepend[l2, 0]}], {# ..}] & /@ l1].
reverse engineering optimization problems is not fun
I have what seems to be an optimal solution, but I don't know for what :P
5:22 PM
@R.M like looking at machine code in a debugger that was compiled with -O3?
you really lost me there, but I think I'm supposed to say yes :P
@J.M. Not necessarily. The eigenspaces between different eigenvalues are orthogonal, but it is not necessary to have the vectors within an eigenspace be orthogonal as long as they span the space.
@R.M In gcc, -O3 is the highest level of optimization and the resulting machine code is usually incomprehensible to humans.
@rcollyer ah, you're here. About this... you suggest using LinearModelFit because of the complex numbers. Do you know how the *ModelFit functions handle complex-valued least squares? I couldn't work out how they would do it except in the (manual) way that I showed, but if they were doing that, we wouldn't have this problem in the first place...
@J.M It certainly seems to do the trick!
@OleksandrR. no idea. I would hope that it could handle it in a number space agnostic way, though.
5:30 PM
@J.M not quite what I had in mind since Dimensions[f[l1, l2]]!= Dimensions[l1] when l1 contains values above the max of l2
@rcollyer yes, I would hope that too, but I don't really know if it's possible in general. The fact that it sometimes breaks down suggests that, if it is, it's not implemented that way in these functions.
Also, is the fact that they can (perhaps) manage complex valued data actually documented? I couldn't find a mention of it and assumed that they couldn't do it.
@OleksandrR. well it uses LAPACK under the hood, and those are not type agnostic. So, I guess it doesn't do quite enough checking.
@OleksandrR. I don't know. My assumption was that it could.
But, I have not tried it.
I thought most of theorems applied equally well to reals as well as complex numbers.
(in least squares fitting, that is)
@J.M it seems performance is not extraordinary. tt = RandomInteger[{1, 6}, 15000];
tt2 = ff[tt, Range[5]]; // Timing; (*{50.9722,Null}.*).
@rcollyer I know, but if memory serves the Hermitian QR algorithm is guaranteed to produce orthogonal vectors (since the eigenvectors are built from multiplication with various unitary matrices). Oh well...
@chris Ah, hmm. A bit more finesse, then.
@rcollyer if you assume the Euclidean norm, yes, I think so. But a priori, especially for nonlinear fits, I don't really see why one must choose that. What about the norm in the {Abs, Arg} space, for example? Maybe I'm missing something; I didn't work this through myself yet.
5:46 PM
@R.M Again, thanks for that! I found where it came from after seeing the output of ??Graphics`ArrayPlotDump`Private`MatrixPlotInternal .
nice! :)
@chris, are you still here? I have an idea for your 3D critical points problem...
I realized you might be able to use the answers to this question; you can use the techniques there to find the curves of intersection of two of the partial derivatives, and then monitor where the sign of the other partial derivative changes at those points. Basically, a primitive curve-following method.
Once you locate where the sign changes, you have something to feed to FindRoot[] for subsequent polishing.
6:10 PM
@yes sorry
@laptop ran out of juice
I know one method which would work called marching cube. My student implemented it in C. I was wondering if there was a nifty mathematica way of doing it differently.
6:43 PM
@J.M I ll look at your link.
7:14 PM
Does anyone know how to backup a hsqldb database that I created from MMA? And how to move it to another PC? I tried what I found obvious but it didn't work
1 hour later…
8:18 PM
@J.M I tried the following nn = 16;

u = GaussianRandomField[nn, 3, Function[k, Exp[-k^2/2]/k]] // Re;
uf = ListInterpolation[u];
fx = Function[{x, y, z}, D[uf[x, y, z], x] // Evaluate];
fy = Function[{x, y, z}, D[uf[x, y, z], y] // Evaluate];
fz = Function[{x, y, z}, D[uf[x, y, z], z] // Evaluate];

ContourPlot3D[{fx[x, y, z], fy[x, y, z]}, {x, 1, nn}, {y, 1, nn}, {z,
1, nn}, Contours -> {0}, ContourStyle -> Opacity[0], Mesh -> None,
BoundaryStyle -> {2 -> None, {1, 2} -> {{Green, Tube[.1]}}},
it produces !Mathematica graphics
which if I understand you correctly would be a starting point to find the critical points while repeating the operation on {fx[x, y, z], fz[x, y, z]} say?
8:32 PM
one simple question:
if I define a function as f[x_] := 3 - 5 x - 2 x^2;
and want to get result Simplify[f[x + h]] it gives me result as: 3 - 5 (h + x) - 2 (h + x)^2;

how can I make MMA to preform calculations further. Thank you for help :)
9:05 PM
@balboa If by perform calculations further you mean combine terms after expansion, you want to expand the equation first before you simplify it.
So, Simplify[Expand[f[x + h]]], gives you 3 - 2 h^2 - 5 x - 2 x^2 - h (5 + 4 x)
er, got them backwards. fixed now.
9:21 PM
@Mana thank you!
@balboa no problem, glad I could help! There are probably better or different ways to do this though, given how powerful Mathematica is. I'm a total newbie myself.
2 hours later…
11:15 PM
@chris Well, if you extract those green lines, and then apply fz[] on the coordinates, you then look for sign changes.
@chris Marching cubes is what I believe they use for 3D contour plots...

« first day (224 days earlier)      last day (4277 days later) »