« first day (2718 days earlier)      last day (2067 days later) » 

03:51
Psssssst @Jason
I'm trying to use ComplexPlot with PrimeZetaP but it just plots a blank canvas. Zeta works fine. Anyone know how to solve this?
@JasonB. your MoleculePlot3D ((did you head this one?)) function plots chiral structures in the exact same manner, I don't think it is supposed to do that! Any way I can get the chiral structure to be accentuated? One example is with + and - limonene
I'm probably dumb, but entering the entities in MoleculePlot3D and asking true or false for equivalency gives true
@gwr I'll say something to someone, not having any authority or standing, but I'm within reach of those who matter! I noticed it takes a bit, but they always get back to you.I'm still battling for an answer to the system-wide reformatting of notebooks issue I had earlier this month
While I'm here clogging up the feed, does anyone know how to automatically evaluate in place? I am making an educational notebook, and I figure that doing that instead of copying output is a lot more functional?
 
4 hours later…
07:50
@CarlLange @C.E. if you want to go a pure Mathematica route you can also use the XMLGraph stuff I presented in that same question. I use this all the time for scraping these days. (I was just thinking about this because I was just using it...)
Forces you to use weird syntax though because I like the weird syntax
radiiXML =
  Import["https://en.wikipedia.org/wiki/Atomic_radii_of_the_elements_(data_\
page)", {"HTML", "XMLObject"}];

<< XMLGraph`

g = XMLGraph[radiiXML]

Values[g@"Children"[g@"Select"[".wikitable td"]]][[2 ;; ;; 9]]

{{"H"}, {"He"}, {"Li"}, {"Be"}, {"B"}, {"C"}, {"N"}, {"O"}, {"F"}, {"Ne"}, \
{"Na"}, {"Mg"}, {"Al"}, {"Si"}, {"P"}, {"S"}, {"Cl"}, {"Ar"}, {"K"}, {"Ca"}, \
{"Sc"}, {"Ti"}, {"V"}, {"Cr"}, {"Mn"}, {"Fe"}, {"Co"}, {"Ni"}, {"Cu"}, \
{"Zn"}, {"Ga"}, {"Ge"}, {"As"}, {"Se"}, {"Br"}, {"Kr"}, {"Rb"}, {"Sr"}, \
@b3m2a1 Oh, that's cool!
@CATrevillian Are you looking for selecting a region then shift-command-enter?
 
6 hours later…
13:32
@CarlLange I think that's accurate, I forgot about that one! But so...hmm, that shouldn't result in anything much different than copy and pasting it? But yes, this is exactly what I was trying to remember! Ohhh the simple things, hey? I'm hoping my content doesn't get unformatted when I go to publish it, is all.
@CATrevillian Yes, sometimes I wish things like Quantity[5, "seconds"] would automatically get formatted nicely for readability, and then click-to-edit. 🤷‍♀️
13:52
@CarlLange Oh, that would be great! Nice idea. I'll mention something ;) But the select shift control/command enter works very nicely to keep a cleaner workspace. Thanks again for the reminder :))
@CATrevillian How are you building your limonene molecules? If doing so from entities, that is the issue. The "Chemical" entities need a major update.
If I create the molecules using their IUPAC names then you can see the stereochemistry
dLimonene = Molecule["(4R)-1-methyl-4-prop-1-en-2-ylcyclohexene"];
lLimonene = Molecule["(4S)-1-methyl-4-prop-1-en-2-ylcyclohexene"];

MoleculePlot /@ {dLimonene, lLimonene}
@JasonB. from chemical entities, yeah, I'm a bit inept in that area. Should I use some online model? Ahhhh okay I will use this method! I was surprised because the 2D diagrams were the best for comparison to each other (writing on chirality, and that's a great example to use that we enjoy in everyday life) but wow you rock :D:D:D:D:D:D:D
If you want to highlight any chiral atom, you can use Atom["AtomChirality" -> Except[None]] as a pattern
@JasonB. Yeah those ones plot out nicely using the entities also--I'll peek at the 3D ones real quick using the IUPAC names :) OOOOOOH yes dude yes that is exactly what I could benefit from!!!! Woo!
Also, lets say you have a molecule with no defined stereo,
mol = Entity["Chemical", "Dipentene"] // Molecule
you can see what atoms could be chiral with mol["PossibleStereocenters"]
Then something like
MoleculeModify[mol, {"SetAtomChirality",
Thread[mol["PossibleStereocenters"] -> "R"]}]
will make the R enantiomer
This does make it throw out the coordinates it had from the entity, but new 3D coordinates are easy to generate for this example
14:08
Wowwwwwwie wow wow man @JasonB. this is awesome :D thank you! What's an easy way to get ahold of an input-able IUPAC name? Possibly from an entity?
It looks like our entity for limonene is for the racemic mix, and so you don't have any stereo on the entity
In[27]:= Entity["Chemical", "Dipentene"]["IUPACName"]

Out[27]= "4-isopropenyl-1-methylcyclohexene"
If I only have a common name, I'll google it, the wikipedia page or the pubchem entry will usually have a SMILES string or parsable name
The ServiceConnect for pubchem works, so you could query it programmatically
Oooooh okay, that is awesome, I love programmatically!!! This is everything I was hoping to learn and more
 
6 hours later…
19:43
@JasonB. presumably you also take SDF right? The PubChem ServiceConnect only returns 2D coordinate data, but you can chain a ServiceConnect request for an ID number with a secondary ping to the actual API to get SDF out.
@CATrevillian
That way you can just get some 3D coordinates directly from whatever PubChem has stored (which is probably no better or worse than Jason's 3D coordinate generator)
20:04
we do also import SDF
I should look at that ServiceConnect code and add a direct "Molecule" element
which would in turn just call Import on the SDF
Neither PrimeZetaP nor EllipticTheta works with ComplexPlot.
20:20
this seems to work already: MoleculePlot@
Query["Molecule", 1]@
ServiceExecute["PubChem",
"CompoundSDF", {"Name" -> #}] & /@ {"D-limonene", "L-limonene"}
 
1 hour later…
21:31
@user76284 To give you a hint: Look at PrimeZetaP[-1.0] and then re-check the region you wanted to plot.
21:57
@halirutan I’m only plotting Re(z) > 0.
@user76284 Still, there will be ComplexInfinity in it. Use e.g. Table[PrimeZetaP[x - I*y], {x, 0.1, 1, .1}, {y, -1, 1, .1}] to see this.
@user76284 Two things: First, you can use <<GeneralUtilities` and PrintDefinitions[PrimeZetaP] to see its implementation. Second, you can use a quick hack to filter all non-numeric results:
pzp[z_?NumericQ] := With[{result = PrimeZetaP[z]},
  If[NumericQ[result] && Head[result] =!= PrimeZetaP, result,  0.0]
  ];

ComplexPlot[
 PrimeZetaP[z],
 {z, 0.1 - I, 1 + I},
 ColorFunctionScaling -> False
 ]

« first day (2718 days earlier)      last day (2067 days later) »