
Obineg
the easiest way is to break it down into three parts.
1.) map it down to range 01,
2.) for log, do log(($f1)* ($f21)+1)/log($f2)
3.) then map it back to its original range.for exp, use (exp($f1*log($f2))1)/($f21),
to turn the curve upside down, invert the range to 10 and so on.

Obineg
@lo94
yes, [clip] followed by [change] is the "default" way for most custom graphics elements with mouse coord input. 
Obineg
while your original question ultimately is one about how to deal with a certain object, i would recommend to rethink the whole approach.
problems like this can be reduced if you strictly divide up your patch into a.) mouse input objects b.) display objects and then c.) scale or distort number ranges where needed.
for example all sliders could always be 0.  1. and then the other components, i.e. which values are shown to the user and which values are sent to some other part of the patch, could rely on this range.
that sliders accept messages to set their range does not mean that this is always the best practice.
and don´t overuse s/r


Obineg
the algorithm would be fairly complex. it would not only need to analyze the transfer function (oir its reversed) in various ways, it would also need to know all the filter externals you have installed and how they sound.
that is basically a deep learning application, which you first have to train and manually correct its output.

Obineg
sure, if you know the exact formula which was used to construct the FIR, you can reverse the process.
not for "plastic cup".

Obineg
in 32 bit max/msp you could expr for that.
because expr is not only 64 bit inside and give you a higher precision result from a complex function  it will also save the long form you typed in, since it is characters and not numbers.
[expr 1.23456789]

Obineg
clock division and clock multiplication for a phaseaccumulator?
division is easy.
[*~ 4.]
[%~ 1.]but multiplication is more or less impossible, as it would require something to count the current subcycle.
there are a workarounds though. if you want to use a phasor~ and a phasor~ which is 4 times slower, you could
a ) use multiple phasors~ from the beginning on and then select one of them
or, if you need them to be in sync with a "master phasor",
b ) use a phasor which is 8 times slower than the rated rate and derive the base speed phasor from it already using multiplication.

Obineg
samplingrate reduction and bitdepth reduction will still not give you satisfying results.
the AKAI S900 and S950 for example have a variablesamplingrate DA converter and analogfilters  these are the main soundforming parts.
the emulator II still has the SSM filters.
while you can emulate analog filters quite good today, implementing that AKAI type of DAC within a fixedrate digital enviroment is not so easy.