Solving equation system of piecewise defined function to guarantee continuity
Ältere Kommentare anzeigen
In a scientific paper I have given a model that calculates temperature (in kelvin) to a certain x-value (distance from the center point) of a transistor.
That model consists of 5 functions distributing the x-range into 5 regions as follows:

My problem now is that those 5 functions all in all contain 8 unknown coefficients that I need to know (which is my main goal) and then further calculate temperatures. That's why I first need to solve the following equation system consisting of 8 equations (see below (30) - (37)) to keep the function steady at those boundaries where two functions "collide":

The functions and necessary variables that are used inside this model are defined in the following:
- Functions T1 & T5 (missing coefficients: beta_S in the A_ns term and beta_D in the A_nd term)
- Variable lambda (valid for region 1,2, 4 & 5)

- Functions T2 & T4 (unknown coefficients: C2, D2 for T2 and C4, D4 in T4)

- For function T3
- Variable lambda (valid for region 3)


- Variable m

The rest of the variables (e.g. wFin, wSD) is given in my MATLAB code above my post.
So my approach was:
1.) Set up the above declared 8 equations (30)-(37) using the function and variable definitions.
2.) Use the MATLAB 'solve' function to receive values for the unknown coefficients.
3.) Calculate temperatures over a sample of which I know the values approximately.
My results look like that:

My concrete questions are:
a) There are 2 major concerns regarding my results:
- In region 1 and region 5 (flat orange lines on the left and right side) the actual values are severely underestimated.
- Between region 2 and 3 as well as between region 3 and 4 the curve are not steady.
Can you take a guess on what could possibly be wrong when having such errors?
If somebody checked my code and could even tell me concrete errors I would be very thankful. I have already spent too much time on it and wasn't able to further proceed.
b) I approximated each of the infinite series (for example the one in function T1) by using a finite series (as you can see in the for-loops in my code) and tested it with different amounts of summands (using variable 'lengthOfMySeries'). I always had the same bad results so I hope that doesn't contribute too much to the error.
Am I correct in the assumption that this infinite series approximation by using a finite series shouldn't be solely responsible for the bad results in my diagram?
Antworten (0)
Kategorien
Mehr zu Language Fundamentals finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!