PowDLL

users.uoi.gr/nkourkou

PowDLL is a .NET dynamic link library used for the interconversion procedure between variable formats of Powder X-Ray files. The DLL is capable of handling the most common file formats (binary and ASCII). The library can be used as a reusable component with any .NET language or as a standalone utility.

PowDLL can run on windows OS as long as they have dotnet runtimes version 2 (or later) installed (i.e., Windows Vista SP1 or later). Linux is also supported through Wine.

Imports

Bruker/Siemens RAW (versions 1,2,4), Bruker BRML, STOE RAW (plus multi-range files), Scintag RAW (plus multi-range files), Rigaku RAW, Shimadzu RAW, Philips RD, Philips SD, Scintag RD, Panalytical XRDML, INEL Binary, INEL ASCII, Scintag ARD, powderCIF, Sietronics CPI, Riet7 DAT, DBWS, GSAS (CW STD), Jade MDI, Rigaku RIG, Philips UDF, UXD, XDA, XDD, CCDC Mercury XYE, XPOWDER PLV (old and new format), UDF (NEX), ProtoXRD and ASCII XY Files.

Exports

Bruker/Siemens RAW (versions 1,2), Philips RD, Scintag ARD, Sietronics CPI, Riet7 DAT, DBWS, GSAS (CW STD), Jade MDI, Rigaku RIG, Philips UDF, UXD, XDA, XDD, Panalytical XRDML, ASCII XY Files, MS-Excel Multiple XY, Xpowder PLV files.

Citation

Please cite if you find PowDLL useful:

PowDLL, a reusable .NET component for interconverting powder diffraction data: Recent developments, N. Kourkoumelis, ICDD Annual Spring Meetings (ed. Lisa O'Neill), Powder Diffraction, 28 (2013) 137-48.

Back to Top

Download

(current version 3.12)

PowDLL Software Update

Submission details screenshot

PowDLL is a virus-free software application. The latest update from Microsoft Defender incorrectly flagged it as a virus. I have reported this misclassification to Microsoft Security Intelligence for review.

IMPORTANT: PowDLL is virus-free. Please check this virustotal report

Installation: Just unzip and run setup. PowDLL writes nothing to registry or to other folders in your computer (except of course from the uninstallation info written by the setup file).

Update: There is no need to uninstall any previous version (as long as you have accepted the default installation path). Just install the new one!

Requirements: .NET Framework 2.0 (or newer). If you have at least Windows Vista, it's already there. If you get updates from Microsoft, it's already there too. Otherwise get it for free @ Microsoft.com

License

PowDLL is free for academic or commercial use. PowDLL is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY of being free of internal errors. The author is not responsible for erroneous results obtained with the program

Back to Top

Hints'n'Tips

Run PowDLL on Linux

Steps (Ubuntu Linux 18.04 64-bit LTS):
1. Assume Wine is installed (ver 3.0 64-bit from Bionic repository).
2. Create 32-bit wineprefix: WINEPREFIX=$HOME/.wine32 WINEARCH=win32 wineboot --init
3. Install dotnet20: WINEPREFIX=$HOME/.wine32 WINEARCH=win32 winetricks dotnet20
4. Install corefonts: WINEPREFIX=$HOME/.wine32 WINEARCH=win32 winetricks corefonts
5. Install PowDll: WINEPREFIX=$HOME/.wine32 WINEARCH=win32 wine ./PowDLL_Setup.exe
At the end of above the readme file should open in Windows Write, with PowDll behind it.
Thanks to: Dr. Divakar R. @ Indira Gandhi Centre for Atomic Research, India

Keep settings With version 2.80 this is no longer applicable; the procedure now runs by default with minimal user rights.

PowDLL can keep various settings related to your preferences, from WL and window position to the where the user typically keeps the XRD data. However, due to Windows security reasons these settings can only be saved if PowDLL runs in "Administrative mode". Right-click, "Run as administrator". Once you do that, keep running PowDLL as usual.

Incompatibility with RAW ver. 4

PowDLL is (sometimes) incompatible with the latest (ver. 4) RAW format from Bruker. A possible workaround might be:
1) Use Bruker's "File exchange" and convert ver.4 to ver.3 RAW
2) Use PowDLL with these v3 RAW files
Thanks to: Michael McNevin @ Merck Research Laboratories

Credits

During the development many people have helped in numerous ways. I would like to especially thank :

