Composition input for multi-phase samples (xPDFsuite)

81 views
Skip to first unread message

Roshan Jayathilaka

unread,
Aug 19, 2025, 7:00:04 PMAug 19
to diffpy-users

Hi Everyone

I am working with some synchrotron data and currently using xPDFsuite software to obtain G vs r plots to process in PDFgui software.

I am new to the xPDFsuite software (not to mention PDF analysis) and am currently learning them to analyze some cement samples (cement hydration data). 

 Cement has multiple chemical components, such as CSH gel, ettringite, Ca(OH)2, etc., Usually, CSH would present as amorphous and nano-crystalline, and possibly at early ages, Ca(OH)2 can also be present as nano-crystals. Therefore, I am interested in using multiple compositions (ex. CSH and Ca(OH)2 etc.) when using xPDFsuite. However, it should be noted that there are many crystalline phases also present in the system, such as ettringite, quartz, calcite, etc.

With the above scenario, I need to understand what I should input under the “composition” in the xPDFsuite "Basic" tab.  I could not find any reference on the format I need to input the chemical composition for all of these. I noticed that the intensity (G) value is changing according to what I enter as the chemical composition, and I have no idea how to input multiple components. I have referred to internet sources as well as the Reference manual, and nothing came up.

Could someone please advise me on how to proceed with this? If I enter only one chemical composition (for example, CSH) and analyse the spectra in PDFgui, will it be incorrect? 

Sorry for the lengthy message, as I need to provide as much information as possible. Please let me know if you need any additional information.

Thank you.

Roshan

11.png

Till Schertenleib

unread,
Aug 20, 2025, 5:07:32 AMAug 20
to diffpy-users

Hi Roshan,


You can model the two phases during the refinement in PDFgui. You can define a parameter that scales the simulated PDFs of each phase to your experimental data (scale factor). 

Typically, you would define a scale factor for Phase 1 (say, @1), and define a constrain on phase 2 like this: 1-@1.  This should give you something like a relativ contribution of each phase. Using @'number', is how you add variables and constraints in PDFgui. You do that in the "Constraints" tab in PDFgui.


So you don't need to worry about what composition you put in xPDFsuite. As you noticed, this just changes the overall intensities of your peaks, not their relative ones... This will just be modelled with the scale factors.


If you want to do this quantitatively, you have to be more careful. Things like how much phase 1 and phase 2 absorb x-ray can influence their 'apparent' contribution in your data. In your case, you're looking at weakly scattering (so also weakly absorbing) stuff so you can probably safely ignore this. Hope this helps. Best,


Till

2phaseRefinement.ddp3

Simon Billinge

unread,
Aug 20, 2025, 8:28:17 AMAug 20
to diffpy...@googlegroups.com
Thanks Roshan, this is a great question.

xPDFsuite only needs to know the "average" composition in the sense of how much of each atom _type_ is present.  It can also be somewhat approximate if you are not sure, though the results do actually depend somewhat on the inputs you give. so...
if your sample is NaCl you would input NaCl

if it s CaCO4 and Ca(OH)2 and H2O in equal proportions, then you could put in Ca2CO7H4, for example.  

If you estimate that it is NaCl and H2O but there is 2x as much H2O you could put in NaClH4O2

and so on.

If you are subtracting some signal in a background signal, for example if the NaCl was dissolved in the water and you were subtracting the water signal as a background, you don't include the water in the composition  (the subtraction takes place before the composition is computed), so in that case, you would put in NaCl, even though there was water in your sample.

As mentioned, the program will work even if you put C as the composition (the default).  Don't get scared and let this hold you up.  It won't affect teh peaks in teh  PDF, but only overall shape and Rw and some refined parameters may be a bit off in general.   So the closer you get to the right composition the better, but don't sweat the details.

Hope it helps,

S

