Function Resource

TsallisEntropy

Compute the Tsallis entropy based on the probabilities of the possible configurations of the system and the entropic-index

ResourceFunction["TsallisEntropy"][prob,q,k]

returns the Tsallis entropy for the list of associated probablities prob of the possible configurations for the entropic-index q and constant k.

ResourceFunction["TsallisEntropy"][dist,q]

returns the Tsallis entropy of the continuous probability distribution dist for the entropic-index q.

ResourceFunction["TsallisEntropy"]["Formula"]

return the equations for Tsallis entropy for a set of discrete probabilities and for a continuous probability distribution.

Details and Options

Tsallis entropy is a generalization of the standard Boltzmann–Gibbs entropy.
Tsallis entropy is defined as for a discrete set of probabilities.
ResourceFunction["TsallisEntropy"][prob,q,k] computes the Tsallis entropy for a given discrete set of probabilities prob = {pi} with the condition ∑i=1Wpi=1 where W= Length[prob] is the number of possible configurations.
In the limit as q 1 for ResourceFunction["TsallisEntropy"][prob,q,k], the usual Boltzmann–Gibbs entropy is recovered.
In ResourceFunction["TsallisEntropy"][prob,q,k], prob can be a list of real numbers. q and k can be real numbers.
Tsallis entropy is defined as for a continuous probability distribution.
In the limit as q 1 for ResourceFunction["TsallisEntropy"][prob,q,k], the Shannon differential entropy is recovered.

Examples

Basic Examples (2) 

Compute the Tsallis entropy for a discrete set of probability:

In[1]:=
ResourceFunction[
 "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][{0.2, 0.3, 0.5}, 2, 1]
Out[1]=

For a continuous probability distribution:

In[2]:=
ResourceFunction[
 "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][StudentTDistribution[2], 2]
Out[2]=

Scope (1) 

Examine the equations for the Tsallis entropy:

In[3]:=
ResourceFunction[
 "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"]["Formula"]
Out[3]=

Possible Issues (1) 

The probabilities must sum 1:

In[4]:=
ResourceFunction[
 "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][{0.2, 0.3, 0.2}, -2, 1]
Out[4]=

Neat Examples (4) 

Under neat examples, for the 1st example, add a line saying S_q is concave (convex) for q > 0 (q < 0). Plot the Tsallis entropy Sq({pi}) for W=2, k=1 and typical values of q:

In[5]:=
Sq[p_] := Table[ResourceFunction[
    "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][{p, 1 - p}, q, 1], {q, {-1, -0.5, 0, 0.5, 1, 2}}];
Plot[Evaluate@Sq[p], {p, 0, 1}, PlotLabels -> {-1, -0.5, 0, 0.5, 1, 2}, PlotRange -> {0, 2.5}, AxesLabel -> {"q", "\!\(\*SubscriptBox[\(S\), \(q\)]\)"}]
Out[6]=

Plot the value of the Tsallis entropy at its extremum (equiprobability) for k=1 and typical values of q:

In[7]:=
ListPlot[Table[
  ResourceFunction[
   "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][Table[1/W, {x, 1, W}], q, 1], {q, {-1, 0, 0.5, 1, 2}}, {W, 1, 4}], Joined -> True, AxesOrigin -> {1, 0}, PlotRange -> {0, 3}, PlotLabels -> {-1, 0, 0.5, 1, 2}, InterpolationOrder -> 2, AxesLabel -> {"W", "\!\(\*SubscriptBox[\(S\), \(q\)]\)"}]
Out[7]=

Probe non-additivity Sq(A,B)=Sq(A)+Sq(B)+(1-q)Sq(A)Sq(B) for two independent systems A and B with discrete sets of probability:

In[8]:=
q = 2;
p1 = {0.2, 0.3, 0.5};
p2 = {0.1, 0.6, 0.3};
ResourceFunction[
   "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][p1, q, 1] + ResourceFunction[
   "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][p2, q, 1] + (1 - q) ResourceFunction[
    "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][p1, q, 1]*
   ResourceFunction[
    "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][p2, q, 1] == ResourceFunction[
  "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][Flatten@Outer[Times, p1, p2], q, 1]
Out[9]=

Probe non-additivity Sq(A,B)=Sq(A)+Sq(B) for two independent systems A and B with continuous probability distributions and q=1:

In[10]:=
q = 1;
\[ScriptCapitalD]1 = NormalDistribution[0, 2];
\[ScriptCapitalD]2 = NormalDistribution[1/3, 1];
ResourceFunction[
  "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][
  ProductDistribution[\[ScriptCapitalD]1, \[ScriptCapitalD]2], q] == ResourceFunction[
   "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][\[ScriptCapitalD]1, q] + ResourceFunction[
   "https://www.wolframcloud.com/obj/mohammadb/DeployedResources/\
Function/TsallisEntropy"][\[ScriptCapitalD]2, q]
Out[10]=

Source Metadata