Solutions for composition analysis problem

2 views (last 30 days)
Hi,
We are investigating recycled construction material separated in several size fractions. These consist of a mix of materials such as concrete, ceramics, gypsum, etc. One of the ideas is to make a model to estimate the material content of the size fractions as follows:
a) Composition analysis on the size fractions (data in terms of component metal oxides, e.g. CaO)
b) Composition analysis on the materials
c) Reconstruction of size fraction composition (a) using the composition of materials (b); Size fraction X = a * Concrete + b * Ceramics + c * gypsum + ... , which shall be performed for each metal oxide to obtain the full spectrum
Being quite the MATLAB leek, the question is: Is there an optimisation method available in MATLAB which returns to me the coefficients a, b, c, etc. in such a way that they yield the best approximation of the composition analysis of size fractions using composition analysis of component materials.
Any more required information I will gladly provide!
Thank you very much in advance.
Julian
  3 Comments
Julian Stapper
Julian Stapper on 25 Sep 2019
Yes exactly! The analysis makes the assumption that our list of materials is exhaustive, so the material contents a, b, c, etc. would add up to 1.
rough93
rough93 on 25 Sep 2019
I think I understand what you're going for, see my answer below.

Sign in to comment.

Answers (1)

rough93
rough93 on 25 Sep 2019
Gotcha, so for this application, you'll need to either know the metal oxide content of each material ahead of time through analysis testing or as standard info. and pull it into MATLAB. I'd set it up like this:
el1Concrete = 23.2; %percent of metal oxide 1 in concrete
el2Concrete = 76.8; %percent of metal oxide 2 in concrete
el1Ceramics = 100; %percent of metal oxide 1 in ceramics
%etc
Then, you'll need your size fractions and how much material is in each (through analysis, as you stated):
Size1Concrete = 5; %5 units of concrete in size1
Size1Ceramics = 2; %2 units of ceramics in size1
Size2Concrete = 18; %18 units of concrete in size1
For each size, you can perform calculations in order to find your X equation for each size fraction, then add them together for an overall answer.
TotalSize1 = Size1Concrete + Size1Ceramics; % total amount of units in size 1
X1 = el1Concrete * (Size1Concrete/TotalSize1) + el1Ceramics * (Size1Ceramics/TotalSize1);
TotalSize2 = Size2Concrete + Size2Ceramics; % total amount of units in size 2
X2 = el2Concrete * (Size2Concrete/TotalSize2) + el2Ceramics * (Size2Ceramics/TotalSize2);
X = X1 + X2;
Is this what you're looking for? I don't think you need to use any analytics methods to approximate the answer here, or at least if I understand your request correctly.
  3 Comments
rough93
rough93 on 26 Sep 2019
So based on your findings of 20% O1, 30% O2, 50% O3, you want to use MATLAB to tell you "the most likely makeup for this combination of oxides is Concrete + Ceramics"?
If you're looking to solve for roots, there are also numerous root-finding algorithms, however if there are multiple roots or several combinations of oxides that can result in your analytical findings, your root may diverge and your calculations get a little funky.
Julian Stapper
Julian Stapper on 27 Sep 2019
Indeed, the most likely % of Concrete and % of Ceramics that are present in this size fraction, which MATLAB should determine using the individual metal oxide spectra of these two materials. Is a root-finding algorithm the appropriate solution for this problem?
I do believe that it will be a tricky method, because there are in the actual situation 4 materials and 5 categories of metal oxides which we are using ("Al", "Si", "Fe", "Ca", and "other" oxides) but we are interested to try it and see where it leads, in any case we have the real results to validate the method.

Sign in to comment.

Categories

Find more on Numerical Integration and Differential Equations in Help Center and File Exchange

Products


Release

R2017a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!