On Tue, Aug 19, 2025 at 7:00 PM Roshan Jayathilaka <roshanjaya...@gmail.com> wrote:
Hi Everyone I am working with some synchrotron data and currently using xPDFsuite software to obtain G vs r plots to process in PDFgui software. I am new to the xPDFsuite software (not to mention PDF analysis) and am currently learning them
ZjQcmQRYFpfptBannerStart
This Message Is From an External Sender
This message came from outside your organization.
 
ZjQcmQRYFpfptBannerEnd
--
You received this message because you are subscribed to the Google Groups "diffpy-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to diffpy-users...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/diffpy-users/f1705146-d978-4d27-8154-149bad8a2c91n%40googlegroups.com.


--
Simon Billinge
Professor, 
Department of Applied Physics and Applied Mathematics
Columbia University
Message has been deleted
Message has been deleted
Message has been deleted

Roshan Jayathilaka

unread,
Aug 20, 2025, 6:39:49 PMAug 20
to diffpy-users

Dear Till and Simon,

Thank you both for the clear and descriptive solutions. This would be massively helpful. As Prof. Simon mentioned about water, I got another question. As I have added water for cement hydration, there should be free water in the system. So, how to deal with this? Do I need to subtract the water as a background before Fourier transform or can I deal with it as a separate component when analysing in PDFgui? FYI, I used X-ray for data Aquisition. 

Thank you,

Roshan

Till Schertenleib

unread,
Aug 22, 2025, 10:09:16 AMAug 22
to diffpy...@googlegroups.com
I would assume that the water is somehow structured in the cement (sort of part of the cement structure), whereas the water background sample (if you have that) is structured as liquid water... I guess it still makes sense to subtract the water as a background in xPDFsuite. That way, you can get rid of any liquid residue in your hydrated cement, and you only end up with the water molecules structured in the cement.

It's a bit tricky. It would also be weak signal, so anyway hard to model. 

Dr. Till Schertenleib

--
You received this message because you are subscribed to the Google Groups "diffpy-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to diffpy-users...@googlegroups.com.

Roshan Jayathilaka

unread,
Aug 22, 2025, 10:09:45 AMAug 22
to diffpy...@googlegroups.com
Dear Till and Simon,
Thank you both for the clear and descriptive solutions. This would be massively helpful. As Prof. Simon mentioned about water, I got another question. As I have added water for cement hydration, there should be free water in the system. So, how to deal with this? Do I need to subtract the water as a background before Fourier transform or can I deal with it as a separate component when analysing in PDFgui? FYI, I used X-ray for data Aquisition. 
Thank you,
Roshan

Simon Billinge

unread,
Aug 22, 2025, 10:26:08 AMAug 22
to diffpy...@googlegroups.com
Dear Roshan,

another great question.  The first thing I would say is that PDF is very helpful for finding and quantifying free water in your sample.  We once had a proposal (not funded) proposing to watch spaghetti dry by monitoring the water content in spaghetti using PDF.   This was shown in Fig. 6 of Max's paper (10.1039/C4NR06486K).

For the data analysis the approach is the same.  If you can estimate how much water is in there, add this to the overall composition that you give PDFgetX3, but don't sweat the details if you are not sure how much.  You can probably leave it out completely as a first cut.   If you have a "background" signal of water that you measured that you are subtracting (I don't think that is the case for you) then you don't add the xH2O (where x is the molar fraction in your sample) to the composition.

S

On Fri, Aug 22, 2025 at 10:09 AM Roshan Jayathilaka <roshanjaya...@gmail.com> wrote:
Dear Till and Simon, Thank you both for the clear and descriptive solutions. This would be massively helpful. As Prof. Simon mentioned about water, I got another question. As I have added water for cement hydration, there should be free water
Message has been deleted
Message has been deleted

Roshan Jayathilaka

unread,
Sep 4, 2025, 1:45:48 PMSep 4
to diffpy-users
Dear Simon and Till,
Thank you both for the useful answers and the discussion. I have proceeded with the analysis, and it seems water has very little to no effect. Somehow, I will be able to input the free water fraction via a TGA calculation. 
Kind regards,
Roshan

Reply all
Reply to author
Forward
0 new messages