WHAT IS IT? ----------- This project simulates wave motion within a membrane. The four edges of the membrane are fixed to a frame. A selected rectangular area is connected to a plate that moves up and down, exhibiting sinusoidal motion. HOW TO USE IT ------------- Controls of membrane properties: The FRICTION slider controls the amount of friction or attenuation in the membrane. The STIFFNESS slider controls the force exerted to a turtle by a unit deflection difference between the turtle and its four neighbors. Controls of the driving force: The FREQUENCY slider controls the frequency at which the selected area of the membrane (the driving force) moves up and down. The AMPLITUDE slider controls the maximum height of the green area of the membrane. The X-D-POINT slider controls the x-coordinate of the center of the driving force. The Y-D-POINT slider controls the y-coordinate of the center of the driving force. The WIDTH slider controls the width of the selected driving force. Controls for viewing: The THREE-D? switch controls the view point of the projection. Value 0 is for isometric view (3-D tilted at an angle), and value 1 is for the top view (2-D looking down). RUNNING THE MODEL ----------------- Click the SETUP button to set up the membrane. Click GO to make the selected area of the membrane (the green turtles) begin moving up and down. THINGS TO NOTICE ---------------- The membrane is made up of lines of turtles. Each turtle acts as it were connected to its four neighboring turtles by springs. In these model, turtles move only up and down- thus the forces' direction are only up and down. The greater the distance between a turtle and his neighbors, the stronger the force. When the selected area of the membrane (the green turtles) moves up, they "pull up" the turtles to their neighbors, which in turn pull up the turtles to their neighbors, and so on. In that way, a wave moves within the membrane. When the wave reaches the edges of the membrane (the blue turtles), the wave is reflected back to the center of the membrane. The green turtles (within the selected area) continue to put more energy into the membrane. If there were no friction in the membrane, the waves in the membrane would keep getting bigger and bigger. THINGS TO TRY ------------- Try different membranes. Soft membranes have smaller stiffness values and hard membranes have larger stiffness values. Try different driving forces, or try changing the frequency or amplitude. It is very interesting to change the size and the position of the driving force to see symmetrical and asymmetrical wave motions. Try to create a "standing wave," in which some points in the membrane do not move at all. EXTENDING THE MODEL ------------------- In this model, the movement of the turtles is only in the vertical direction perpendicular to the membrane. Modify the model such that the movement is within the membrane plane, i.e. the x-y plane. You can also try to add additional driving forces to make a multi-input membrane model. Another thing you can try is to apply different waveforms to the driving-force to see how the membrane reacts to different inputs. Try changing the overall shape of the driving force. Try to build a solid model, that is, a model of waveforms within all three dimensions. STARLOGOT FEATURES ----------------- A key step in developing this model was to create an invisible coordinate system of x1, y1, and zpos (the variable names used to indicate the x, y, and z coordinates). "x1, y1, zpos" are just three turtles-own variables. You can imagine that turtles are placed in and move around this illusionary 3-space. Turtles are projected into the graphical field with different prospectives- in 'membrane', there are the isometric views and the top view. A projected point on the graphic field may correspond to more than one point in the invisible coordinate system. Thus the StarLogoT feature "scale-color" is used to differentiate those points. "scale-color" takes four arguments- a color (such as red, or cyan), a variable (against which the color is scaled), a minimum value for the variable, and a maximum value. In 'membrane', it does not make sense for the turtles to "wrap" when they get to the top or bottom of the screen. So the y-position of the turtles is kept in a new variable (YPOS), and the turtle is hidden if its y-position moves outside the boundary of the screen.