Solving equation system of piecewise defined function to guarantee continuity
Show older comments
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?
Answers (0)
Categories
Find more on Language Fundamentals in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!