Robert Papoular, Stephen Hillier, Nicola Döbelin, Martin Fisch, Jean-Marc Le Meins, Edwin Zeelmaekers, Nilesh Kulkarni, Holger Putz (Crystal Impact), Michael Boruta (ACD/Labs), J.D.Martin (XPowder), Patrick McArdle (Oscail)

References to PowDLL

(please contribute to this list...)

[15] B.M. Butler, A.M. Sila, K.D. Shepherd, M. Nyambura, C.J. Gilmore, N. Kourkoumelis, S. Hillier Pre-treatment of soil X-ray powder diffraction data for cluster analysis, Geoderma, 2019;337:413-24.https://www.sciencedirect.com/science/article/pii/S0016706118307651

[14] C. Nita, J. Fullenwarth, L. Monconduit, J.-M. Le Meins, J. Parmentier, M. T. Sougrati, C. Matei Ghimbeu, Understanding the Sn Loading Impact on the Performance of Mesoporous Carbon/Sn Based Nanocomposites in Li Ion Batteries, ChemElectroChem 2018, 5, 3249 https://doi.org/10.1002/celc.201800835

[13] R. Behrens, J. Bouchez, J.A. Schuessler, S. Dultz, T. Hewawasam, F. von Blanckenburg, Mineralogical transformations set slow weathering rates in low-porosity metamorphic bedrock on mountain slopes in a tropical climate, Chemical Geology, 411 (2015) 283-298

[12] J.B. Nanubolu, B. Sridhar, K. Ravikumar, Polymorphism in R-tamsulosin (an alpha blocker): the unexpected manifestation of a sulfonamide...o-diethoxybenzene heterosynthon, Journal of Molecular Structure (2014)

[11] Adsorption of N/S heterocycles in the flexible metal-organic framework MIL-53(FeIII) studied by in situ energy dispersive X-ray diffraction. Van de Voorde B, Munn AS, Guillou N, Millange F, De Vos DE, Walton RI. Physical Chemistry Chemical Physics 15 (2013) 8606-8615 http://dx.doi.org/10.1039/c3cp44349c

[10] Borehole geology and hydrothermal mineralisation of well OW-35, Olkaria east geothermal field, central Kenya rift valley. Michael Mwania, Samuel Munyiri and Emily Okech. GEOTHERMAL TRAINING PROGRAMME, Iceland (2013) http://www.os.is/gogn/unu-gtp-report/UNU-GTP-2013-01.pdf

[9] Dilatometry of powder compacts. Characterizing amorphous-crystalline transformations George D. Wang, Jerry Y.Y. Heng, Daryl R. Williams. Powder Technology, 236 (2013) 12-16 http://dx.doi.org/10.1016/j.powtec.2012.06.040

[8] Photoinduced Perturbations of the Magnetic Superexchange in Core-Shell Prussian Blue Analogues. Elisabeth S. Knowles, Matthieu F. Dumont, Marcus K. Peprah, Mark W. Meisel, Carissa H. Li, Matthew J. Andrus, Daniel R. Talham. Polyhedron, 66 (2013) 153-156. http://dx.doi.org/10.1016/j.poly.2013.03.019

[7] Synthesis, Structure, and Crystallization Study of a Layered Lithium Thiophene-Dicarboxylate. Racha El Osta, Michel Frigoli, Jérôme Marrot, Manuela E. Medina, Richard I. Walton, and Franck Millange Crystal Growth & Design 12 (3) (2012) 1531-1537 http://pubs.acs.org/doi/abs/10.1021/cg201587u

[6] Geochemical Database of Feed Coal and Coal Combustion Products (CCPs) from Five Power Plants in the United States, U.S. Department of the Interior / U.S. Geological Survey (2011) http://pubs.usgs.gov/ds/635/contents/Pamphlet.pdf

[5] Uptake of Liquid Alcohols by the Flexible FeIII Metal Organic Framework MIL-53 Observed by Time-Resolved In Situ X-ray Diffraction, R.I. Walton, A.S. Munn, N. Guillou, F. Millange. Chemistry, A European Journal, 17 (2011) 7069-7079 http://onlinelibrary.wiley.com/doi/10.1002/chem.201003634/pdf

[4] DiffractWD: an open-source program for powder pattern comparison and visualization. V. Vreshch. Journal of Applied Crystallography, 44 (2011) 219-220 http://scripts.iucr.org/cgi-bin/paper?S0021889810044614

