<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel rdf:about="https://community.wolfram.com">
    <title>Community RSS Feed</title>
    <link>https://community.wolfram.com</link>
    <description>RSS Feed for Wolfram Community showing any discussions tagged with Packages sorted by most replies.</description>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/2330900" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/2141352" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1874396" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1807709" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/2445356" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/560469" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/787142" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/2864162" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1175780" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1321057" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1715017" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1484511" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1736686" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1190717" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/861654" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/3300846" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/2441773" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1646303" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1170226" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/917616" />
      </rdf:Seq>
    </items>
  </channel>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/2330900">
    <title>[WSG21] Daily Study Group: programming tutorials</title>
    <link>https://community.wolfram.com/groups/-/m/t/2330900</link>
    <description>Daily Study Groups are back, now providing expertise on practical programming! After a short break, we&amp;#039;re starting up with a series that picks up where Wolfram Language Basics sessions ended. This 3-week series will take you from basic programming concepts to package development. &#xD;
&#xD;
Need tips on improving your code’s speed or functionality? Programming Tutorials offer a great opportunity to level-up your skills while interacting with software development professionals. See hands-on examples and get questions answered by Wolfram Language experts. Plus: participants who pass weekly quizzes are awarded a program completion certificate. Level 1 certification is available for those who pass manually graded exercises. &#xD;
&#xD;
Join us any time between August 2 and August 20! Check out our [registration page][1] for more details.&#xD;
&#xD;
&#xD;
&#xD;
 [1]: https://wolfr.am/Study_Group15</description>
    <dc:creator>Wolfram U</dc:creator>
    <dc:date>2021-07-30T15:24:02Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/2141352">
    <title>CUDA not working on Mathematica 12.2</title>
    <link>https://community.wolfram.com/groups/-/m/t/2141352</link>
    <description>Hello all :)&#xD;
CUDA is not working on 12.2.&#xD;
Look at this:&#xD;
What I am supposed to do?&#xD;
I also tried by downloading the CUDA packlets: change nothing.&#xD;
I have an NVIDIA RTX 3090 and the drivers are ok.&#xD;
Thank you foe helping me.&#xD;
Regards to all,&#xD;
&#xD;
Jean-Michel</description>
    <dc:creator>Jean-Michel Collard</dc:creator>
    <dc:date>2020-12-18T02:04:15Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1874396">
    <title>Free online training offered with 8-session programming tutorials</title>
    <link>https://community.wolfram.com/groups/-/m/t/1874396</link>
    <description>Users of the Wolfram Language are fired up to improve their knowledge and skills, and we&amp;#039;re bringing a series of [programming tutorials][1] to [Wolfram U][2] to help meet this need, starting on February 18. Sessions meet on Tuesdays and Thursdays, and a weekly quiz will be offered to assess your progress. Wolfram Technology Certified Level I will be awarded to participants who successfully complete additional assigned problems.This is an ambitious project with comprehensive content, and I&amp;#039;d love to hear what people think of it. [Registration][3] is open now.&#xD;
&#xD;
&#xD;
  [1]: https://www.wolfram.com/wolfram-u/special-event/programming-concepts-to-applications/&#xD;
  [2]: https://www.wolfram.com/wolfram-u/&#xD;
  [3]: https://attendee.gotowebinar.com/register/1764197596751908620?source=community</description>
    <dc:creator>Jamie Peterson</dc:creator>
    <dc:date>2020-02-07T18:29:05Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1807709">
    <title>Interface with R in Mathematica 12 and R 3.6.1?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1807709</link>
    <description>Hello everybody!&#xD;
&#xD;
 I wrote a number of notebooks calling R packages. But using up-to-date versions (Mathematica 12 and R 3.6.1), nothing works any more! For instance, it seems the default distribution doesn&amp;#039;t exist now:&#xD;
