How do i create a projectile?
조회 수: 4(최근 30일)
Provided the properties of an object and initial conditions, simulate the path the object will follow as a projectile, including air resistance. Note that for air resistance you may use a simplified drag equation: Drag Force = Drag Coefficient x Velocity2
Input: initial x,y position and velocity, object mass and drag coefficient, gravitational acceleration Built in Logic: Check whether the object is has hit the ground (y=0) and terminate the simulation if so (use the break function) Animation Plot: Object position in time Summary Plot: Your choice of one variable Output: Distance travelled, and your choice of at least one other variable
Philippe Lebel 2019년 11월 26일
편집: Philippe Lebel 2019년 11월 26일
as example for a non-accelerating projectile (which is not your case) this could look like
time = 0:1:100; % time goes from 0 to 100 seconds for example
initial_position = [0,0]; % [x,y]
initial_velocities = [10,5];
position_x = initial_velocities(1)*t + initial_position(1);
position_y = initial_velocities(2)*t + initial_position(2);
the drag force provides an acceleration against the direction of movement (in x AND y) you will need to use cinematics equations such as:
x(t) = 0.5*acceleration_x * t^2 + inti_vel_x * t + init_pos_x;
and forces equations such as:
acceleration = Forces/mass
i hope this hint will get you going.
Jim Riggs 2019년 11월 27일
Always start by making a drawing of the problem.
- Define the coordinate system (which way is positive/negative)
- What are the parts of the system and their interconnections/relationships (topology)
- Define variable quantities and names
For Kinetic/kinematic analysis, draw a free-body diagram of the system
- Label forces, displacements, angles, velocity vectors, acceleration vectors
- Check sign conventions on all parameters
Using your drawings, define mathematical relationships using the nomenclature and sign conventions from your drawing.
For a trajectory model, you will define the initial condition, then integrate the equations of motion over some period of time (i.e. a loop in the program), until some condition is reached (vertical position goes below the ground or time limit is reached - you need a mathematical expression for this condition). Use this condition to exit the loop.