Alcoholic Strength and Density in Ethanol–Water Mixtures Using Excess Molar Volume Correlations​
Authors: Housam Binous

​
We study the physicochemical properties of ethanol–water mixtures by relating volumetric alcohol degree, mass alcohol degree, approximate convertion factor beween volumetric and mass alcohol degree, and mixture density. The model uses an empirical polynomial correlation for the excess molar volume of the binary mixture (see Ref. 1), allowing nonideal mixing effects to be incorporated into the calculations.
​
We compute the mole fraction and density of the mixture by solving nonlinear equations derived from volume and mass balance relations. Several graphical representations are generated, including excess molar volume versus mole fraction, density versus alcohol degree, and conversions between volumetric and mass alcohol concentrations. These plots illustrate the nonlinear behavior of ethanol–water mixtures caused by molecular interactions and volume contraction during mixing.
​
Such calculations are important in chemical engineering, food processing, pharmaceutical industries, and alcoholic beverage production, where accurate determination of alcohol concentration and density is essential for quality control, distillation, and thermodynamic analysis.
​
​References: ​
[1] J.–P. E. Grolier and E. Wilhelm, “Excess Volumes and Excess Heat Capacities of Water+Ethanol at 298.15 K,” Fluid Phase Equilibria, 6(3–4), 1981 pp. 283–287. DOI: 10.1016/0378-3812(81)85011-X​
[2] G. C. Benson and O. Kiyohara, “Thermodynamics of aqueous mixtures of nonelectrolytes. I. Excess volumes of water-n-alcohol mixtures at several temperatures,” J Solution Chem, 9, 791–804 (1980). DOI: 10.1007/BF00646798​
​[3] David R. Lide, CRC handbook of chemistry and physics: a ready-reference book of chemical and physical data, 84th ed., Boca Raton: CRC Press, 2003.
[4] John A. Dean, ed., Lange’s Handbook of Chemistry, 15th ed., New York: McGraw-Hill, 1998.
[5] https://www.oiml.org/en/files/pdf_r/r022-e75.pdf
In[]:=
ClearAll["Global`*"];​​​​(*polynomialcoefficientsforexcessmolarvolumefromRef.1*)​​A[0]=-4.142;​​A[1]=-1.195;​​A[2]=-2.744;​​A[3]=0.129;​​A[4]=3.000;​​​​​​(*Excessmolarvolumemodel(Ve(x)incm^3/mol)wherex=molefractionofwater*)​​Ve[x_]:=x(1-x)Sum[A[i](2x-1)^i,{i,0,4}];​​​​​​(*plotofexcessmolarvolume*)​​p0=Plot[Ve[x],{x,0,1},PlotStyle->{Darker@Blue,Thick},Frame->True,GridLines->Automatic,ImageSize->{350,350},AspectRatio->1,FrameLabel->{Style["Mole fraction of water",14],Style["Excess molar volume (​
3
cm
/mol)",14]}]
Out[]=
Data from Ref . 2
In[]:=
In[]:=
data={{0.02675,-0.108},{0.06016,-0.236},{0.06276,-0.2455},{0.0762,-0.2932},{0.09161,-0.3455},{0.09218,-0.3473},{0.142,-0.5015},{0.14446,-0.5087},{0.2026,-0.6599},{0.20304,-0.6609},{0.24095,-0.7454},{0.31569,-0.8603},{0.34583,-0.9256},{0.39861,-0.9903},{0.40929,-1.0002},{0.42857,-1.0187},{0.4661,-1.0478},{0.4587,-1.0608},{0.5107,-1.0724},{0.55502,-1.0871},{0.55838,-1.0872},{0.60552,-1.087},{0.6478,-1.0737},{0.70588,-1.0309},{0.75788,-0.9666},{0.76692,-0.9492},{0.80438,-0.8719},{0.85246,-0.7276},{0.86577,-0.6754},{0.89964,-0.5178},{0.90126,-0.5095},{0.91087,-0.4587},{0.91986,-0.4093},{0.93135,-0.3441},{0.93329,-0.3333},{0.9394,-0.2983},{0.94485,-0.2678},{0.95121,-0.2322},{0.95496,-0.2117},{0.9599,-0.1844},{0.96462,-0.1597},{0.96918,-0.136},{0.97393,-0.1121},{0.98081,-0.0792},{0.98523,-0.059},{0.98643,-0.0537},{0.98966,-0.04},{0.99217,-0.0296},{0.99485,-0.0189},{0.99648,-0.0127},{0.99911,-0.0031}};
In[]:=
Show[p0,ListPlot[data,PlotMarkers->"OpenMarkers",PlotStyle->{Darker@Red}]]
Out[]=
In[]:=
(*purecomponentproperties*)​​​​(*Water*)​​M1=18;(*molarmassg/mol*)​​rho1=995.045;(*densitykg/m^3*)​​​​(*Ethanol*)​​M2=46;(*molarmassg/mol*)​​rho2=785.03;(*densitykg/m^3*)​​
In[]:=
(*mixturedensityequationwhererhom=mixturedensity*)​​eq1=10^-3Ve[x]==xM1(1/rhom-1/rho1)+(1-x)M2(1/rhom-1/rho2);
In[]:=
(*massofwaterandethanol*)​​(*Assuming100mLsolution*)​​m1=rho1(100-a);​​m2=rho2a;
In[]:=
wfr1=.
In[]:=
ABW=.
In[]:=
(*massfractionofwater*)​​wfr1=m1/(m1+m2);
In[]:=
NSolve[wfr1==1-ABW,a]//Simplify
Out[]=
a
473.797ABW
3.73797+1.ABW

In[]:=
(*tableofalcoholproperties*)​​tbl=Table[{a/.a->i,100(1-wfr1)/.a->i,rhom/1000/.FindRoot[{wfr1==xM1/(xM1+(1-x)M2),eq1}/.a->i,{x,0.5},{rhom,800}],(785.03/rhom)/.FindRoot[{wfr1==xM1/(xM1+(1-x)M2),eq1}/.a->i,{x,0.5},{rhom,800}]},{i,0,100,5}]
Out[]=
{{0,0.,0.995045,0.788939},{5,3.98677,0.988794,0.793927},{10,8.0595,0.982579,0.798948},{15,12.221,0.976312,0.804077},{20,16.4742,0.969891,0.8094},{25,20.8222,0.963209,0.815015},{30,25.2681,0.956149,0.821033},{35,29.8154,0.948591,0.827575},{40,34.4675,0.940416,0.834769},{45,39.228,0.931518,0.842743},{50,44.101,0.921809,0.851619},{55,49.0902,0.911244,0.861493},{60,54.2001,0.899827,0.872423},{65,59.4349,0.88763,0.884411},{70,64.7994,0.8748,0.897382},{75,70.2984,0.861532,0.911203},{80,75.937,0.847995,0.925748},{85,81.7207,0.834164,0.941098},{90,87.655,0.819536,0.957896},{95,93.746,0.803045,0.977567},{100,100.,0.78503,1.}}
In[]:=
grid=Grid[Prepend[tbl,{"Volumetric alcohol degree (% v/v)","Mass alcohol degree (% w/w)","Density","approximate factor to convert volumetric degree to mass alcohol degree"}],Frame->All,Dividers->Thickness[2],ItemSize->{{10,10,10,10},Table[2,{i,1,40}]},ItemStyle->{10,Bold},Background->{Table[Lighter[Hue[i/20*12],.6],{i,1,12}]}]
Out[]=