Identify an equation that describes some chemical process, MATLAB Programming

1) Identify an equation that describes some chemical process.  Your equation should have at least two parameters, at least one of which should contribute in a non-linear way.

Here is an example of such an equation.  This describes the spectroscopic signal during a pH titration.

y = (A-B)*(10^(pH-pK) / (1 + 10^(pH-pK) )) + B

where

A: the signal from the protonated form

B: the signal from the ionized form

pK: The pK of the reaction

pH:The independent variable

y: The dependent variable (measured signal).

Y is linear in A and B, but non-linear with respect to pK

You can use this equation, but you will lose two points (out of 20) if you use it instead of some other equation

2) Implement a MatLab function to calculate y.  The function should take two input arguments

1) A vector of parameters

In the above example this would be of length 3, the first value being A, the second B ...

2) A vector of x (dependent variable) at which to calculate the function.

3) Implement a second MatLab function

1) It should  take three arguments (the first two the same as above, the third being an experimental y value.

2) It should call the first function to calculate a y, and return the norm of the difference between yCalc and yExp.

4) Create a text file with simulated data.

Calculate an experimental y using the first function and some reasonable values for the parameters

Add noise

Save the x values and calculated y values into a text file with the dlmwrite command.

2 extra bonus points if you also provide some actual experimental data that can be read in and is described by your equation!  You can obtain this from an actual research lab, on-line site, publication, textbook, ...

5) Create a GUI that has

A button to bring up a dialog to select a text file and read it in.

  1. Plot the x,y values on the GUI
  2. Have text entry values, one for each parameter, in which to enter guesses for the parameters.
  3. A button that calls the fminsearch command with appropriate arguments to do a non-linear fit to the data.
  4. Display the best fit values of the parameters
  5. Draw a calculated y vector on the graph.

Your functions should be well commented, indented (to highlight loops or if statements), and the variables should have consistent and meaningful names.

 Your project should be submitted as a zip file containing all the MATLAB files and any required data files. The zip file should be named Project2_YourInitials.zip.

There should be one function named "setupGUI" that should start the whole program and it should not require any arguments.

Posted Date: 3/26/2013 3:17:57 AM | Location : United States







Related Discussions:- Identify an equation that describes some chemical process, Assignment Help, Ask Question on Identify an equation that describes some chemical process, Get Answer, Expert's Help, Identify an equation that describes some chemical process Discussions

Write discussion on Identify an equation that describes some chemical process
Your posts are moderated
Related Questions
i want matlab programming on johnson''s sequencing rule

using newton divided diference formula find f(15) and f (8)

Q. Explain Power system toolbox ? Power system toolbox (PST) was developed to enable users to perform power system analysis within MATLAB. PST may be used on any computer syste

Create a Super Mario Brothers game in Matlab. The lines of codes do not matter. But, The requirements are: REQUIREMENTS: Modular design and implementation Algorithm docu

Write a function rid_multiple_blanks that will receive a string as an input argument. The string contains a sentence that may have multiple blank spaces in between some of the word

draw midpoint circle by matlab

1. Given these sinusoids: x 1 (t) = 0.5cos(25t+20°),   x 2 (t)=0.85cos(25t+160°) and   x 3 (t)= 0.81cos(25t-145°) (a)  Subplot the phasors X 1 , X 2 and X 3 corresponding t

I need a source code for hand detection in matlab please ....

drow midpoint circle for scan converting acircle in matlab

i want to save the values of a particular equation in a for loop.. for ex: for i=1:100 et=(x+yz); end thus how can i store the values of et at each iteration