[3] A time-resolved diffraction study of a window of stability in the synthesis of a copper carboxylate metal-organic framework. F. Millange, R. El Osta, M.E. Medina, R.I. Walton. CrystEngComm, 13 (2011) 103-108 http://dx.doi.org/10.1039/C0CE00530D

[2] Selective Sorption of Organic Molecules by the Flexible Porous Hybrid Metal-Organic Framework MIL-53(Fe) Controlled by Various Host-Guest Interactions. Franck Millange, Nathalie Guillou, Manuela E. Medina, Gerard Ferey, Abel Carlin-Sinclair, Kathryn M. Golden, and Richard I. Walton. Chemistry of Materials 2010 22 (14), 4237-4245 http://pubs.acs.org/doi/abs/10.1021/cm1008587

[1] F. Millange, M.I. Medina, N. Guillou, G. Ferey, K.M. Golden, R.I. Walton, Time-Resolved In Situ Diffraction Study of the Solvothermal Crystallization of Some Prototypical Metal Organic Frameworks. Angewandte Chemie International Edition, 49 (2010) 763-766 http://onlinelibrary.wiley.com/doi/10.1002/anie.200905627/pdf

Back to Top

Screenshots

Back to Top

For programmers

How to use the assembly with a .NET language? Start a new VB.NET (or C#) project with Visual Studio. Go to Project, Add Reference, Browse and select the powdll.dll file. Insert the reference to your application. Then declare an object:

 

How to use the assembly with a .NET language?
Start a new VB.NET (or C#) project with Visual Studio. Go to Project, Add Reference, Browse and select the powdll.dll file. Insert the reference to your application. Then declare an object:

Dim objec As New PowDLL.PowderFileTypes VB.NET
objec = new PowderFileTypes(); C#
  and use the public method DoFileConversion:
objec.DoFileConversion(filename_input, filename_output) VB.NET
objec.DoFileConversion(filename_input, filename_output); C#
  Moreover, because this method is of boolean data type a better approach might be:
If objec.DoFileConversion(filename_input, filename_output) = True Then
MsgBox("Conversion was successful!")
End If
VB.NET
 if (objec.DoFileConversion(filename_input, filename_output))
{MessageBox.Show("Conversion was successful!", MsgBoxStyle.OKOnly, null);}
C#

That's all! Check public methods which are available to the programmer:
 

Back to Top

Updates

History

Version

Comments

3.12 (10Mar24) Fixed an issue when setting arbitrary wavelengths
3.11 (26Oct23) Fixed minor issues with UXD files
3.1 (27Sep23) PowDLL can now bypass formats that are based on the file extensions. Extend the side window to test the new feature!
Fixed minor issues.
3.0 (25Oct22) PowDLL is now a DPI-aware application. No more blurry text with DPI scaling.
Fixed minor issues.
2.992 (23Oct22) Added support for static XRDML files.
2.991 (27Mar22) Fixed a minor issue in Thermo RAW file type.
2.99 (19Jan22) Fixed a minor issue in BRML type.
Added a link to "Buy me a coffee"
2.98 (16Jan22) Added the option to treat all files as XY (two columns) (Options -> Treat my files as XY). Using this option there is no need to change the file extension of a two columns file to XY before using PowDLL.
Fixed a minor typo in XRDML type.
ReadeMe file has been re-written. Notice the donation part :-)
2.97 (29Apr21) Added the option to suppress information messages such as "conversion successful", etc. (Options -> Suppress messages). Error messages are always shown.
Overwrite protection option has been rephrased to better convey its meaning: (Options -> Ask user before overwiting destination files)
2.96 (14Mar21) Fixed an issue with brml files.
2.95 (9Mar21) Added localization support. PowDLL now handles correctly decimal and thousands separators among different countries.
2.94 (8Mar21) Added support for .esg files (G.N.R. srl - Analytical Instruments Group)
2.93 (16Sep20) Fixed an issue with "lines to ignore"
2.92 (15Sep20) Fixed an issue arithmetic overflow when more than 32,768 data points were measured.
2.91 (14Sep20) Fixed an issue with the date entry of PLV files.
2.90 (26Aug20) Added support for Rigagu RASX files (single file mode).
2.89 (05Jul20) A 2-theta shift was noticed when step was considered up to 3 decimal digits. Now it is fixed.
2.88 (23May20) Fixed issues with single file conversion (Save As option)
2.87 (03May20) XYE files (i.e., XY files with additional columns) can be handled by PowDLL through the XY(E) tab. Extra columns (or header lines) can be now ignored.
2.86 (05Mar20) Renamed Rigaku extention from .rig to .asc
2.85 (22Jan20) Minor fixes - Maintenance
2.84 (25Oct19) Minor fixes
2.83 (12Oct19) Fixed a bug when parsing scientific notation (E+x or E-x)
2.82 (01Aug19) Fixed date parsing for XRDML files
2.81 (10Apr19) Improved filter for UXD files
2.80 (11Mar19) Added support for Bruker BRML ASCII files (with serialized objects)
Improved filter for Panalytical DAT files
Improved filter for Panalytical XRDML files
Improved support for Save Settings; settings (like location, anode type, etc.) are now saved in AppData folder (i.e., there is no need to run PowDLL as admin to save settings)
2.79 (26Feb19) Added support for ProtoXRD (xml) files
Improved filter for Rigaku RAS files
Improved pattern(s) preview quality
2.78 (19Dec18) Support for Thermo XTRA (raw)
2.77 (05Dec18) Added updated XRDML format
2.76 (08Aug18) Minor updates in RAW4 (again)
2.75 (05Jun18) Minor updates in RAW4
2.74 (17Apr18) Minor updates
2.73 (12Apr18) Improved support for BRML files
2.72 (22Nov17) Fixed a bug with Panalytical raw files
Since PowDLL can read .raw files from all major vendors, the open raw dialog has been replaced by "multiple type RAW Files"
2.71 (29Oct17) Added tab for intensity conversion from counts to cps and vice versa
Fixed a bug when reading the output .raw (v4) procuded by EVA (Bruker)
2.70 (15Sep17) Fixed a bug with Rigaku RAW files
2.69 (24Aug17) Improved support for Rigaku RAW files
2.68 (19Aug17) Added support for JEOL .dat files
Improved support for UXD files
2.67 (29Jul17) Automatic save window settings on exit.
Instructions: Right click on PowDLL icon and select "Run as administrator". Upon closing the window, the settings (position, size, etc.) will be saved. Run PowDLL normally (no special user rights)
2.66 (20Jul17) Improved support for STOE RAW multi-pattern files
2.65 (26Jun17) Fixed an issue with Rigaku RAW
2.64 (09Jun17) UXD V3 files are now supported
2.63 (29May17) Minor fixes
2.62 (04Jan17) Added support for multi-range BRML files
2.61 (11Dec16) Improved support for PLV files
2.60 (04Nov16) Minor improvements
2.59 (03Nov16) Added support for multi-range Bruker RAW1 files.
2.58 (22Sep16) Fixed an issue with RAW4 files.
2.57 (14Sep16) Added support for Rigaku RAS files
Improved support (and fixed a bug) for PLV files
2.56 (25Jun16) Improved support for MDI files
2.55 (29Feb16) Added support for Bruker BRML files
Fixed a minor issue with uncommon display resolutions
(16Feb16) IMPORTANT! Rolled back to NSIS (Nullsoft Scriptable Install System) ver 2.5. Version 3.0b2 gives a false virus alarm with Microsoft Antivirus
2.54 (14Feb16) Improved the "single file" interface by adding support for syncing input/output folders
Added support for very long paths
2.53 (06Dec15) Added support for arbitrary wavelength selection in the "modify pattern" tab
"Ignore header lines" now also works for .XYE files (already worked for .XY files) under the "XY(E) files info" tab
Setup script (Nullsoft Scriptable Install System) was upgraded to version 3.0b2
2.52 (16Oct15) Fixed a minor bug when opening RAW format files created by CCDC Mercury software (i.e. theoretical powder patterns from single crystal studies).
(06Oct15) Improved the setup script. Now it is compatible with windows 10.
2.51 (18Sep15) Added support for reading date/time from XRDML files
Fixed a minor bug with STOE file format
2.50 (25Jun15) "An error occured" bug is now fixed! (fired only upon new program installation)
2.49 (04Jun15) Pattern preview is now wider and shows legend by default
2.48 (03Jun15) Fixed an issue with Bruker RAW (ver. 4) files
2.47 (23Feb15) Added support for multipattern Bruker RAW files (version 4). All the patterns that are included into a single RAW file can be now extracted to separate XY files
Fixed an issue with Bruker RAW (ver. 4) files
2.46 (29Jan15) Added support for changing the WL and the anode type. Use with caution! To note: (a) resolution may slightly deteriorate due to the spline interpolation (b) the pattern is converted using Ka1 (c) Resolution will be only virtually improved for shorter WLs
Added support for changing the start, stop and step (2-theta) using spline interpolation
Code improvements (speed)
Automatic WL selection (WL Tab)
The working (current) wavelength is now displayed on the main form
Default WL can be selected and saved for future reference (previously, the default setting was the WL of the Cu anode)
Fixed an issue with the default settings in the Prefix/Suffix (Prefix/Suffix Tab)
The output for some filetypes has been imrpoved regarding the significant digits
Fixed a minor issue with overwrite protection
Added support for opening Y-X input files (X: intensity, Y degrees)
2.45 (02Jan15) Minor
2.44 (06Dec14) Minor improvements in source code
2.43 (05Oct14) Added support for v2 UXD files
Parsing the date from RAW v1 files
Minor (24Sep14) The text in readme.txt was corrected to clarify that PowDLL (exe+dll) is free for academic or commercial use.
2.42 (14Mar14) Added support for multirange STOE raw files
2.41 (22Jan14) Added support for Prefix and/or Suffix to the destination filename(s)
Added a Progress Bar indicating time consuming operations
2.40 (12Jan14) Added support for StepTime values (xrdml, Bruker raw, uxd)
Fixed a bug in XRDML format resulting in data truncation
2.39 (06Jan14) Added support for goniometer radius values (xrdml, Bruker raw, uxd)
2.38 (19Dec13) Added support for UDF files (.nex). Please check the Copyright Notice and License Terms for Hierarchical Data Format (HDF) Software Library and Utilities
Added the option to "stay on top". Useful for multiple file conversion (drag'n'drop)
Minor bugs fixed
2.37 (12Nov13) Added the option to ignore n lines from the header of .XY files
2.36 (13Oct13) Fixed a bug with RAW file export (anode type and WL were sometimes not correlated correctly)
2.35 (14Aug13) Export support for XRDML format (1.3). Now XRDML files produced by PowDLL can be opened by X'Pert Data Viewer
2.34 (04Jul13) Better support for Bruker RAW4 files (fixed a serious bug)
2.33 (25May13) Added support for GSAS ESD files XYE files now supports 2 different formats: XYZ and Mercury XYE (these are almost indentical but Mercury adds a line on the top with the wavelength
Misc additions and corrections.
Code runs 2x faster with some formats
2.32 (09Feb13) Fixed a bug with Scintag RAW format
2.31 (04Jan13) Added export support for PLV files (Xpowder)
Added support for CIF files which are exported from ICDD PDF4+ database (2-theta vs. I, pairs)
Options menu now includes the capability of replacing zero counts with 0.001 counts from XYE and CIF input files (some programs crash with zero intensity values)
2.29 Added support for values with scientific notation (e.g., 1.2E+03) in input files
2.28 Added support for SCINTAG multi-range RAW files (DMSNT software)
2.27 Added INEL ASCII format (import only) in addition to INEL Binary format Fixed an error when converting multiple INEL Binary files to *.xy
2.26 Fixed an issue regarding scintag and vms raw files which stopped the procedure.
The solution is now generic meaning that all popup message boxes are now closing automatically after 10 secs (not applicable to overwrite protection by default; can be manipulated though from Menu "Options").
Fixed the "open containing folder" which shows the files folder after the successful conversion.
Exposed as public the "askforAlpha" property for 3rd party developers
2.24 Fixed a minor issue with Rigaku raw format
2.23 Fixed a minor issue with Raw format
2.22 Added import filter for CCDC Mercury XYE file format Added import filter for Philips SD (V5) file format
Fixed an issue with RAW v4.00 file format (still no support though for combined or multiple wavelength files)
2.21 Added support for RAW v4.00 file format (no support though for combined or multiple wavelength files)
Fixed a bug regarding XDD file format
2.20 Maintenance release
Previous versions
2.19-1.2 Obsolete
   

Back to Top

Get in touch

If you have any comment or suggestion please send an email. All requests are considered carefully and all comments are welcome.

Back to Top