A couple of problems involving Archimedes' principle and buoyant forces.
<?xml version="1.0" encoding="UTF-8"?>
<!--Sun Jan 29 2012 20:56:02 GMT-0500 (EST)-->
<XholonWorkbook>
<Notes>
Khan Academy
------------
Title: Fluids (part 6)
Description: A couple of problems involving Archimedes' principle and buoyant forces.
Url: http://www.khanacademy.org/video/fluids--part-6?playlist=Physics
InternalName: fluids--part-6
YoutubeId: wwjtuZ5vTvc
Keywords: physics, fluid, liquid, archimedes, buoyant, force, example
My Notes
--------
an object (cube) outside of water has weight (W_o) = 10 Newtons (N)
same object inside the water has weight (W_w) = 2 N
so the water must be exerting a force of 8 N to conteract gravity
the difference (10 - 2) is the buoyant force
there's a downward weight of 10 N
once it's in the water, the net weight is 2 N
so there must be a force acting upwards on the object of 8 N
the buoyant force (F_B) = 10 - 2 = 8
= the weight of the water displaced = volume of water displaced (V_w) * density of water (rho) * g
so V_w = 8kg*m/s^2 / (1000kg/m^3 * 9.8m/s^2) = d^3
8 / 1000 / 9.8 = 8.2 * 10^4
so given the difference in weight when I put an object in water
I can discover the volume of the object
another problem 5:00
---------------
balsa wood
density of balsa wood (P_B) = 130 kg/m^3
What % of the cube goes below the surface of the water?
the buoyant force (F_B) = the weight (F_g), because the system is stable (the forces balance)
F_g = V_B * rho_B * g
F_B = volume of the displaced water (the volume of the portion of the block submerged V_s) * density of water * g
V_B * rho_B * g = V_s * rho_w * g (where rho_w = density of water)
V_B * rho_B = V_s * rho_w
V_s / V_B = rho_B / rho_w = 130 / 1000 = .13 kg/m^3 = 13%
SVG - paste this into the browser address bar
---------------------------------------------
data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8c3ZnIHdpZHRoPSIxNDkiIGhlaWdodD0iMjQ0IiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KIDx0aXRsZT5GbHVpZHMgKHBhcnQgNik8L3RpdGxlPgogPGc+CiAgPHRpdGxlPkViZW5lIDE8L3RpdGxlPgogIDxnIGlkPSJzdmdfMjAiPgogICA8cmVjdCBzdHJva2Utd2lkdGg9IjAiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2VkZDVjMCIgaWQ9InN2Z18xNCIgaGVpZ2h0PSI3NSIgd2lkdGg9Ijc2IiB5PSIwIiB4PSI1NiIvPgogICA8dGV4dCBmb250LXdlaWdodD0iYm9sZCIgdHJhbnNmb3JtPSJtYXRyaXgoMSwgMCwgMCwgMSwgMjQuNSwgLTE1My41KSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZm9udC1mYW1pbHk9IlNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTIiIHN0cm9rZS13aWR0aD0iMCIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjMDAwMDAwIiBpZD0ic3ZnXzE3IiB5PSIxNjkuNSIgeD0iNjguNSI+QmFsc2FXb29kPC90ZXh0PgogIDwvZz4KICA8ZyBpZD0ic3ZnXzIxIj4KICAgPHJlY3Qgc3Ryb2tlLXdpZHRoPSIwIiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9IiMwMDVmYmYiIGlkPSJzdmdfMTkiIGhlaWdodD0iMTY5IiB3aWR0aD0iMTQ5IiB5PSI3NSIgeD0iMCIvPgogICA8dGV4dCBpZD0ic3ZnXzE4IiBmb250LXdlaWdodD0iYm9sZCIgdHJhbnNmb3JtPSJtYXRyaXgoMSwgMCwgMCwgMSwgLTQwLjUsIC03Ny41KSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZm9udC1mYW1pbHk9IlNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTQiIHN0cm9rZS13aWR0aD0iMCIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjMDAwMDAwIiB5PSIxNjkuNSIgeD0iNjguNSI+V2F0ZXI8L3RleHQ+CiAgPC9nPgogPC9nPgo8L3N2Zz4=
</Notes>
<script implName="lang:python:inline:"><![CDATA[
print "height = 12.34 m"
]]></script>
<script implName="lang:javascript:inline:"><![CDATA[
print("height = 56.78 meters\n");
]]></script>
<_-.XholonClass>
<!-- domain objects -->
<PhysicalSystem/>
<BalsaWood/>
<Water/>
<!-- quantities -->
<Density superClass="VolumetricDensity"/>
<Percentage superClass="Dimensionless"/>
</_-.XholonClass>
<xholonClassDetails>
<BalsaWood>
<port name="density" connector="#xpointer(Density)"/>
<port name="volume" connector="#xpointer(Volume)"/>
<port name="force" connector="#xpointer(Force)"/>
<port name="percentSubmerged" connector="#xpointer(Percentage)"/>
<port name="densityOfWater" connector="#xpointer(../Water/Density)"/>
</BalsaWood>
<Water>
<port name="density" connector="#xpointer(Density)"/>
<port name="volume" connector="#xpointer(Volume)"/>
<port name="force" connector="#xpointer(Force)"/>
</Water>
</xholonClassDetails>
<PhysicalSystem>
<BalsaWood>
<Density>130.0 kg/m^3</Density>
<Volume>0.0 m^3</Volume>
<Force>0.0 N</Force>
<Percentage>0.0</Percentage> <!-- to be calculated -->
</BalsaWood>
<Water>
<Density>1000.0 kg/m^3</Density>
<Volume>0.0 m^3</Volume> <!-- of the displaced water -->
<Force>0.0 N</Force>
</Water>
<AccelerationDueToGravity/> <!-- g -->
</PhysicalSystem>
<Blockbehavior implName="lang:python:inline:"><![CDATA[
# TODO
]]></Blockbehavior>
<BalsaWoodbehavior implName="lang:javascript:inline:"><![CDATA[
percentSubmerged.setVal((density.val / densityOfWater.val) * 100);
println("" + percentSubmerged.val + "% of the cube of balsa wood goes below the surface of the water.");
// TODO maybe calculate the other unknowns
// update the y coordinate of BalsaWood in the SVG image (if it exists)
var svgClient = applicationKey.view.findFirstChildWithXhClass('SvgClient');
if (svgClient) {
var submerged = percentSubmerged.val / 100.0;
var svgHeight = 77; // svg height in pixels
var rectStr = 'PhysicalSystem/BalsaWood,y,' + (svgHeight * submerged);
svgClient.xmlAttr(rectStr);
}
]]></BalsaWoodbehavior>
<BalsaWoodbehavior implName="lang:javascript:inline:"><![CDATA[
// update the y coordinate of BalsaWood in the SVG image (if it exists)
var svgClient = applicationKey.view.findFirstChildWithXhClass('SvgClient');
if (svgClient) {
var submerged = percentSubmerged.val / 100.0;
var svgHeight = 77; // svg height in pixels
var rectStr = 'PhysicalSystem/BalsaWood,y,' + (svgHeight * submerged);
svgClient.xmlAttr(rectStr);
}
]]></BalsaWoodbehavior>
<Blockbehavior implName="lang:jruby:inline:"><![CDATA[
#require 'java'
# This works if pasted in as a last child of Block.
#$height.incVal(0.02)
#puts "Ruby wants something to do. Height: #{$height}"
]]></Blockbehavior>
<Blockbehavior implName="lang:groovy:inline:"><![CDATA[
// This works if pasted in as a last child of Block.
//height.incVal(0.02);
//System.out.print("Groovy wants something to do. Height:" + height + "\n");
]]></Blockbehavior>
<SvgClient><Attribute_String roleName="svgUri"><![CDATA[data:image/svg+xml,
<svg width="149" height="244" xmlns="http://www.w3.org/2000/svg">
<title>Fluids (part 6)</title>
<g>
<title>Layer 1</title>
<g id="svg_21">
<rect x="0" y="77" width="149" height="169" id="PhysicalSystem/Water" fill="#005fbf" stroke="#000000" stroke-width="0"/>
<text x="68.5" y="171.5" fill="#000000" stroke="#000000" stroke-width="0" font-size="12" font-family="Sans-serif" text-anchor="middle" xml:space="preserve" transform="matrix(1, 0, 0, 1, -40.5, -77.5)" font-weight="bold" id="svg_18">Water</text>
</g>
<g id="svg_1">
<rect opacity="0.7" width="77" height="77" id="PhysicalSystem/BalsaWood" fill="#edd5c0" stroke="#000000" stroke-width="0" y="0" x="56"/>
<text x="68.5" y="222.5" id="svg_17" fill="#000000" stroke="#000000" stroke-width="0" font-size="12" font-family="Sans-serif" text-anchor="middle" xml:space="preserve" transform="matrix(1, 0, 0, 1, 24.5, -153.5)" font-weight="bold">BalsaWood</text>
</g>
</g>
</svg>
]]></Attribute_String><Attribute_String roleName="setup">${MODELNAME_DEFAULT},${SVGURI_DEFAULT}</Attribute_String></SvgClient>
</XholonWorkbook>