-- Copyright (C) 2000-2002 The University of Cincinnati. -- All rights reserved. -- This file is part of VESTs (Vhdl tESTs). -- UC MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE -- SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -- IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, -- OR NON-INFRINGEMENT. UC SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY -- LICENSEE AS A RESULT OF USING, RESULT OF USING, MODIFYING OR -- DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. -- By using or copying this Software, Licensee agrees to abide by the -- intellectual property laws, and all other applicable laws of the U.S., -- and the terms of this license. -- You may modify, distribute, and use the software contained in this -- package under the terms of the "GNU GENERAL PUBLIC LICENSE" version 2, -- June 1991. A copy of this license agreement can be found in the file -- "COPYING", distributed with this archive. -- You should have received a copy of the GNU General Public License -- along with VESTs; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -- --------------------------------------------------------------------- -- -- $Id: bouncing_ball.ams,v 1.1 2002-03-27 22:11:17 paw Exp $ -- $Revision: 1.1 $ -- -- --------------------------------------------------------------------- ENTITY bouncing_ball IS END ENTITY bouncing_ball; ARCHITECTURE simple OF bouncing_ball IS QUANTITY v: real; QUANTITY s: real; CONSTANT G: real := 9.81; CONSTANT Air_Res: real := 0.1; BEGIN b1:BREAK v => 0.0, s => 30.0; -- announce discontinuity and reset b2:BREAK v => -0.7*v WHEN NOT(s'above(0.0)); velocity: v == s'dot ; acceleration: v'dot == -G; END ARCHITECTURE simple;