Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

The wire is rotated 180 about the y-axis to position 2, then it is rotated 90 ab

ID: 1309882 • Letter: T

Question

The wire is rotated 180 about the y-axis to position 2, then it is rotated 90 about the y-axis towards position 1. so the question is if the wire is released from this position, how would it move?? the explanation for this question is that since the torque is in the negative y direction, " A torque in the negative y-direction will cause the loop to rotate towards the Position 1".................................................................

Now I know that the torque is in the negative y-direction but i don't understand how this causes the loop to rotate towards position 1?? is there a right hand rule for this or how do you explain this?

A wire formed in the shape of a right triangle with base Lab = 32 cm and height Lbc = 75 cm carries current I = 662 mA as shown in Position 1. The wire is located in a region containing a constant magnetic field B = 1.29 T aligned with the positive z-axis. The wire is now rotated back 90 degree about the y-axis towards position 1. If the wire is released from this position how would it move? It would rotate towards Position 1 It would rotate towards Position 2 It would remain stationary When the loop is positioned halfway between Positions 1 and 2, the magnetic moment vector points in the positive x-direction. The torque is given by the cross product of the magnetic moment vector and the magnetic field. Since the magnetic field is in positive z-direction, the cross product will point in the negative y-direction. A torque in the negative y-direction will cause the loop to rotate towards Position 1.

Explanation / Answer

// Get the current modelview matrix GLKMatrix4 originalMat = self.effect.transform.modelviewMatrix; GLKMatrix4 currMat = self.effect.transform.modelviewMatrix; // Define the buffer designators GLuint billboardVertexArray; GLuint billboardVertexBuffer; GLuint billboardIndexBuffer; glGenVertexArraysOES(1, &billboardVertexArray); glBindVertexArrayOES(billboardVertexArray); // Now draw the billboard glGenBuffers(1, &billboardVertexBuffer); glBindBuffer(GL_ARRAY_BUFFER, billboardVertexBuffer); glBufferData(GL_ARRAY_BUFFER, sizeof(Billboard_vertex), Billboard_vertex, GL_STATIC_DRAW); glGenBuffers(1, &billboardIndexBuffer); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, billboardIndexBuffer); glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(Billboard_index), Billboard_index, GL_STATIC_DRAW); // u0,v0,normalx0,normaly0,normalz0,x0,y0,z0 glEnableVertexAttribArray(GLKVertexAttribPosition); glVertexAttribPointer(GLKVertexAttribPosition, 3, GL_FLOAT, GL_FALSE, 8*sizeof(float), BUFFER_OFFSET(5)); glEnableVertexAttribArray(GLKVertexAttribTexCoord0); glVertexAttribPointer(GLKVertexAttribTexCoord0, 2, GL_FLOAT, GL_FALSE, 8*sizeof(float), BUFFER_OFFSET(0)); glEnableVertexAttribArray(GLKVertexAttribNormal); glVertexAttribPointer(GLKVertexAttribNormal, 3, GL_FLOAT, GL_FALSE, 8*sizeof(float), BUFFER_OFFSET(2)); // Enable the Earth texture self.effect.texture2d0.name = _billBoardTextureInfo.name; self.effect.texture2d0.target = _billBoardTextureInfo.target; // Bind the earth vertex array glBindVertexArrayOES(billboardVertexArray); // Now put a billboard at a specific Lat Lon - so first // calculate XYZ from lat lon XYZ xyz; xyz.x = 0; xyz.y = 0; xyz.z = 0; [self LLAtoXYZwithLat:0 andLon:0 andXYZ:&xyz]; //NSLog(@"XYZ after: %f %f %f",xyz.x,xyz.y,xyz.z); // Move the billboard back so we can see it GLKMatrix4 modelViewMatrix = GLKMatrix4MakeTranslation(0.0f, 0.0f, -6.0f); // In update, we convert the quaternion into a rotation matrix, and apply it to the model view matrix as usual. GLKMatrix4 rotation = GLKMatrix4MakeWithQuaternion(_quat); modelViewMatrix = GLKMatrix4Multiply(modelViewMatrix, rotation); // First create the variation translations to anchor the billboard GLKMatrix4 translationXYZ = GLKMatrix4MakeTranslation(xyz.x, xyz.y, xyz.z); GLKMatrix4 translationForLatLonWithTranslation = GLKMatrix4Multiply(modelViewMatrix,translationXYZ); // Scale this object as well GLKMatrix4 scaledWithTranslationAndRotation = GLKMatrix4Scale(translationForLatLonWithTranslation, scale, scale, scale); // Remove the Translation portion of the matrix // | xx xy xz xw | // | yx yy yz yw | // | zx zy zz zw | // | wx wy wz ww | // // | R T | // | (0,0,0) 1 | // // d = sqrt( xx