# MDL file for Synth-A-Modeler
#
# (c) Edgar Berdahl, 2012
# Audio Communication Group
# Technical University of Berlin
#
# -------------------------------------------------------------------
#
# The above copyright notice including the copyright holders and this
# permission notice shall be included in all copies, substantial
# portions, or derivatives of the Software and Software portions.
#
# The end-user documentation included with the redistribution, if any,
# must include the following acknowledgment: "This software was 
# developed at least in part using Synth-A-Modeler, which is a modular 
# and open-source environment for designing physical models (see 
# https://github.com/eberdahl/SaM)", in the same place and form as other
# third-party acknowledgments. In addition, this acknowledgment must 
# appear in the software itself in the same form and location as other 
# such third-party acknowledgments.
#
# Alternatively, if software is generated using Synth-A-Modeler, then 
# the end-user documentation included with the generated software, if 
# any, must include the following statement: "This software was generated 
# using Synth-A-Modeler, which is a modular and open-source environment
# for designing physical models (see https://github.com/eberdahl/SaM)",
# in the same place and form as other third-party acknowledgments. In
# addition, this acknowledgment must appear prominently in any software
# generated by Synth-A-Modeler in the same form and location as other
# such third-party acknowledgments, and in such a manner that users
# will be aware that the software was generated by Synth-A-Modeler.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 3 as
# published by the Free Software Foundation except subject to the additional
# attribution requirements described beneath the copyright notice above.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the modified GNU General Public
# License along with this program.




port(),dev0; # pos 203,61
resonators(freq1*1.0,2.5,m*1.0),r0; # pos 64,32
port(),dev0cpy; # pos 331,61


pluck(k*1.0,R*1.0,maxDisp*1.0,0.00),p0,dev0,r0;








faustcode: vol=hslider("Volume",0.2,0.0,3.0,0.05);
faustcode: k=hslider("Pluck stiffness [N/m]",600.0,10.0,1000.0,10.0);
faustcode: R=hslider("Pluck damping [N/(m/s)]", 0.12, 0.0, 0.5, 0.01);
faustcode: freq1=hslider("Resonator frequency [Hz]", 50.0, 20.0, 1000.0, 10.0);
faustcode: maxDisp=hslider("Pluck max displacement [m]",0.007,0.001,0.02,0.001);
faustcode: m=hslider("Resonator mass [kg]",0.015,0.0005,0.25,0.0005);


audioout,a0,r0*vol*3000.0; # pos 51,160
audioout,a1,p0*vol*0.10; # pos 147,160