Skip to content

Instantly share code, notes, and snippets.

@jgphilpott
Last active May 16, 2023 19:42
Show Gist options
  • Save jgphilpott/cc4f9dac2a78b92928eadecc58394ab2 to your computer and use it in GitHub Desktop.
Save jgphilpott/cc4f9dac2a78b92928eadecc58394ab2 to your computer and use it in GitHub Desktop.
A collection of functions for converting between different units of frequency.
### Frequency Conversions ###
convertFrequency =
hertz: {}
kilohertz: {}
megahertz: {}
gigahertz: {}
### Hertz Conversions ###
convertFrequency.hertz.hertz = hz$hz = (hz) -> hz # Hertz to Hertz
convertFrequency.hertz.kilohertz = hz$khz = (hz) -> hz / 1e+3 # Hertz to Kilohertz
convertFrequency.hertz.megahertz = hz$mhz = (hz) -> hz / 1e+6 # Hertz to Megahertz
convertFrequency.hertz.gigahertz = hz$ghz = (hz) -> hz / 1e+9 # Hertz to Gigahertz
### Kilohertz Conversions ###
convertFrequency.kilohertz.hertz = khz$hz = (khz) -> khz * 1e+3 # Kilohertz to Hertz
convertFrequency.kilohertz.kilohertz = khz$khz = (khz) -> khz # Kilohertz to Kilohertz
convertFrequency.kilohertz.megahertz = khz$mhz = (khz) -> khz / 1e+3 # Kilohertz to Megahertz
convertFrequency.kilohertz.gigahertz = khz$ghz = (khz) -> khz / 1e+6 # Kilohertz to Gigahertz
### Megahertz Conversions ###
convertFrequency.megahertz.hertz = mhz$hz = (mhz) -> mhz * 1e+6 # Megahertz to Hertz
convertFrequency.megahertz.kilohertz = mhz$khz = (mhz) -> mhz * 1e+3 # Megahertz to Kilohertz
convertFrequency.megahertz.megahertz = mhz$mhz = (mhz) -> mhz # Megahertz to Megahertz
convertFrequency.megahertz.gigahertz = mhz$ghz = (mhz) -> mhz / 1e+3 # Megahertz to Gigahertz
### Gigahertz Conversions ###
convertFrequency.gigahertz.hertz = ghz$hz = (ghz) -> ghz * 1e+9 # Gigahertz to Hertz
convertFrequency.gigahertz.kilohertz = ghz$khz = (ghz) -> ghz * 1e+6 # Gigahertz to Kilohertz
convertFrequency.gigahertz.megahertz = ghz$mhz = (ghz) -> ghz * 1e+3 # Gigahertz to Megahertz
convertFrequency.gigahertz.gigahertz = ghz$ghz = (ghz) -> ghz # Gigahertz to Gigahertz
/* Frequency Conversions */
var convertFrequency, ghz$ghz, ghz$hz, ghz$khz, ghz$mhz, hz$ghz, hz$hz, hz$khz, hz$mhz, khz$ghz, khz$hz, khz$khz, khz$mhz, mhz$ghz, mhz$hz, mhz$khz, mhz$mhz;
convertFrequency = {
hertz: {},
kilohertz: {},
megahertz: {},
gigahertz: {}
};
/* Hertz Conversions */
convertFrequency.hertz.hertz = hz$hz = function(hz) {
return hz; // Hertz to Hertz
};
convertFrequency.hertz.kilohertz = hz$khz = function(hz) {
return hz / 1e+3; // Hertz to Kilohertz
};
convertFrequency.hertz.megahertz = hz$mhz = function(hz) {
return hz / 1e+6; // Hertz to Megahertz
};
convertFrequency.hertz.gigahertz = hz$ghz = function(hz) {
return hz / 1e+9; // Hertz to Gigahertz
};
/* Kilohertz Conversions */
convertFrequency.kilohertz.hertz = khz$hz = function(khz) {
return khz * 1e+3; // Kilohertz to Hertz
};
convertFrequency.kilohertz.kilohertz = khz$khz = function(khz) {
return khz; // Kilohertz to Kilohertz
};
convertFrequency.kilohertz.megahertz = khz$mhz = function(khz) {
return khz / 1e+3; // Kilohertz to Megahertz
};
convertFrequency.kilohertz.gigahertz = khz$ghz = function(khz) {
return khz / 1e+6; // Kilohertz to Gigahertz
};
/* Megahertz Conversions */
convertFrequency.megahertz.hertz = mhz$hz = function(mhz) {
return mhz * 1e+6; // Megahertz to Hertz
};
convertFrequency.megahertz.kilohertz = mhz$khz = function(mhz) {
return mhz * 1e+3; // Megahertz to Kilohertz
};
convertFrequency.megahertz.megahertz = mhz$mhz = function(mhz) {
return mhz; // Megahertz to Megahertz
};
convertFrequency.megahertz.gigahertz = mhz$ghz = function(mhz) {
return mhz / 1e+3; // Megahertz to Gigahertz
};
/* Gigahertz Conversions */
convertFrequency.gigahertz.hertz = ghz$hz = function(ghz) {
return ghz * 1e+9; // Gigahertz to Hertz
};
convertFrequency.gigahertz.kilohertz = ghz$khz = function(ghz) {
return ghz * 1e+6; // Gigahertz to Kilohertz
};
convertFrequency.gigahertz.megahertz = ghz$mhz = function(ghz) {
return ghz * 1e+3; // Gigahertz to Megahertz
};
convertFrequency.gigahertz.gigahertz = ghz$ghz = function(ghz) {
return ghz; // Gigahertz to Gigahertz
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment