Translate
Appearance
Text
This page always uses small font size
Width
AllKAlgebra/Homework
Translate to eesti
Translation of the wiki page KAlgebra/Homework from English (en).
This tool does not work without JavaScript. JavaScript is disabled, failed to work, or this browser is unsupported.
Translations:KAlgebra/Homework/Page display title/et
KAlgebra/Homework
You need translation rights to translate messages.Get permission
Loading...
Latest updatesAll changes
Suggestions
In other languages
Need more help?Ask for more information
Translations:KAlgebra/Homework/1/et
This page shows some uses of '''KAlgebra''' in real world problems.
You need translation rights to translate messages.Get permission
Loading...
Latest updatesAll changes
Suggestions
In other languages
Need more help?Ask for more information
:{|
|p1 || p2 || p3 || p4 || p5 || p6
|-
|p1 || p2 || p3 || p4 || p6 || p5
|-
|p1 || p2 || p3 || p5 || p4 || p6
|-
|p1 || p2 || p3 || p5 || p6 || p4
|}
We notice that the last item rotates its position by 1, the fifth rotates position by 2, the fourth rotates position by 3, the third rotates position by 4, the second rotates position by 5 and first rotates position by 6. So we can write down a simple formula:
Let's write this into '''KAlgebra''' console, and the answer returned is:
{{Output | 1=<nowiki>(((((1)*2)*3)*4)*5)*6
=720</nowiki>}}
This kind of arrangement of things around some position, where the position number is equal to the number of things, is called "permutation".
Let's roll a dice. We want to know the probability of one face appearing.
We can define positive probability, the result of the event being favourable to us, and negative probability, the result of the event being unfavourable to us.
So now we know that when a dice is rolled there is a 1/6 of probability that a face we chose will come up.
Let's say that we want to know the sum of all numbers between a bounded interval, for instance 1 - 100. We have to do the sum of all numbers from 0 to 100 if we don't know the rule to get them.
'''KAlgebra''' offers a great facility to this task. Let's write in console:
{{Input|1= sum(x: x=1..100)}}
and we get the result:
{{Output|1=<nowiki>sum(x: x=1..100)
= 5050</nowiki>}}
:1. Bound x as variable
:2. Take first value of x
:3. Take second value of x and add the previous value of x
:4. Take third value of x and add the previous value of x
::...
:N. Take the last value of x and add the last value of x
Let's take a simple AND gate with two inputs and one output. To resolve it in '''KAlgebra''' we will write
===Example 2===
We have a simple circuit: a battery of 3V and two electrical resistances (R1 and R2) put on parallel of 3kOhm. We want to get the current circulating in the circuit.
We have first to calculate the value of the electric resistance expressed according to the law:
{{Input|1=totalresistance:=(R1,R2)->(1/R1+1/R2)^-1
current:=(voltage,totalresistance)->voltage/totalresistance}}
Let's see what we get:
{{Input|1=current(3, totalresistance(3000, 3000))}}
{{Output|1=<nowiki>current(3, totalresistance(3 000, 3 000))
= 0,002</nowiki>}}
Now, what if we need to know the final temperature when we mix 40L of 15°C water with 30L of 70°C water?
Using conservation of energy, we know that the initial and final thermal energies are the same, so the final energy is equal to the energy of the first fluid plus the energy of the second fluid(using U for internal energy):<br />
:U<sub>final</sub> = U1 + U2
Internal energy is equal to the volumetric heat capacity times volume times temperature:<br />
:U = C*V*T
And since the heat capacities are all the same and cancel out, and the final volume is the sum of the two initial volumes:<br />
:(V1+V2)*T<sub>final</sub> = V1*T1 + V2*T2
::or
:T<sub>final</sub> = (V1*T1 + V2*T2)/(V1+V2)
We can then either use this directly in '''KAlgebra''':
{{Input |<nowiki>(40*15 + 30*70)/(40 + 30)
</nowiki>}}
{{Output |<nowiki>(40*15+30*70)/(40+30)
=38.5714</nowiki>}}
and get the final temperature, or put in a function if we need to repeat the computation:
{{Input |<nowiki>finalTemp:=(v1,t1,v2,t2)->(v1*t1 + v2*t2)/(v1+v2)</nowiki>}}
Which we can then use like this:
{{Input |<nowiki>finalTemp(40,15,30,70)
</nowiki>}}
{{Output |<nowiki>finalTemp(40, 15, 30, 70)
=38.5714</nowiki>}}
Now, suppose the two fluids have different volumetric heat capacities, such as 4180 J/(L*K) for the first liquid (water), and 1925 J/(L*K) for the second liquid (ethanol).
We will need to refer back to the equation:<br />
:C<sub>final</sub>*V<sub>final</sub>*T<sub>final</sub> = C1*V1*T1 + C2*V2*T2
The resultant heat capacity will be the average of the capacities of the first and second fluids, weighted by volume(since it is a volumetric heat capacity rather than mass- or molar-specific):<br />
:C<sub>final</sub> = (C1*V1 + C2*V2)/V<sub>final</sub>
And plugging this into the previous equation, we get:<br />
:(C1*V1 + C2*V2)*T<sub>final</sub> = C1*V1*T1 + C2*V2*T2
::or
:T<sub>final</sub> = (C1*V1*T1 + C2*V2*T2)/(C1*V1 + C2*V2)
And either use this formula directly:
{{Input |<nowiki>(4180*40*15 + 1925*30*70)/(4180*40+1925*30)
</nowiki>}}
{{Output |<nowiki>((4,180*40)*15+(1,925*30)*70)/(4,180*40+1,925*30)
=29.1198</nowiki>}}
Or write a function if we want to repeat the calculation:
{{Input |<nowiki>finalTemp2:=(c1,v1,t1,c2,v2,t2)->(c1*v1*t1 + c2*v2*t2)/(c1*v1+c2*v2)
</nowiki>}}
Which we can then use like this:
{{Input |<nowiki>finalTemp2(4180,40,15,1925,30,70)
</nowiki>}}
{{Output |<nowiki>finalTemp2(4,180, 40, 15, 1,925, 30, 70)
=29.1198</nowiki>}}
Screenshot of '''KAlgebra''' after running these computations:
[[Image:KAlgebra-Fluids-Example-Screenshot.png|400px|center]]
Loading messages...
0% translated, 0% reviewed
Retrieved from "https://userbase.kde.org/Special:Translate"