&#xD;
    In[2]:= InstallR[]&#xD;
    REvaluate[&amp;#034;sample(1:100,10)&amp;#034;]&#xD;
    &#xD;
    During evaluation of In[2]:= InstallR::invldrhome: The specified path to R home directory does not point to a valid directory&#xD;
    &#xD;
    Out[2]= $Failed&#xD;
&#xD;
I tried to use my own distribution, but it is not recognized!&#xD;
&#xD;
    In[4]:= InstallR[&amp;#034;RHomeLocation&amp;#034; -&amp;gt; &amp;#034;C:/PROGRA~1/R/R-36~1.1&amp;#034;, &#xD;
     &amp;#034;RVersion&amp;#034; -&amp;gt; &amp;#034;3.6.1&amp;#034;]&#xD;
    &#xD;
    During evaluation of In[5]:= InstallR::fail: Failed to install R. The following error was encountered: crash in low-level RLink component or in R runtime&#xD;
    &#xD;
    Out[5]= $Failed&#xD;
&#xD;
It seems there is an issue with the R.dll file (dll:  3.6.1, expecting 3.5.0). What can I do? Install an older version of R? Which one?&#xD;
&#xD;
Best regards,&#xD;
Claude</description>
    <dc:creator>Claude Mante</dc:creator>
    <dc:date>2019-10-15T09:19:47Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/2445356">
    <title>A Wolfram Language facsimile of Wordle</title>
    <link>https://community.wolfram.com/groups/-/m/t/2445356</link>
    <description>![enter image description here][1]&#xD;
&#xD;
The popular game Wordle can take up a lot of your time.  The author designed it so that it you can only play it once a day, thus saving us from ourselves :-).&#xD;
&#xD;
[Wordle][2]&#xD;
&#xD;
[NYTimes article on Wordle][3]&#xD;
&#xD;
But I couldn&amp;#039;t resist the challenge to create a version of it in Mathematica, just for fun and because I was bored this past weekend. &#xD;
&#xD;
See the attached notebook and enjoy.  Alas, since you can run it any number of times you are only to blame for yourself it you spend too much time on it. &#xD;
&#xD;
After executing the notebook just execute &#xD;
&#xD;
    MWordle[Deploy]&#xD;
&#xD;
to bring up the game.&#xD;
&#xD;
A few additional comments.  The notebook MWordle.nb has the option&#xD;
&#xD;
AutoGeneratedPackage -&amp;gt; Automatic&#xD;
&#xD;
which causes it, when saved, to create an MWordle.m package file in its same directory. &#xD;
&#xD;
The code in MWordle.nb is set up as a package with the context MWordle`Mwordle`&#xD;
&#xD;
If you want to set things up so that the package gets loaded and the MWordle game is automatically launched, do the following.&#xD;
&#xD;
Create a directory MWordleGame on your disk  (The name MWordleGame can actually be whatever you wish.)  And in the MWordleGame directory create a new directory called MWordle.  (This name must be exactly that so that the MWordle`Mwordle` Context is property respected.)  Put the MWordle.nb notebook in the MWordle dierectory, open it in Mathematica and save it so that the MWordle.m file is created in the MWordle directory.  Then you can close the MWordle.nb notebook.&#xD;
&#xD;
Now in your MWordleGame directory save a new notebook -- you can call it whatever you wish, but something like LaunchMwordle.nb is a sensible choice.&#xD;
&#xD;
In that notebook create a button with the following command:&#xD;
&#xD;
&#xD;
    CellPrint[TextCell[Button[&amp;#034;Launch MWordle&amp;#034;,&#xD;
       Monitor[&#xD;
        If[! MemberQ[$Path, NotebookDirectory[]], &#xD;
         AppendTo[$Path, NotebookDirectory[]]];&#xD;
        Needs[&amp;#034;MWordle`MWordle`&amp;#034;]; MWordle`MWordle`MWordle[Deploy],&#xD;
        Row[{ProgressIndicator[Appearance -&amp;gt; &amp;#034;Necklace&amp;#034;, &#xD;
           ImageSize -&amp;gt; Small], Spacer[5], &#xD;
          Style[&amp;#034;Launching MWordle...&amp;#034;, 12, Blue, &#xD;
           FontFamily -&amp;gt; &amp;#034;Arial&amp;#034;]}]],&#xD;
       Method -&amp;gt; &amp;#034;Queued&amp;#034;], &amp;#034;Text&amp;#034;, GeneratedCell -&amp;gt; False, &#xD;
      CellAutoOverwrite -&amp;gt; False]]&#xD;
&#xD;
You now have a button in your LaunchMwordle.nb notebook which you can use any time you want to launch MWordle without having to execute the cells in the MWordle.nb notebook.&#xD;
&#xD;
Download the actual notebook from the link at the end of this post. The following is a version here to read.&#xD;
&#xD;
&amp;amp;[Wolfram Notebook][4]&#xD;
&#xD;
&#xD;
  [1]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Wordle.gif&amp;amp;userId=20103&#xD;
  [2]: https://www.powerlanguage.co.uk/wordle/&#xD;
  [3]: https://www.nytimes.com/2022/01/03/technology/wordle-word-game-creator.html&#xD;
  [4]: https://www.wolframcloud.com/obj/08c015e2-0d65-4634-bf54-4b73e518f6d5</description>
    <dc:creator>David Reiss</dc:creator>
    <dc:date>2022-01-13T21:47:44Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/560469">
    <title>IGraph/M: graph theory and network analysis with Mathematica</title>
    <link>https://community.wolfram.com/groups/-/m/t/560469</link>
    <description>*WOLFRAM MATERIALS for the ARTICLE:*&#xD;
&amp;gt; Szabolcs Horvát, Jakub Podkalicki, Gábor Csárdi, Tamás Nepusz, Vincent Traag, Fabio Zanini, Daniel Noom, (2022).&#xD;
&#xD;
&amp;gt; *IGraph/M: graph theory and network analysis for Mathematica*.&#xD;
&#xD;
&amp;gt; arXiv:2209.09145 **[physics.soc-ph]**.&#xD;
&#xD;
&amp;gt; https://doi.org/10.48550/arXiv.2209.09145&#xD;
&#xD;
&#xD;
[![Discourse topics](https://img.shields.io/discourse/topics?color=limegreen&amp;amp;server=https%3A%2F%2Figraph.discourse.group)](https://igraph.discourse.group)&#xD;
[![GitHub (pre-)release](https://img.shields.io/github/release/szhorvat/IGraphM/all.svg)](https://github.com/szhorvat/IGraphM/releases)&#xD;
[![Contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg)](https://github.com/szhorvat/IGraphM#contributions)&#xD;
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.1134932.svg)](https://doi.org/10.5281/zenodo.1134932)&#xD;
&#xD;
----&#xD;
&#xD;
##Article abstract&#xD;
&#xD;
IGraph/M is an efficient general purpose graph theory and network analysis package for Mathematica. IGraph/M serves as the Wolfram Language interfaces to the igraph C library, and also provides several unique pieces of functionality not yet present in igraph, but made possible by combining its capabilities with Mathematica&amp;#039;s. The package is designed to support both graph theoretical research as well as the analysis of large-scale empirical networks.&#xD;
&#xD;
----&#xD;
&#xD;
##Introduction&#xD;
&#xD;
The post below was written for the original release of IGraph/M. The package has come a long way since then and now contains ~300 functions. See http://szhorvat.net/mathematica/IGraphM for more details on the current release.&#xD;
&#xD;
Compatibility: 64-it Windows/macOS/Linux or Raspberry Pi; Mathematica &amp;lt;del&amp;gt;10.0&amp;lt;/del&amp;gt; 11.0 or later.&#xD;
&#xD;
&amp;lt;a href=&amp;#034;http://szhorvat.net/mathematica/IGraphM&amp;#034;&amp;gt;&amp;lt;img src=&amp;#034;https://community.wolfram.com//c/portal/getImageAttachment?filename=IGraphM-ad-3.png&amp;amp;userId=38370&amp;#034; width=&amp;#034;300&amp;#034;&amp;gt;&amp;lt;/a&amp;gt;&#xD;
&#xD;
----&#xD;
&#xD;
I would like to announce IGraph/M, a new igraph interface for Mathematica: http://szhorvat.net/mathematica/IGraphM&#xD;
&#xD;
[igraph](http://igraph.org/) is a graph manipulation and analysis package.  IGraph/M makes its functionality available from Mathematica.&#xD;
&#xD;
This initial release, version 0.1, covers only some igraph functions, as I focused on the things that I need personally.  However the main framework is complete, and new functions can be added quickly.  If anyone would like to contribute, please contact me.&#xD;
&#xD;
Binary packages for OS X (10.9 or later) and Linux can be downloaded [from GitHub](https://github.com/szhorvat/IGraphM/releases).  Unfortunately, I was unable to compile the development version of igraph for Windows, so I cannot provide a Windows version. If you can help with compiling igraph itself (not IGraph/M) on Windows, please let me know!&#xD;
&#xD;
Functionality in this release that is not built into Mathematica:&#xD;
&#xD;
 * Vertex betweenness centrality for weighted graphs&#xD;
 * Estimates of vertex betweenness, edge betweenness and closeness centrality; for large graphs&#xD;
 * Minimum feedback arc set for weighted and unweighted graphs&#xD;
 * Find all cliques (not just maximal ones)&#xD;
 * Count 3- and 4-motifs&#xD;
 * Rewire edges, keeping either the density or the degree sequence&#xD;
 * Alternative algorithms for isomorphism testing: Bliss, VF2&#xD;
 * Subgraph isomorphism&#xD;
 * Test if a degree sequence is graphical&#xD;
 * Alternative algorithms for generating random graphs with given degree sequence&#xD;
 * Layout algorithms that take weights into account&#xD;
&#xD;
Note that IGraph/M is *not a replacement* for Mathematica&amp;#039;s graphs and networks functionality.  It is meant to complement what is already available in Mathematica, thus it primarily focuses on adding functionality that is not already present.&#xD;
&#xD;
Why did I release the package before covering most of the igraph functionality?  I do not have time to work on things I do not personally need or use, so I am unlikely to extend it further unless the need comes up.  I do think that the functions that are included in v0.1 can already be useful to others too.  I would also like to give the opportunity for people to contribute to the project if they wish to.  The groundwork has been laid, so further extensions should be quick and relatively easy.&#xD;
&#xD;
Also check out a related project, [IGraphR](https://github.com/szhorvat/IGraphR), which makes igraph available for Mathematica users through RLink.  I wrote IGraph/M because I needed higher performance and greater reliability (especially for parallel computing) than what RLink could provide.&#xD;
&#xD;
----&#xD;
&#xD;
**A request:** If any of you have used IGraphR in the past to access igraph from Mathematica, please post a response to this thread and let me know which specific functions you were using.&#xD;
&#xD;
&amp;amp;[Wolfram Notebook][1]&#xD;
&#xD;
&#xD;
  [1]: https://www.wolframcloud.com/obj/94639221-60b4-47e3-8862-d996caa40388</description>
    <dc:creator>Szabolcs Horvát</dc:creator>
    <dc:date>2015-09-06T12:55:14Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/787142">
    <title>Crystallica: A package to plot crystal structures</title>
    <link>https://community.wolfram.com/groups/-/m/t/787142</link>
    <description>## General information and download links ##&#xD;
&#xD;
If you&amp;#039;re interested in crystal structures, you can now download the Crystallica application from the Wolfram Library Archive, and then you can do things like this:&#xD;
&#xD;
    Needs[&amp;#034;Crystallica`&amp;#034;];&#xD;
    CrystalPlot[&#xD;
    {{5.4,0,0},{0,5.4,0},{0,0,5.4}},&#xD;
    {{0,0,0},{0,0,.5},{0,.5,0},{.5,0,0},{.24,.24,.24},{.24,.76,.76},{.76,.24,.76},{.76,.76,.24}},&#xD;
    {1,2,2,2,3,3,3,3},&#xD;
    AtomCol-&amp;gt;{&amp;#034;Firebrick&amp;#034;,&amp;#034;YellowGreen&amp;#034;,White},AtomRad-&amp;gt;.4,&#xD;
    BondStyle-&amp;gt;2,BondDist-&amp;gt;3,&#xD;
    CellLineStyle-&amp;gt;False,AddQ-&amp;gt;True,Lighting-&amp;gt;{{&amp;#034;Directional&amp;#034;,White,ImageScaled[{0,0,1}]}},Background-&amp;gt;Black]&#xD;
&#xD;
![enter image description here][1]&#xD;
&#xD;
Here are the download links for Crystallica and two other packages you may need:&#xD;
&#xD;
[Crystallica][2] - contains the functions `CrystalPlot` and `CrystalChange`&#xD;
&#xD;
[CifImport][3] - contains an import function for CIF files&#xD;
&#xD;
[VaspImport][4] - contains an import function for files related to [VASP][5]&#xD;
&#xD;
Once you&amp;#039;ve installed Crystallica (by saving the entire Crystallica folder - not the zip archive - to `$USerBaseDirectory/Applications` and re-starting the Kernel), you can enter Crystallica into the Documentation Center and you&amp;#039;ll find lots of useful examples. Most of the examples in this post are taken from the Documentation. For the other two packages, just install them and evaluate this:&#xD;
&#xD;
    ?CifImport&#xD;
    ?VaspImport&#xD;
&#xD;
I&amp;#039;ll first show you a few things the `CrystalPlot` function can do when you already have crystal structure data inside Mathematica, wherever it may have come from. Then we&amp;#039;ll take a look at how to get the data into Mathematica in the first place, which is where `CifImport` and `VaspImport` will come into play - but we&amp;#039;ll get data from other sources as well. I&amp;#039;ll cover the different import solutions in separate replies to this thread, because I have a feeling that I&amp;#039;ll be rambling on and on and on...&#xD;
&#xD;
## Simple plot ##&#xD;
&#xD;
Traditional ball-and-stick plots are usually just fine, so the simplest thing you can do is this:&#xD;
&#xD;
    CrystalPlot[&#xD;
    {{4.5,0,0},{0,4.5,0},{0,0,3}},&#xD;
    {{0,0,0},{.5,.5,.5},{.2,.8,.5},{.3,.3,0},{.7,.7,0},{.8,.2,.5}},&#xD;
    {1,1,2,2,2,2}]&#xD;
&#xD;
![enter image description here][6]&#xD;
&#xD;
As you can see, `CrystalPlot` expects three arguments. The first one contains the lattice vectors, which are simply the three vectors that create the parallelepiped that constitutes the cell. The second argument contains the atomic coordinates, but they&amp;#039;re given in the basis of the lattice vectors (which is quite useful in crystallography). The third argument is a list of integers that gives the atom types, with one entry for each atom. If you want to plot a molecule instead, you can call `CrystalPlot` with just two arguments: A list of atom coordinates in cartesian space, and a list of atom types. Everything else you see in the plot - the atoms, bonds, colours, arrows etc. - represents the default settings of various layout options.&#xD;
&#xD;
## Advanced atoms and bonds ##&#xD;
&#xD;
Let&amp;#039;s take a look at some more advanced options just for fun. For instance, atoms and bonds can look any way you need them to, because you can specify your own functions for them. You can also fine-tune where to put bonds and what to do with their thickness and colour in a physically (or chemically) meaningful way, but I won&amp;#039;t show that here. So here are some customized atoms and bonds:&#xD;
&#xD;
    Row[Table[&#xD;
    CrystalPlot[{{4,0,0},{0,4,0},{0,0,4}},{{0,0,0},{.4,.4,.4},{.8,.8,.8}},{1,2,3},&#xD;
    AtomRad-&amp;gt;{.4,1.2,.7},AtomFunction-&amp;gt;style,ImageSize-&amp;gt;400],&#xD;
    {style,{&#xD;
    (Ball[#1,#2]&amp;amp;),&#xD;
    (Scale[Sphere[#1,#2],{1,1,.5}]&amp;amp;),&#xD;
    ({EdgeForm[Thick],Opacity[.7],Cuboid[#1-.5*#2,#1+.5*#2]}&amp;amp;)&#xD;
    }}]]&#xD;
&#xD;
![enter image description here][7]&#xD;
&#xD;
    Row[Table[&#xD;
    CrystalPlot[{{0,0,0},{5,0,0},{2.5,4,0}},{1,2,3},BondDist-&amp;gt;6,BondStyle-&amp;gt;style,ImageSize-&amp;gt;400],&#xD;
    {style,{&#xD;
    1,&#xD;
    Function[{bonds,partcol},Table[{If[ii&amp;lt;.5,partcol[#,1],partcol[#,2]],Sphere[bonds[[#,1]]+ii*(bonds[[#,2]]-bonds[[#,1]]),.15]},{ii,0,1,1/9}]&amp;amp;/@Range[Length[bonds]]],&#xD;
    Function[{bonds,partcol},Module[{spiral,points,rad=.05},&#xD;
    spiral[atoms_]:=Module[{scale=.5,dist=atoms[[2]]-atoms[[1]],curls=60,normal,rot,scaled},&#xD;
    normal=Table[{scale*Cos[ii],scale*Sin[ii],.1*ii},{ii,0,curls,\[Pi]/10}];&#xD;
    scaled={#[[1]],#[[2]],10*Norm[dist]/curls*#[[3]]}&amp;amp;/@normal;&#xD;
    rot=scaled.Quiet[RotationMatrix[{dist,{0,0,1}}]];&#xD;
    Join[{atoms[[1]]},#+atoms[[1]]&amp;amp;/@(rot[[25;;-25]]),{atoms[[2]]}]];&#xD;
    points=spiral/@bonds;&#xD;
    {partcol[#,1],Tube[BSplineCurve[points[[#,;;Round[Length[points[[#]]]/2]]],rad]],partcol[#,2],Tube[BSplineCurve[points[[#,Round[Length[points[[#]]]/2];;]],rad]]}&amp;amp;/@Range[Length[bonds]]&#xD;
    ]]&#xD;
    }}]]&#xD;
&#xD;
![enter image description here][8]&#xD;
&#xD;
## Lattice planes ##&#xD;
&#xD;
Crystallica can also add lattice planes to the plot. You can specify them using [h,k,l] Miller indices and distance to the origin.&#xD;
&#xD;
    CrystalPlot[{{3,0,0},{0,3,0},{0,0,3}},{{0,0,0}},{1},&#xD;
    AddQ-&amp;gt;True,AtomRad-&amp;gt;.3,AtomCol-&amp;gt;&amp;#034;CadmiumYellow&amp;#034;,Sysdim-&amp;gt;2,CellLineStyle-&amp;gt;2,&#xD;
    LatticePlanes-&amp;gt;Table[{{1,1,1},dist},{dist,1,5}],ContourStyle-&amp;gt;{&amp;#034;TerreVerte&amp;#034;,Opacity[.7]},BoundaryStyle-&amp;gt;Thick]&#xD;
&#xD;
![enter image description here][9]&#xD;
&#xD;
## Coordination polyhedra ##&#xD;
&#xD;
You can automatically search for and plot coordination polyhedra. This is not limited to the commonly occurring tetrahedra and octahedra - you can actually look for polyhedra with arbitrary numbers of corners. There are also options to fine-tune both the searching and the rendering.&#xD;
&#xD;
    plot[corners_,mixed_]:=CrystalPlot[{{0,0,0},{0,0,1.8},{-.9,-1.5,-.6},{-.9,1.5,-.6},{1.7,0,-.6},{.8,.8,.8}},{1,2,2,2,2,3},&#xD;
    BondStyle-&amp;gt;False,ImageSize-&amp;gt;250,&#xD;
    PolyMode[corners]-&amp;gt;{&amp;#034;Show&amp;#034;-&amp;gt;All,&amp;#034;AllowMixed&amp;#034;-&amp;gt;mixed},PolyStyle[corners]-&amp;gt;Directive[Opacity[.5],EdgeForm[Thick]]];&#xD;
    Grid[{{&#xD;
    &amp;#034;&amp;#034;,&#xD;
    &amp;#034;Search for polyhedra with \n4 corners&amp;#034;,&#xD;
    &amp;#034;Search for polyhedra with \n5 corners&amp;#034;&#xD;
    },{&#xD;
    &amp;#034;Allow \nmixed corners&amp;#034;,&#xD;
    plot[4,True],&#xD;
    plot[5,True]&#xD;
    },{&#xD;
    &amp;#034;Don&amp;#039;t allow \nmixed corners&amp;#034;,&#xD;
    plot[4,False],&#xD;
    plot[5,False]&#xD;
    }},Dividers-&amp;gt;All]&#xD;
&#xD;
![enter image description here][10]&#xD;
&#xD;
    CrystalPlot[{{2.5,-4.3,0},{2.5,4.3,0},{0,0,5.5}},&#xD;
    {{.5,0,0},{0,.5,.7},{.5,.5,.3},{.2,.4,.5},{.6,.8,.2},{.2,.8,.8},{.8,.6,.5},{.4,.2,.2},{.8,.2,.8}},{1,1,1,2,2,2,2,2,2},&#xD;
    PolyMode[4]-&amp;gt;True,PolyStyle[4]-&amp;gt;EdgeForm[None],AddQ-&amp;gt;True,&#xD;
    Sysdim-&amp;gt;2,AtomRad-&amp;gt;0,CellLineStyle-&amp;gt;False,AtomCol-&amp;gt;{&amp;#034;SlateGray&amp;#034;,&amp;#034;Firebrick&amp;#034;},&#xD;
    ViewAngle-&amp;gt;.4,ViewPoint-&amp;gt;{3.2,0,1.1},ViewVertical-&amp;gt;{.5,0,1.2}]&#xD;
&#xD;
![enter image description here][11]&#xD;
&#xD;
## Other things ##&#xD;
&#xD;
Visualization aside, you can also build supercells, change cell shapes, or add, remove and sort atoms... but that&amp;#039;s a bit boring to read, so I&amp;#039;ll refer you to the Documentation page of the `CrystalChange` function instead.&#xD;
&#xD;
If you&amp;#039;re interested, we can use this thread to talk about any questions you may have, or you can share your use of the package (if you decide to use it). I&amp;#039;m not offering full support here, but I&amp;#039;ll be floating around, and I&amp;#039;d like to hear your feedback. We don&amp;#039;t have any intentions to be involved in further development. But if you have a good idea and some time, then by all means, work on it for yourself, or host it on your favourite code collaboration site.&#xD;
&#xD;
Bianca Eifert and Christian Heiliger&#xD;
&#xD;
&#xD;
  [1]: http://community.wolfram.com//c/portal/getImageAttachment?filename=teaser.png&amp;amp;userId=69107&#xD;
  [2]: http://library.wolfram.com/infocenter/MathSource/9372/&#xD;
  [3]: http://library.wolfram.com/infocenter/MathSource/9373/&#xD;
  [4]: http://library.wolfram.com/infocenter/MathSource/9375/&#xD;
  [5]: http://vasp.at/&#xD;
  [6]: http://community.wolfram.com//c/portal/getImageAttachment?filename=9692simple.png&amp;amp;userId=69107&#xD;
  [7]: http://community.wolfram.com//c/portal/getImageAttachment?filename=atoms.png&amp;amp;userId=69107&#xD;
  [8]: http://community.wolfram.com//c/portal/getImageAttachment?filename=bonds.png&amp;amp;userId=69107&#xD;
  [9]: http://community.wolfram.com//c/portal/getImageAttachment?filename=planes.png&amp;amp;userId=69107&#xD;
  [10]: http://community.wolfram.com//c/portal/getImageAttachment?filename=polys.png&amp;amp;userId=69107&#xD;
  [11]: http://community.wolfram.com//c/portal/getImageAttachment?filename=polys2.png&amp;amp;userId=69107&#xD;
  [12]: http://rruff.geo.arizona.edu/AMS/CIF_text_files/13532_cif.txt&#xD;
  [13]: http://cms.mpi.univie.ac.at/vasp/vasp/POSCAR_file.html&#xD;
  [14]: http://wiki.jmol.org/index.php/File:Caffeine.mol</description>
    <dc:creator>Bianca Eifert</dc:creator>
    <dc:date>2016-02-05T18:43:18Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/2864162">
    <title>OpenAIMode: paclet for interaction w/ OpenAI&amp;#039;s GPT &amp;amp; DALL-E via OpenAILink</title>
    <link>https://community.wolfram.com/groups/-/m/t/2864162</link>
    <description>&amp;amp;[Wolfram Notebook][1]&#xD;
&#xD;
&#xD;
  [1]: https://www.wolframcloud.com/obj/04e935d4-d928-4868-adb8-ae6f84fae1f8</description>
    <dc:creator>Anton Antonov</dc:creator>
    <dc:date>2023-04-02T19:01:27Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1175780">
    <title>Best way to reuse some code in multiple notebooks?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1175780</link>
    <description>I have some code I&amp;#039;d like to reuse in multiple notebooks. Simple definitions, like&#xD;
&#xD;
    ratioFromDb[db_] := 10^(db / 20)&#xD;
&#xD;
I expect I should put these definitions in their own file, and then somehow include that file in various notebooks. What are the details for this process, please? I have researched this in the documentations, and I&amp;#039;ve probably already seen the correct answer there, but I&amp;#039;m still not sure about this.&#xD;
&#xD;
My best guess is, put my library in a regular .nb file, and then invoke the library like this:&#xD;
&#xD;
    Once[Get[&amp;#034;myLibrary.nb&amp;#034;]]&#xD;
&#xD;
Do I have it right? If not, if someone could direct me to the specific page or section in the documentation that covers this, I&amp;#039;d appreciate it. Thank you.</description>
    <dc:creator>Anonymous User</dc:creator>
    <dc:date>2017-09-03T00:08:28Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1321057">
    <title>Has Wolfram abandoned the Graphs and Networks functionality?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1321057</link>
    <description>This is a cautionary tale for those who choose Mathematica as the main tool for their work.&#xD;
&#xD;
It is now clear to me that Wolfram has simply abandoned the [Graphs and Networks](http://reference.wolfram.com/language/guide/GraphsAndNetworks.html) functionality area and I am left high and dry. I have no recourse because Mathematica is closed source so there is only so much a user can do to fix or work around problems. Reporting bugs in this particular area has now clearly proven to be useless. Most simply do not get fixed, no matter how serious they are, or how great a hindrance they are to practical use. No new functionality has been added since version 10.0.  My colleagues who use other tools (mostly Python and R packages) are more productive at this point, but I have a handicap with those systems because I made the mistake of investing most of my time into Mathematica, and stayed optimistic about it even in the face of the most obvious warning signs.&#xD;
&#xD;
I am writing this post because those people who have not heavily invested in Mathematica, and in particular this functionality area of Mathematica, are not in a position to see this and may fall in the same trap I did.  What if the same thing happens to the functionality area that is critical to *your* work?&#xD;
&#xD;
Wolfram Research, of course, will not tell you that they gave up on `Graph`.  Thus, after my experience, I think I owe it to the community to warn you about the situation.&#xD;
&#xD;
----&#xD;
&#xD;
Some might ask me what specifically is wrong. I have made many posts on this forum about `Graph`-bugs (you only have to search), and I reported many more to WRI.  There is always a last strawit would be pointless to show it. Those who know me will know that I am not writing this admittedly emotional post out of ill will towards WRI. I have betted on Mathematica more than most, and have been advocating for it throughout the years. I even have a network analysis package with ~250 functions. If I am forced to abandon Mathematica for this type of work, then the countless hours that went into this package will all have been in vain.&#xD;
&#xD;
I admit that I am writing this public post partly out of desperation to try to get WRI to either fix the many serious `Graph`-problems, or otherwise publicly state that `Graph` is now abandoned so those of us who have been using it can stop wasting our time.</description>
    <dc:creator>Szabolcs Horvát</dc:creator>
    <dc:date>2018-04-16T09:54:42Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1715017">
    <title>Run MinGW in Mac?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1715017</link>
    <description>Hi,&#xD;
How can i run Min GW in Mac, do I need to rearrange these codes to make it run in Mac?&#xD;
&#xD;
Can anyone please advise?&#xD;
&#xD;
I posted the codes below.&#xD;
&#xD;
&#xD;
    Clear[&amp;#034;Global`*&amp;#034;];&#xD;
    Needs[&amp;#034;CCompilerDriver`GenericCCompiler`&amp;#034;];&#xD;
    $CCompiler = {&amp;#034;Compiler&amp;#034; -&amp;gt; &#xD;
        CCompilerDriver`GenericCCompiler`GenericCCompiler, &#xD;
       &amp;#034;CompilerInstallation&amp;#034; -&amp;gt; &amp;#034;C:\\MinGW&amp;#034;, &amp;#034;CompilerName&amp;#034; -&amp;gt; &amp;#034;gcc.exe&amp;#034;};&#xD;
    CompileOptions = {CompilationTarget -&amp;gt; &amp;#034;C&amp;#034;, &#xD;
       RuntimeOptions -&amp;gt; {&amp;#034;CatchMachineOverflow&amp;#034; -&amp;gt; False, &#xD;
         &amp;#034;CatchMachineUnderflow&amp;#034; -&amp;gt; False, &#xD;
         &amp;#034;CatchMachineIntegerOverflow&amp;#034; -&amp;gt; False, &#xD;
         &amp;#034;CompareWithTolerance&amp;#034; -&amp;gt; False, &amp;#034;EvaluateSymbolically&amp;#034; -&amp;gt; False,&#xD;
          &amp;#034;RuntimeErrorHandler&amp;#034; -&amp;gt; Evaluate, &amp;#034;WarningMessages&amp;#034; -&amp;gt; False}, &#xD;
       CompilationOptions -&amp;gt; {&amp;#034;InlineExternalDefinitions&amp;#034; -&amp;gt; True, &#xD;
         &amp;#034;InlineCompiledFunctions&amp;#034; -&amp;gt; True, &#xD;
         &amp;#034;ExpressionOptimization&amp;#034; -&amp;gt; True}};&#xD;
&#xD;
Thanks.</description>
    <dc:creator>adrian leong</dc:creator>
    <dc:date>2019-06-29T10:27:32Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1484511">
    <title>Playing with YouTube from Mathematica</title>
    <link>https://community.wolfram.com/groups/-/m/t/1484511</link>
    <description>Originally [here](https://www.wolframcloud.com/objects/b3m2a1/home/playing-with-youtube-from-mathematica.html#main-content) (the embedded iframes actually work there)&#xD;
&#xD;
---&#xD;
&#xD;
Playing with YouTube from Mathematica&#xD;
---&#xD;
&#xD;
Today I&amp;#039;m gonna quickly show off something I made for a friend (and about which I&amp;#039;d been thinking for some time). We&amp;#039;re gonna use the YouTube API in Mathematica to do a have some fun (but not too much fun, mind you!).&#xD;
&#xD;
### Installing the YouTube Connection&#xD;
&#xD;
My connection to the YouTube API is built on Mathematica&amp;#039;s  [```ServiceConnect```](https://reference.wolfram.com/language/ref/ServiceConnect.html) framework. I&amp;#039;ve  [talked](https://www.wolframcloud.com/objects/b3m2a1/home/serviceconnections---mathematica-on-the-web.html)  [about](https://www.wolframcloud.com/objects/b3m2a1/home/questions-on-the-mathematica-stack-exchange.html#main-content)  [these](https://www.wolframcloud.com/objects/b3m2a1/home/questions-on-the-mathematica-stack-exchange-part-2.html#main-content)  [before](https://mathematica.stackexchange.com/questions/163638/how-can-i-access-nasa-images-and-apis) in  [many](http://community.wolfram.com/groups/-/m/t/1261562)  [different](https://mathematica.stackexchange.com/a/167702/38205)  [contexts](https://mathematica.stackexchange.com/questions/163780/sophisticated-api-integrations-making-a-card-game-in-mathematica) but today we&amp;#039;ll just use it. To install we pull the  [paclet off my server](https://www.wolframcloud.com/objects/b3m2a1.paclets/PacletServer/serviceconnectionyoutube.html#main-content) :&#xD;
&#xD;
    PacletInstall[&amp;#034;ServiceConnection_YouTube&amp;#034;,&#xD;
      &amp;#034;Site&amp;#034;-&amp;gt;&#xD;
        &amp;#034;http://www.wolframcloud.com/objects/b3m2a1.paclets/PacletServer/&amp;#034;&#xD;
      ]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-8529256040837869960](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-8529256040837869960.png)&#xD;
&#xD;
### Authenticating with YouTube&#xD;
&#xD;
One installed, we connect to the service as usual:&#xD;
&#xD;
    $so = ServiceConnect[&amp;#034;YouTube&amp;#034;]&#xD;
&#xD;
This will open a dialog:&#xD;
&#xD;
![post22-2534758878895670558](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-2534758878895670558.png)&#xD;
&#xD;
We&amp;#039;ll click the sign in button, pick and account (I&amp;#039;ll use my  [new personal account steve.wolfraum@gmail.com](https://www.wolframcloud.com/objects/b3m2a1/home/making-a-blog-in-30-minutes.html#main-content) ):&#xD;
&#xD;
![post22-6891487155877384696](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-6891487155877384696.png)&#xD;
&#xD;
When we click &amp;#034;Allow&amp;#034; either we&amp;#039;ll be taken to a nicely formatted local page with an access code running via  ```HTTPHandling`StartWebServer``` or if that&amp;#039;s being glitchy as it was right now, we&amp;#039;ll copy the part of the URL starting with  ```&amp;#034;code=4/...&amp;#034;``` :&#xD;
&#xD;
![post22-5755985516881850876](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-5755985516881850876.png)&#xD;
&#xD;
Finally, we&amp;#039;re connected:&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-6049558537553480280](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-6049558537553480280.png)&#xD;
&#xD;
### Getting Data&#xD;
&#xD;
The majority of the currently supported methods have to do with getting data about YouTube:&#xD;
&#xD;
    $so[&amp;#034;Requests&amp;#034;]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
    {&amp;#034;Authentication&amp;#034;,&amp;#034;DeleteVideo&amp;#034;,&amp;#034;ID&amp;#034;,&amp;#034;Information&amp;#034;,&amp;#034;LastRequest&amp;#034;,&amp;#034;ListCaptions&amp;#034;,&amp;#034;ListChannelActivity&amp;#034;,&amp;#034;ListChannels&amp;#034;,&amp;#034;ListChannelSections&amp;#034;,&amp;#034;ListComments&amp;#034;,&amp;#034;ListCommentThreads&amp;#034;,&amp;#034;ListPlaylistItems&amp;#034;,&amp;#034;ListPlaylists&amp;#034;,&amp;#034;ListSubscriptions&amp;#034;,&amp;#034;ListVideos&amp;#034;,&amp;#034;Name&amp;#034;,&amp;#034;RawRequests&amp;#034;,&amp;#034;RequestData&amp;#034;,&amp;#034;RequestParameters&amp;#034;,&amp;#034;Search&amp;#034;,&amp;#034;UpdateVideo&amp;#034;,&amp;#034;UploadVideo&amp;#034;,&amp;#034;VideoURL&amp;#034;}&#xD;
&#xD;
We&amp;#039;ll start with a search, maybe. First let&amp;#039;s see what parameters we have to work with:&#xD;
&#xD;
    $so[&amp;#034;RequestParameters&amp;#034;, &amp;#034;Request&amp;#034;-&amp;gt;&amp;#034;Search&amp;#034;]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
    &amp;lt;|&amp;#034;Parameters&amp;#034;-&amp;gt;{&amp;#034;q&amp;#034;,&amp;#034;part&amp;#034;,&amp;#034;forContentOwner&amp;#034;,&amp;#034;forDeveloper&amp;#034;,&amp;#034;forMine&amp;#034;,&amp;#034;relatedToVideoId&amp;#034;,&amp;#034;channelId&amp;#034;,&amp;#034;channelType&amp;#034;,&amp;#034;eventType&amp;#034;,&amp;#034;location&amp;#034;,&amp;#034;locationRadius&amp;#034;,&amp;#034;maxResults&amp;#034;,&amp;#034;onBehalfOfContentOwner&amp;#034;,&amp;#034;order&amp;#034;,&amp;#034;pageToken&amp;#034;,&amp;#034;publishedAfter&amp;#034;,&amp;#034;publishedBefore&amp;#034;,&amp;#034;q&amp;#034;,&amp;#034;regionCode&amp;#034;,&amp;#034;relevanceLanguage&amp;#034;,&amp;#034;safeSearch&amp;#034;,&amp;#034;topicId&amp;#034;,&amp;#034;type&amp;#034;,&amp;#034;videoCaption&amp;#034;,&amp;#034;videoCategoryId&amp;#034;,&amp;#034;videoDefinition&amp;#034;,&amp;#034;videoDimension&amp;#034;,&amp;#034;videoDuration&amp;#034;,&amp;#034;videoEmbeddable&amp;#034;,&amp;#034;videoLicense&amp;#034;,&amp;#034;videoSyndicated&amp;#034;,&amp;#034;videoType&amp;#034;},&amp;#034;Required&amp;#034;-&amp;gt;{&amp;#034;part&amp;#034;}|&amp;gt;&#xD;
&#xD;
Then we&amp;#039;ll search for something bland, like &amp;#034;Steve Wolfraum&amp;#034;. The YouTube API requires this  ```&amp;#034;part&amp;#034;``` parameter to know what to return to use. I like to get the  ```&amp;#034;id&amp;#034;``` and  ```&amp;#034;snippet&amp;#034;``` parts, but you can  [pick for yourself](https://developers.google.com/youtube/v3/getting-started#part) which parts you want. Just comma-separate your values and you can get multiple different ones:&#xD;
&#xD;
    mySearch = $so[&amp;#034;Search&amp;#034;, &amp;#034;q&amp;#034;-&amp;gt;&amp;#034;Steve Wolfraum&amp;#034;, &amp;#034;part&amp;#034;-&amp;gt;&amp;#034;id,snippet&amp;#034;]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-4316213154658629458](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-4316213154658629458.png)&#xD;
&#xD;
We see there are  *tons* of results for &amp;#034;my&amp;#034; name but we only get them five at a time. We can use the  ```&amp;#034;nextPageToken&amp;#034;``` to get the next page of results, though. We can bump up the number we get with the  ```&amp;#034;maxResults&amp;#034;``` parameter, but I see no need for that right now. Let&amp;#039;s look at the first result here. I&amp;#039;ll drill straight into that snippet parameter, as that&amp;#039;s the most interesting part:&#xD;
&#xD;
    mySearch[&amp;#034;items&amp;#034;, 1, &amp;#034;snippet&amp;#034;]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-498969337448306280](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-498969337448306280.png)&#xD;
&#xD;
And we see, sadly, that instead of getting results for my name, Steve Wolfraum, we get them for some random dude name Stephen Wolfram. Not to be deterred, let&amp;#039;s at least get something out of this and see a thumbnail for all our results. Tragically, we can&amp;#039;t download videos with the YouTube API, but at least we get thumbnails...hooray? To make things more fun, we&amp;#039;ll also add a filter to all these results, as the raw thumbnails really aren&amp;#039;t all that interesting.&#xD;
&#xD;
    ImageAdjust@LaplacianGaussianFilter[Import[#], 3]&amp;amp;/@&#xD;
      Normal@mySearch[&amp;#034;items&amp;#034;, All, &amp;#034;snippet&amp;#034;, &amp;#034;thumbnails&amp;#034;, &amp;#034;high&amp;#034;, &amp;#034;url&amp;#034;]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-8416895123856568403](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-8416895123856568403.png)&#xD;
&#xD;
Cool. There&amp;#039;s some data. We can also pull out statistics and things, say for different videos broadcast on the Wolfram Research channel. First we&amp;#039;ll get their channel ID:&#xD;
&#xD;
    wriChannel=&#xD;
      $so[&amp;#034;Search&amp;#034;, &amp;#034;q&amp;#034;-&amp;gt;&amp;#034;Wolfram Research&amp;#034;, &amp;#034;type&amp;#034;-&amp;gt;&amp;#034;channel&amp;#034;,&#xD;
        &amp;#034;part&amp;#034;-&amp;gt;&amp;#034;id&amp;#034;, &amp;#034;maxResults&amp;#034;-&amp;gt;&amp;#034;1&amp;#034;][&amp;#034;items&amp;#034;, 1, &amp;#034;id&amp;#034;, &amp;#034;channelId&amp;#034;]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
    &amp;#034;UCJekgf6k62CQHdENWf2NgAQ&amp;#034;&#xD;
&#xD;
Now we&amp;#039;ll use this to extract the 50 most popular videos:&#xD;
&#xD;
    wriVids=$so[&amp;#034;Search&amp;#034;, &amp;#034;channelId&amp;#034;-&amp;gt;wriChannel, &amp;#034;type&amp;#034;-&amp;gt;&amp;#034;video&amp;#034;, &#xD;
      &amp;#034;order&amp;#034;-&amp;gt;&amp;#034;viewCount&amp;#034;, &amp;#034;part&amp;#034;-&amp;gt;&amp;#034;id,snippet&amp;#034;, &amp;#034;maxResults&amp;#034;-&amp;gt;&amp;#034;50&amp;#034;]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-5403531027782801587](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-5403531027782801587.png)&#xD;
&#xD;
And now we&amp;#039;ll get view counts:&#xD;
&#xD;
    wriStats=$so[&amp;#034;ListVideos&amp;#034;, &#xD;
      &amp;#034;id&amp;#034;-&amp;gt;StringRiffle[Normal@wriVids[&amp;#034;items&amp;#034;, All, &amp;#034;id&amp;#034;, &amp;#034;videoId&amp;#034;], &amp;#034;,&amp;#034;], &#xD;
      &amp;#034;part&amp;#034;-&amp;gt;&amp;#034;statistics&amp;#034;&#xD;
      ]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-4181911101890639189](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-4181911101890639189.png)&#xD;
&#xD;
And then we&amp;#039;ll make a  [```WordCloud```](https://reference.wolfram.com/language/ref/WordCloud.html) of titles vs viewcounts:&#xD;
&#xD;
    WordCloud@&#xD;
      AssociationThread[&#xD;
        Normal@wriVids[&amp;#034;items&amp;#034;, All, &amp;#034;snippet&amp;#034;, &amp;#034;title&amp;#034;],&#xD;
        ToExpression@Normal@wriStats[&amp;#034;items&amp;#034;, All, &amp;#034;statistics&amp;#034;, &amp;#034;viewCount&amp;#034;]&#xD;
        ]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-948349109694102953](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-948349109694102953.png)&#xD;
&#xD;
And we see as far as YouTube cares, there&amp;#039;s really only one video WRI has made. But dropping that one we might see some more interesting structure:&#xD;
&#xD;
    WordCloud@&#xD;
      AssociationThread[&#xD;
        Rest@Normal@wriVids[&amp;#034;items&amp;#034;, All, &amp;#034;snippet&amp;#034;, &amp;#034;title&amp;#034;],&#xD;
        Rest@ToExpression@Normal@wriStats[&amp;#034;items&amp;#034;, All, &amp;#034;statistics&amp;#034;, &amp;#034;viewCount&amp;#034;]&#xD;
        ]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-978266547142309807](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-978266547142309807.png)&#xD;
&#xD;
And it seems that people really like the basics and...really like seismic waves?&#xD;
&#xD;
I&amp;#039;ll embed the first of those so we can see how good the really are:&#xD;
&#xD;
    $so[&amp;#034;EmbedIFrame&amp;#034;, &amp;#034;id&amp;#034;-&amp;gt;wriVids[&amp;#034;items&amp;#034;, 3, &amp;#034;id&amp;#034;, &amp;#034;videoId&amp;#034;]]&#xD;
&#xD;
    (* Out *)&#xD;
    &amp;lt;iframe id=&amp;#034;ytplayer&amp;#034; type=&amp;#034;text/html&amp;#034; width=&amp;#034;640&amp;#034; height=&amp;#034;360&amp;#034;&#xD;
    src=&amp;#034;https://www.youtube.com/embed/2rYjlVPU9U4?autoplay=0&amp;#034;&#xD;
      frameborder=&amp;#034;0&amp;#034;&amp;gt;&amp;lt;/iframe&amp;gt;&#xD;
&#xD;
&#xD;
### Uploading Videos&#xD;
&#xD;
A YouTube API wouldn&amp;#039;t be much of a YouTube API if it couldn&amp;#039;t upload videos, of course, so I cooked that in as well.&#xD;
&#xD;
Here&amp;#039;s a sample of that. We&amp;#039;ll first pull an animation off the  [```Manipulate```](https://reference.wolfram.com/language/ref/Manipulate.html) docs:&#xD;
&#xD;
    anim =&#xD;
      Export[&#xD;
        FileNameJoin@{$TemporaryDirectory, &amp;#034;plot3d.flv&amp;#034;},&#xD;
        Manipulate[&#xD;
          Plot3D[Sin[n x y], &#xD;
            {x, 0, 3}, {y, 0, 3}, &#xD;
            ViewPoint -&amp;gt; Dynamic[{2, v, 2}], SphericalRegion -&amp;gt; True, Ticks -&amp;gt; None,&#xD;
            PerformanceGoal-&amp;gt;&amp;#034;Quality&amp;#034;&#xD;
            ], &#xD;
          {n, 1, 4}, &#xD;
          {v, -2, 2}&#xD;
          ]&#xD;
        ];&#xD;
&#xD;
Then we&amp;#039;ll upload the video we made:&#xD;
&#xD;
    upload = $so[&amp;#034;UploadVideo&amp;#034;, &amp;#034;part&amp;#034;-&amp;gt;&amp;#034;id&amp;#034;, &amp;#034;BodyContent&amp;#034;-&amp;gt;anim];&#xD;
&#xD;
Then we attach a title and things in a second request:&#xD;
&#xD;
    $so[&amp;#034;UpdateVideo&amp;#034;, &amp;#034;id&amp;#034; -&amp;gt; upload[&amp;#034;id&amp;#034;],&#xD;
     &amp;#034;part&amp;#034; -&amp;gt; &amp;#034;snippet&amp;#034;,&#xD;
      &amp;#034;Title&amp;#034; -&amp;gt; &amp;#034;Mathematica Examples: Plot 3D&amp;#034;,&#xD;
     &amp;#034;CategoryID&amp;#034; -&amp;gt; &amp;#034;22&amp;#034;&#xD;
     ]&#xD;
&#xD;
    (*Out:*)&#xD;
    &#xD;
![post22-4324612576805415951](https://www.wolframcloud.com/objects/b3m2a1/home/img/post22-4324612576805415951.png)&#xD;
&#xD;
And then now we&amp;#039;ll embed that video we just made:&#xD;
&#xD;
    $so[&amp;#034;EmbedIFrame&amp;#034;, &amp;#034;id&amp;#034;-&amp;gt;upload[&amp;#034;id&amp;#034;]]&#xD;
&#xD;
    (* Out *)&#xD;
    &amp;lt;iframe id=&amp;#034;ytplayer&amp;#034; type=&amp;#034;text/html&amp;#034; width=&amp;#034;640&amp;#034; height=&amp;#034;360&amp;#034;&#xD;
    src=&amp;#034;https://www.youtube.com/embed/Quzcr4Vuq_Q?autoplay=0&amp;#034;&#xD;
      frameborder=&amp;#034;0&amp;#034;&amp;gt;&amp;lt;/iframe&amp;gt;</description>
    <dc:creator>b3m2a1 ​ </dc:creator>
    <dc:date>2018-09-29T04:42:36Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1736686">
    <title>Bayesian linear regression in Mathematica</title>
    <link>https://community.wolfram.com/groups/-/m/t/1736686</link>
    <description>Recently I updated my [Bayesian inference reporitory][1] with a new function called `BayesianLinearRegression` to provide a Bayesian alternative to Mathematica&amp;#039;s `LinearModelFit`. I also submitted the code for this function to the [Wolfram function repository][2] to make it easier to access, so the function can also be used with `ResourceFunction[&amp;#034;BayesianLinearRegression&amp;#034;]`.&#xD;
&#xD;
The example notebook in the repository provides several examples of how the function can be used, some of which I will reproduce below. Please refer to the GitHub README.md file (which is displayed on the homepage of the repository) for instructions about installing the `BayesianInference` package. The code is in [this file][3], in case you&amp;#039;re interested in taking a look under the hood.&#xD;
&#xD;
## Fitting polynomials ##&#xD;
&#xD;
First generate some test data:&#xD;
&#xD;
    data = RandomVariate[&#xD;
      MultinormalDistribution[{{1, 0.7}, {0.7, 1}}],&#xD;
      20&#xD;
    ];&#xD;
    ListPlot[data]&#xD;
&#xD;
![enter image description here][4]&#xD;
&#xD;
The usage of `BayesianLinearRegression` is similar to that of `LinearModelFit` with one significant difference: I decided that the `Rule`-based data specification used by `Predict` and `NetTrain` is often more convenient than the matrix input used by the `Fit` family, so I decided that both types of data specifications should work. The main reason for this is that `BayesianLinearRegression` also supports regression of vector outputs (an example of that is given in the repository example notebook), in which case the `Rule`-based format is often easier to understand.&#xD;
&#xD;
When you fit a model, `BayesianLinearRegression` returns an `Association` containing all relevant information about the fit. Fit a model of the form `y == a + b x + randomness` where `randomness`  is distributed as `NormalDistribution[0, sigma]`. Here, `a`, `b` and `sigma` are unknowns that need to be fitted to the data:&#xD;
&#xD;
    In[20]:= Clear[x];&#xD;
    model =  BayesianLinearRegression[data, {1, x}, x];&#xD;
&#xD;
Below is a more detailed description of the information return by `BayesianLinearRegression`, but let&amp;#039;s first concentrate on the main fit result, which is the [posterior predictive distribution][5] :&#xD;
&#xD;
    In[61]:= model[&amp;#034;Posterior&amp;#034;, &amp;#034;PredictiveDistribution&amp;#034;]&#xD;
    &#xD;
    Out[61]= StudentTDistribution[-0.267818 + 0.986121 x, &#xD;
     0.726105 Sqrt[1.05016 + 0.00692863 x + 0.0635094 x^2], &#xD;
     2001/100&#xD;
    ]&#xD;
&#xD;
As you can see, the result is returned is an `x`-dependent `StudentTDistribution`. Visualize the predictions:&#xD;
&#xD;
    With[{&#xD;
      predictiveDist = model[&amp;#034;Posterior&amp;#034;, &amp;#034;PredictiveDistribution&amp;#034;],&#xD;
      bands = {95, 50, 5}&#xD;
      },&#xD;
     Show[&#xD;
      Plot[&#xD;
       Evaluate@InverseCDF[predictiveDist, bands/100],&#xD;
       {x, -4, 4}, Filling -&amp;gt; {1 -&amp;gt; {2}, 3 -&amp;gt; {2}}, PlotLegends -&amp;gt; bands&#xD;
       ],&#xD;
      ListPlot[data],&#xD;
      PlotRange -&amp;gt; All&#xD;
      ]&#xD;
     ]&#xD;
![enter image description here][6]&#xD;
&#xD;
In the `BayesianInference` package on GitHub, I included a function called `regressionPlot1D` which makes it a bit easier to make this plot:&#xD;
&#xD;
    Show[&#xD;
     regressionPlot1D[model[&amp;#034;Posterior&amp;#034;, &amp;#034;PredictiveDistribution&amp;#034;], {x, -4, 4}, {95, 50, 5}],&#xD;
     ListPlot[data]&#xD;
    ] &#xD;
    (* same result*)&#xD;
&#xD;
## Model comparison and model mixing ##&#xD;
&#xD;
Often you&amp;#039;ll want to compare multiple models against a data set to see which one works best. For example, here is some data where it&amp;#039;s a bit unclear if you should use a first or second order model:&#xD;
&#xD;
    data = {{-1.5`,-1.375`},{-1.34375`,-2.375`},{1.5`,0.21875`},{1.03125`,0.6875`},{-0.5`,-0.59375`},&#xD;
      {-1.875`,-2.59375`},{1.625`,1.1875`},{-2.0625`,-1.875`},{1.0625`,0.5`},{-0.4375`,-0.28125`},{-0.75`,-0.75`},{2.125`,0.375`},{0.4375`,0.6875`},{-1.3125`,-0.75`},{-1.125`,-0.21875`},&#xD;
      {0.625`,0.40625`},{-0.25`,0.59375`},{-1.875`,-1.625`},{-1.`,-0.8125`},{0.4375`,-0.09375`}}&#xD;
    ListPlot[data]&#xD;
![enter image description here][7]&#xD;
&#xD;
Fit the data with polynomials up to fourth degree; rank the log-evidences and inspect them. As you can see, the first and second order fits are almost equally likely:&#xD;
&#xD;
    In[152]:= models = AssociationMap[&#xD;
       BayesianLinearRegression[Rule @@@ data, x^Range[0, #], x] &amp;amp;,&#xD;
       Range[0, 4]&#xD;
       ];&#xD;
    ReverseSort@models[[All, &amp;#034;LogEvidence&amp;#034;]]&#xD;
    &#xD;
    Out[153]= &amp;lt;|1 -&amp;gt; -30.0072, 2 -&amp;gt; -30.1774, 3 -&amp;gt; -34.4292, 4 -&amp;gt; -38.7037, 0 -&amp;gt; -38.787|&amp;gt;&#xD;
&#xD;
Show the prediction bands:&#xD;
&#xD;
    Show[&#xD;
     regressionPlot1D[ models[1, &amp;#034;Posterior&amp;#034;, &amp;#034;PredictiveDistribution&amp;#034;], {x, -3, 3}],&#xD;
     regressionPlot1D[models[2, &amp;#034;Posterior&amp;#034;, &amp;#034;PredictiveDistribution&amp;#034;], {x, -3, 3},  PlotStyle -&amp;gt; Dashed, PlotLegends -&amp;gt; None],&#xD;
     ListPlot[data]&#xD;
    ]&#xD;
![Comparison of the first (solid) and second order (dashed) prediction bands][8]&#xD;
&#xD;
Instead of picking just one of the models, we can define a mixture over all of them. First calculate the weights for each fit:&#xD;
&#xD;
    In[94]:= weights = Normalize[&#xD;
       (* subtract the max to reduce rounding error *)&#xD;
       Exp[models[[All, &amp;#034;LogEvidence&amp;#034;]] - Max[models[[All, &amp;#034;LogEvidence&amp;#034;]]]],&#xD;
       Total&#xD;
       ];&#xD;
    ReverseSort[weights]&#xD;
    &#xD;
    Out[95]= &amp;lt;|1 -&amp;gt; 0.516002, 2 -&amp;gt; 0.47702, 3 -&amp;gt; 0.0068122, 4 -&amp;gt; 0.0000982526, &#xD;
     0 -&amp;gt; 0.0000667854|&amp;gt;&#xD;
&#xD;
Define a mixture of posterior predictive distributions and show the predictions:&#xD;
&#xD;
    In[96]:= mixDist = MixtureDistribution[&#xD;
       Values[weights],&#xD;
       Values@models[[All, &amp;#034;Posterior&amp;#034;, &amp;#034;PredictiveDistribution&amp;#034;]]&#xD;
       ];&#xD;
    Show[&#xD;
     regressionPlot1D[mixDist, {x, -3, 3}],&#xD;
     ListPlot[data]&#xD;
     ]&#xD;
![Prediction bands of a mixture of polynomial models up to degree 4][9]&#xD;
&#xD;
As you can see, if one model is not clearly the best, you can just split the difference between them.&#xD;
&#xD;
Another interesting thing you can do with `BayesianLinearRegression` is Bayesian updating. Basically, this means that if you&amp;#039;ve fitted some data in the past and are now finding new data, you can incorporate the new data by updating your fit without having to re-fit all of the data (old and new) in one go. An example of this is given in the example code notebook on GitHub (in the section about the `&amp;#034;PriorParameters&amp;#034;` options of the function). &#xD;
&#xD;
## Detailed explanation about the returned values ##&#xD;
`BayesianLinearRegression` returns an `Association` with the following keys:&#xD;
&#xD;
    Keys[model]&#xD;
    &#xD;
    Out[21]= {&amp;#034;LogEvidence&amp;#034;, &amp;#034;PriorParameters&amp;#034;, &amp;#034;PosteriorParameters&amp;#034;, &amp;#034;Posterior&amp;#034;, &amp;#034;Prior&amp;#034;, &amp;#034;Basis&amp;#034;, &amp;#034;IndependentVariables&amp;#034;}&#xD;
&#xD;
 - `&amp;#034;LogEvidence&amp;#034;`: In a Bayesian setting, the evidence (also called [marginal likelihood][10]) measures how well the model fits the data (with a higher evidence indicating a better fit). The evidence has the virtue that it naturally penalizes models for their complexity and therefore does not suffer from over-fitting in the way that measures like the sum-of-squares or likelihood do. &#xD;
 - `&amp;#034;Basis&amp;#034;`, `&amp;#034;IndependentVariables&amp;#034;`: Simply the basis functions and independent variable specified by the user.&#xD;
 - `&amp;#034;Posterior&amp;#034;`, `&amp;#034;Prior&amp;#034;`: These two keys each hold an association with 4 distributions: &#xD;
 1. `&amp;#034;PredictiveDistribution&amp;#034;`: A distribution that depends on the independent variables (`x` in the example above). By filling in a value for `x`, you get a distribution that tells you where you could expect to find future `y` values. This distribution accounts for all relevant uncertainties in the model: model variance caused by the term `randomness`; uncertainty in the values of `a` and `b`; and uncertainty in `sigma`.&#xD;
 2. `&amp;#034;UnderlyingValueDistribution&amp;#034;`: Similar to `&amp;#034;PredictiveDistribution&amp;#034;`, but this distribution give the possible values of `a + b x` without the `randomness` error term.&#xD;
 3. `&amp;#034;RegressionCoefficientDistribution&amp;#034;`: The join distribution over `a` and `b`.&#xD;
 4. `&amp;#034;ErrorDistribution&amp;#034;`: The distribution of the variance `sigma^2`.&#xD;
 - ` &amp;#034;PriorParameters&amp;#034;`, `&amp;#034;PosteriorParameters&amp;#034;`: These parameters are not immediately important most of the time, but they contain all of the relevant information about the fit. &#xD;
&#xD;
## Sources ##&#xD;
&#xD;
The formulas underlying BayesianLinearRegression are based mainly on the following Wikipedia articles. The names of the hyper parameters returned by the function are based on the article about multivariate linear regression. &#xD;
&#xD;
 - [Bayesian linear regression (Wikipedia)][11]&#xD;
 - [Bayesian multivariate linear regression (Wikipedia)][12]&#xD;
&#xD;
&#xD;
  [1]: https://github.com/ssmit1986/BayesianInference&#xD;
  [2]: https://resources.wolframcloud.com/FunctionRepository/resources/BayesianLinearRegression&#xD;
  [3]: https://github.com/ssmit1986/BayesianInference/blob/master/BayesianInference/BayesianLinearRegression.wl&#xD;
  [4]: https://community.wolfram.com//c/portal/getImageAttachment?filename=testdata.png&amp;amp;userId=839741&#xD;
  [5]: https://en.wikipedia.org/wiki/Posterior_predictive_distribution&#xD;
  [6]: https://community.wolfram.com//c/portal/getImageAttachment?filename=fit.png&amp;amp;userId=839741&#xD;
  [7]: https://community.wolfram.com//c/portal/getImageAttachment?filename=testdata2.png&amp;amp;userId=839741&#xD;
  [8]: https://community.wolfram.com//c/portal/getImageAttachment?filename=fit2.png&amp;amp;userId=839741&#xD;
  [9]: https://community.wolfram.com//c/portal/getImageAttachment?filename=fitmix.png&amp;amp;userId=839741&#xD;
  [10]: https://en.wikipedia.org/wiki/Marginal_likelihood&#xD;
  [11]: https://en.wikipedia.org/wiki/Bayesian_linear_regression&#xD;
  [12]: https://en.wikipedia.org/wiki/Bayesian_multivariate_linear_regression</description>
    <dc:creator>Sjoerd Smit</dc:creator>
    <dc:date>2019-07-14T12:30:33Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1190717">
    <title>The MoleculeViewer package</title>
    <link>https://community.wolfram.com/groups/-/m/t/1190717</link>
    <description>I have just released a package entitled [&amp;#034;MoleculeViewer&amp;#034;][1], whose functionality is exactly what it says on the tin.&#xD;
&#xD;
This package was inspired in part by previous efforts by [@BoB LeSuer][at0] and [@Bianca Eifert][at1]. I took the best parts of [their][2] [packages][3], along with some of the good parts of the built-in molecule renderer, and added a few of my own tweaks. One noticeable tweak would be the depiction of multiple bonds (just like what is done in some physical models), as in the following image:&#xD;
&#xD;
    MoleculeViewer[&amp;#034;thiacloprid&amp;#034;]&#xD;
![thiacloprid][4]&#xD;
&#xD;
The package has a number of other nifty features and auxiliary functions, like highlighting:&#xD;
&#xD;
    MoleculeViewer[&amp;#034;caffeine&amp;#034;, Highlighted -&amp;gt; {&amp;#034;O&amp;#034;, &amp;#034;N&amp;#034; -&amp;gt; Orange}]&#xD;
![caffeine][5]&#xD;
&#xD;
and legends:&#xD;
&#xD;
    MoleculeViewer[RunOpenBabel[GetChemSpider[&amp;#034;calicheamicin&amp;#034;, &amp;#034;InChI&amp;#034;]], PlotLegends -&amp;gt; True]&#xD;
![calicheamicin][6]&#xD;
&#xD;
Before using the package, you will need to install [Open Babel][7] for some of its conversion functionality. Additionally, to use the [ChemSpider][8] search functionality, you will need to [register][9] to obtain an API key.&#xD;
&#xD;
Download the paclet from GitHub and [install in the usual manner][10]. Alternatively, using the technique featured [here][11], evaluate&#xD;
&#xD;
    PacletInstall[&amp;#034;MoleculeViewer&amp;#034;, &amp;#034;Site&amp;#034; -&amp;gt; &amp;#034;http://raw.githubusercontent.com/tpfto/MoleculeViewer/master&amp;#034;]&#xD;
&#xD;
Documentation and a gallery are given as separate notebooks.&#xD;
&#xD;
 [at0]: http://community.wolfram.com/web/bobthechemist&#xD;
 [at1]: http://community.wolfram.com/web/biancaeifert&#xD;
&#xD;
&#xD;
  [1]: https://github.com/tpfto/MoleculeViewer/releases&#xD;
  [2]: https://github.com/biancaeifert/multi-bond-plot&#xD;
  [3]: https://github.com/bobthechemist/molviewer&#xD;
  [4]: http://community.wolfram.com//c/portal/getImageAttachment?filename=zotu8.png&amp;amp;userId=520181&#xD;
  [5]: http://community.wolfram.com//c/portal/getImageAttachment?filename=eTaCP.png&amp;amp;userId=520181&#xD;
  [6]: http://community.wolfram.com//c/portal/getImageAttachment?filename=nlZ63.png&amp;amp;userId=520181&#xD;
  [7]: http://openbabel.org/&#xD;
  [8]: http://www.chemspider.com/&#xD;
  [9]: http://www.chemspider.com/Register.aspx&#xD;
  [10]: https://mathematica.stackexchange.com/a/141888&#xD;
  [11]: https://mathematica.stackexchange.com/questions/155123</description>
    <dc:creator>J. M.</dc:creator>
    <dc:date>2017-09-23T15:31:37Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/861654">
    <title>Loading packages in Mathematica 10?</title>
    <link>https://community.wolfram.com/groups/-/m/t/861654</link>
    <description>For years now I have occasionally made use of packages. I have always found that the directions don&amp;#039;t work for me, even though I have tried time and again to follow them closely and to try different ways of loading them. I have always had to resort to opening the package and executing it before I could use the package functions in a Mathematica notebook. I am making another try now. The first file is a package. The second file is a notebook that should load the package. It appears that the names of the symbols load into the second script, but they do not function as they should. Any ideas? The following two files should illustrate my problem.&#xD;
&#xD;
    (* filename: Development.m *)&#xD;
    &#xD;
    BeginPackage[&amp;#034;Development`&amp;#034;]&#xD;
    &#xD;
    v::usage = &amp;#034;v[z] converts x+iy to {x, y}.&amp;#034;&#xD;
    &#xD;
    hello::usage = &amp;#034;Says hello.&amp;#034;&#xD;
    &#xD;
    Begin[&amp;#034;Private`&amp;#034;]&#xD;
    &#xD;
    hello = Print[&amp;#034;Hello from hello&amp;#034;];&#xD;
    &#xD;
    v[z_] := {Re @ z, Im @ z};&#xD;
    &#xD;
    End[]&#xD;
    &#xD;
    EndPackage[]&#xD;
    &#xD;
    &#xD;
    (* filename: testPackage.nb *)&#xD;
    &#xD;
    SetDirectory[$UserBaseDirectory &amp;lt;&amp;gt; &amp;#034;/Applications&amp;#034;]&#xD;
    &#xD;
    (* returns &amp;#034;/Users/myusername/Library/Mathematica/Applications&amp;#034; *)&#xD;
    &#xD;
    FileNames[]    (* returns {Development.m} *)&#xD;
    &#xD;
    &amp;lt;&amp;lt; Development`&#xD;
    &#xD;
    hello        (* returns &amp;#034;hello&amp;#034;, which is a failure *)&#xD;
    &#xD;
    v[2 + 3 I]  (* returns &amp;#034;v[2+3I]&amp;#034; which is a failure *)&#xD;
    &#xD;
    ?&amp;#034;Global`*&amp;#034;     (* returns panel with hello and v, but no variables are listed *)</description>
    <dc:creator>Gary Palmer</dc:creator>
    <dc:date>2016-05-25T03:19:08Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/3300846">
    <title>AILink paclet: Wolfram + GPT-4o integration with plugins, web and system access, and data analysis</title>
    <link>https://community.wolfram.com/groups/-/m/t/3300846</link>
    <description>![AILink paclet: Wolfram + GPT-4o integration with plugins, web and system access, and data analysis][1]&#xD;
&#xD;
&amp;amp;[Wolfram Notebook][2]&#xD;
&#xD;
&#xD;
  [1]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Image20241018220831.jpg&amp;amp;userId=20103&#xD;
  [2]: https://www.wolframcloud.com/obj/d9f125fe-0ba3-4381-b6aa-0a1934ad0527</description>
    <dc:creator>Kirill Belov</dc:creator>
    <dc:date>2024-10-18T10:30:19Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/2441773">
    <title>Documentation: manifest file issue</title>
    <link>https://community.wolfram.com/groups/-/m/t/2441773</link>
    <description>I have a paclet and I&amp;#039;ve added the {&amp;#034;Documentation&amp;#034;} extension. I&amp;#039;m using the Document Tools palette to help build it. To make it easy, I&amp;#039;ve created one Reference Page (there are 300+ function in my Paclet). When running `PacletBuild` I get an error in Join:&#xD;
&#xD;
&amp;gt; Join::heads: Heads List and Missing at positions 1 and 2 are expected to be the same.&#xD;
&#xD;
The Call Stack shows:&#xD;
&#xD;
    Join[{&amp;#034;Documentation/English/ReferencePages/Symbols/applyEach.nb&amp;#034;}, &#xD;
     Missing[&amp;#034;NotAvailable&amp;#034;], &amp;lt;a list of all the files in the Kernel folder&amp;gt;]&#xD;
&#xD;
What is PacletBuild looking for that I&amp;#039;m missing? &#xD;
&#xD;
&#xD;
----------&#xD;
Second error: After the join error, I get an error on my actual reference page:&#xD;
&#xD;
&amp;gt; Throw::nocatch: Uncaught Throw[Illegal manifest file: {Documentation/English/ReferencePages/Guides/Alex.nb,Documentation/English/ReferencePages/Symbols/applyEach.nb}] returned to top level.&#xD;
&#xD;
The Call Stack doesn&amp;#039;t have any other information. Any help is appreciated.</description>
    <dc:creator>Andrew Yule</dc:creator>
    <dc:date>2022-01-10T16:10:31Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1646303">
    <title>UNET: neural network for 2D &amp;amp; 3D image segmentation w/ medical examples</title>
    <link>https://community.wolfram.com/groups/-/m/t/1646303</link>
    <description># UNET [![DOI](https://zenodo.org/badge/137186334.svg)](https://zenodo.org/badge/latestdoi/137186334) [![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/dwyl/esta/issues)&#xD;
&#xD;
&#xD;
----------&#xD;
&#xD;
![Automated 3D muscle segmentation using UNET / RESNET using DIXON MRI data][17]&#xD;
&#xD;
&#xD;
A package to generate and train a UNET deep convolutional network for 2D and 3D image segmentation.&#xD;
&#xD;
Some code was based on [work][1] by [@Ali Hashmi][at0], which was also dicussed in [this post][2] &#xD;
The full version of the toolbox can be found on my [github page][3].&#xD;
&#xD;
* [Information](#information)&#xD;
* [Install toolbox](#install-toolbox)&#xD;
* [Using the toolbox](#using-the-toolbox)&#xD;
* [Functionality](#functionality)&#xD;
* [Visualization](#visualization)&#xD;
* [Example](#example)&#xD;
&#xD;
## Information&#xD;
&#xD;
UNET is developed for [Mathematica](https://www.wolfram.com/mathematica/).&#xD;
It contains the following toolboxes:&#xD;
&#xD;
- UnetCore&#xD;
- UnetSupport&#xD;
&#xD;
Documentation of all functions and their options is fully integrated in the Mathematica documentation.&#xD;
The toolbox always works within the latest version of Mathematica and does not support any backward compatibility.&#xD;
&#xD;
All code and documentation is maintained and uploaded to github using [Workbench](https://www.wolfram.com/workbench/).&#xD;
&#xD;
## Install toolbox&#xD;
&#xD;
Install the toolbox in the Mathematica UserBaseDirectory &amp;gt; Applications.&#xD;
&#xD;
	FileNameJoin[{$UserBaseDirectory, &amp;#034;Applications&amp;#034;}]&#xD;
  &#xD;
## Using the toolbox&#xD;
&#xD;
The toolbox can be loaded by using &amp;lt;&amp;lt;UNET`&#xD;
&#xD;
The notbook ``UNET.nb`` shows examples of how to use the toolbox on artificially generated 2D data. &#xD;
There are also examples how to visualize the layer of your trained network and how to visualize the training itself. &#xD;
&#xD;
## Functionality&#xD;
&#xD;
The network supports multi channel inputs and multi class segmentation.&#xD;
&#xD;
* UNET generates a UNET convolutional network.  &#xD;
    * 2D UNET  &#xD;
![UNET 2D][4]&#xD;
    * 3D UNET  &#xD;
![UNET 3D][5]&#xD;
&#xD;
* Loss Layers: Training the data is done using three loss layers: a SoftDiceLossLayer, BrierLossLayer and a CrossEntropyLossLayer.  &#xD;
![SoftDiceLossLayer, BrierLossLayer and a CrossEntropyLossLayer][6]&#xD;
&#xD;
* Convolution Blocks: The toobox contains five different convolution blocks that build up the network: [UNET][7], UResNet, [RestNet][8], UDenseNet, [DensNet][9].  &#xD;
![Convolution blocks][10]&#xD;
&#xD;
* SplitTrainData splits the data and labels into training, validation and test data.  &#xD;
![split train Data][11]&#xD;
&#xD;
* TrainUNET trains the network.  &#xD;
![Train UNET][12]&#xD;
&#xD;
## Visualization&#xD;
&#xD;
* Visualize the network and results.  &#xD;
    * Visualize the features of the layers.  &#xD;
![Visualize layer features][13]&#xD;
    * Visualize the results.  &#xD;
![Visualize the results][14]&#xD;
    * Animate the training process.  &#xD;
![UNET 2D animation][15]  &#xD;
![UNET 3D animation][16]&#xD;
&#xD;
## Example&#xD;
&#xD;
* Example: 3D segmentation of lower legg muscles using MRI data.  &#xD;
&#xD;
![Automated 3D muscle segmentation using UNET / RESNET using DIXON MRI data][17]&#xD;
&#xD;
&#xD;
  [1]: https://github.com/alihashmiii/UNet-Segmentation-Wolfram&#xD;
  [2]: https://community.wolfram.com/groups/-/m/t/1341081?p_p_auth=w8PIeeiA&#xD;
  [3]: https://github.com/mfroeling&#xD;
  [4]: https://community.wolfram.com//c/portal/getImageAttachment?filename=UNET2D.PNG&amp;amp;userId=1332602&#xD;
  [5]: https://community.wolfram.com//c/portal/getImageAttachment?filename=UNET3D.PNG&amp;amp;userId=1332602&#xD;
  [6]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Loss.PNG&amp;amp;userId=1332602&#xD;
  [7]: https://arxiv.org/abs/1505.04597&#xD;
  [8]: https://arxiv.org/abs/1512.03385&#xD;
  [9]: https://arxiv.org/abs/1608.06993&#xD;
  [10]: https://community.wolfram.com//c/portal/getImageAttachment?filename=convblocks.PNG&amp;amp;userId=1332602&#xD;
  [11]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Split.PNG&amp;amp;userId=1332602&#xD;
  [12]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Train.PNG&amp;amp;userId=1332602&#xD;
  [13]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Visualize1.PNG&amp;amp;userId=1332602&#xD;
  [14]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Visualize2.PNG&amp;amp;userId=1332602&#xD;
  [15]: https://community.wolfram.com//c/portal/getImageAttachment?filename=amin0-v2.gif&amp;amp;userId=1332602&#xD;
  [16]: https://community.wolfram.com//c/portal/getImageAttachment?filename=amin4-v2.gif&amp;amp;userId=1332602&#xD;
  [17]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Muscle_Segmentation.jpg&amp;amp;userId=1332602&#xD;
&#xD;
 [at0]: https://community.wolfram.com/web/alihashmi87</description>
    <dc:creator>Martijn Froeling</dc:creator>
    <dc:date>2019-04-03T20:01:26Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1170226">
    <title>Package development: How to spend less time creating a polished interface?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1170226</link>
    <description>One of the great things about Mathematica is that it makes it so easy to do so much in so little code.  It is partly because of this that I am so frustrated with the amount of time I need to spend developing the *interface* of package functions compared to their *functionality*.&#xD;
&#xD;
Suppose you wrote a Wolfram Language function that does something useful and interesting.  Now you want to wrap it up into a package, and make it usable by everyone.  A polished package is expected to have functions that:&#xD;
&#xD;
 - Will check their input for errors&#xD;
 - Will report errors in an informative way&#xD;
 - Will use messages appropriately (i.e. associate them with the correct symbol name)&#xD;
 - Will adhere to the de-facto Mathematica interface conventions: proper use of optional arguments, options, option inheritance (as in Graphics -&amp;gt; Plot), default option value handling, use of `Automatic`, etc.&#xD;
 - Have SyntaxInformation&#xD;
&#xD;
I find that not infrequently I spend more time on making the function user-friendly than developing its functionality.&#xD;
&#xD;
**How do people generally deal with this task?  How do you implement error checking and reporting in your packages?**&#xD;
&#xD;
To give an example, take a function as simple a moving average calculator.  It is really easy to implement:&#xD;
&#xD;
    movingAverage[vec_, n_] := Mean /@ Partition[vec, n, 1]&#xD;
&#xD;
But to bring it to the quality of the built-in `MovingAverage`, it should at least:&#xD;
&#xD;
 - check the number of arguments (precisely 2)&#xD;
 - check the types of arguments (a list and an integer)&#xD;
 - check the values of arguments for correctness (non-empty list and positive integer)&#xD;
 - make sure that all these checks don&amp;#039;t introduce severe performance degradation (such as array unpacking, which can even be triggered by an inefficient argument pattern)&#xD;
&#xD;
This also involves the introduction of multiple messages (for each type of error) associated to `movingAverage`. If we now want to add a `movingMedian`, we will find that we will mostly need to carry out the same checks and report the same messages. There will be small differences though, e.g. average calculations are feasible for symbolic lists like `{1,x}`, but not median calculations.  So the checks won&amp;#039;t quite be identical.  The messages will be mostly identical, but each function must associate messages to its own symbol, which means a lot of duplication.&#xD;
&#xD;
So if we care about a high-quality interface and high-quality error reporting, we will end up writing considerably more code for this than for the function&amp;#039;s core task. We will also end up with a lot of code duplication, which is frustrating and a maintenance burden.  The whole thing ends up being a lot of work and not a lot of fun (which is not very Mathematica-like :-) )&#xD;
&#xD;
Are there good ways to simplify these tasks?  Option handling also used to be error-prone and frustrating, but the introduction of `OptionsPattern[]` and `OptionValue[]` made it much easier.&#xD;
&#xD;
----&#xD;
&#xD;
I can see that there are some built-in tool to ease these tasks, though they are mostly undocumented.  One example is `ArgumentCountQ`, another is ``Developer`CheckArgumentCount``, or some tools in ``GeneralUtilities` ``.  I would love to hear from others about how they deal with the tasks I described, which such internal functions they make use of, etc.</description>
    <dc:creator>Szabolcs Horvát</dc:creator>
    <dc:date>2017-08-25T11:15:29Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/917616">
    <title>Training loss goes to 0 when specifying TargetDevice = GPU</title>
    <link>https://community.wolfram.com/groups/-/m/t/917616</link>
    <description>HI -- The neural network package is really cool. I&amp;#039;m learning a lot from experimenting with it. I have noticed one odd thing I can&amp;#039;t explain. I have a fairly simple CNN that I train on some images. It trains (although super-slowly) on my CPU, with a more or less reasonable loss getting smaller on each training round. But when I set TargetDevice = &amp;#034;GPU&amp;#034; it instantly reports 0 loss and finishes in just a couple seconds. As one clue, I had an Nvidia 970 with the latest Nvidia drivers and this didn&amp;#039;t happen. I just upgraded to a new 1080 (partially for faster network training!), and that is when this started happening. &#xD;
&#xD;
I&amp;#039;ve attached a Notebook that demonstrates this behavior and has SystemInformation[] in it. (It does use images that aren&amp;#039;t included, but I don&amp;#039;t think there is anything special about them, they are just a bunch of JPEGs). I&amp;#039;m running Nvidia driver 372.70. If there is a different driver I should be using instead, please let me know. Thanks!</description>
    <dc:creator>David Cardinal</dc:creator>
    <dc:date>2016-09-01T21:46:08Z</dc:date>
  </item>
</rdf:RDF>

