Since you mentioned SINE wave, I think you're seeking a SWEEP signal. A chirp is a much more complex sound.
To get a sine wave sweep, you probably want a sine function that doesn't use up most of the Arduino executable space.
You can use one of the compact sin(theta) functions that leverage a simple table of values. Just pull the code you need from the cordic.c here: https://people.sc.fsu.edu/~jburkardt/c_src/cordic/cordic.html. C runs in Arduino sketches almost out of the box. You may or may not need some things from the cordic.h. That's why I said "almost". The cordic_prb.c test file has a function test002() that shows you how to call the sine function.
Letting theta = t * (t + k), you will get your sweep, with your instantaneous frequency, f = 2 * pi * (t + k). You will need to calculate the correct k and set t_max to end your loop. This can be obtained from the above formula and your f_min of 3kHz and f_max of 100kHz.
You can use a linear translation to get the sample in the range of values that you want: s = s_center + s_peak * sin(theta) / 2, but you will need to calculate your s_ave and s_peak from your center voltage, V_center, and your peak to peak voltage, V_peak. So there are two translations. This second one depends on the Voltage range of your Arduino board DAC.
Record your sample and voltage range for the board and then Work backward from Voltage range to V_center and V_peak to s_center and s_peak to your two coefficients to multiply and add to your sin(theta) result.
It's just a little algebra and some integration of some code, and you've got your SWEEP generator.
Also remember that boards like the Uno and Mega do not have a real D-to-A converter, so they will only give you a rectangular wave that has digital noise over the primary harmonic that approximates your sweep. Use the Due to avoid lots of digital noise. That's the down side of the pulse width modulation of the lower end Arduino chips.
Either way, you may want to attenuate higher frequencies from any type of D-to-A conversion with a simple passive (RC) or active (op amp) low pass filter.