Calcolatore f-stop
Converta focale e diametro di apertura nel numero f inciso sull’obiettivo: un 50 mm con pupilla d’ingresso di 25 mm è f/2, con un’apertura relativa di 0,5. Usi la stessa unità per entrambe le lunghezze. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Lunghezza focale
- 50
- Pupilla d'ingresso
- 25
- Numero f
- 2
- Apertura relativa
- 0,5
- Etichetta f-stop
- f/2
Il numero f, detto anche apertura relativa o f-stop fotografico, è il rapporto adimensionale tra la lunghezza focale di un obiettivo e il diametro della sua pupilla d'ingresso. I fotografi lo scrivono come f su N; ad esempio f/2 quando un obiettivo da cinquanta millimetri è diaframmato a un'apertura effettiva di venticinque millimetri. Progettisti ottici, ingegneri di app fotografiche e docenti hanno bisogno della stessa conversione affidabile da due lunghezze a quel singolo numero, senza confusione di unità e senza divisione silenziosa per zero quando l'apertura collassa. Questa capacità accetta qualsiasi unità di lunghezza coerente per focale e diametro di apertura, restituisce il numero f ripulito, l'apertura relativa reciproca e un'etichetta f-stop stampabile, e rifiuta un diametro nullo o non positivo con un errore di validazione chiaro invece di emettere Infinity.
Come si definisce e si calcola il numero f
Parta da due lunghezze misurate nella stessa unità: la lunghezza focale f dell'obiettivo e il diametro D della pupilla d'ingresso, immagine del diaframma fisico vista dallo spazio oggetto. La definizione classica del numero f è semplicemente N uguale a f diviso per D. Poiché entrambe le grandezze condividono un'unità di lunghezza, N è adimensionale; per questo un obiettivo da cinquanta millimetri f/2 e uno da cento millimetri f/2 condividono la stessa etichetta geometrica di raccolta luce anche se le dimensioni assolute della pupilla differiscono.
I fotografi parlano anche di f-stop come passi discreti lungo una sequenza geometrica, ma la grandezza continua sottostante è sempre questo rapporto; convertire N in un numero di stop o in un valore di esposizione è un altro argomento. La focale deve essere strettamente positiva; un f nullo o negativo non è una focale di lente sottile utilizzabile per questa formula.
Dove compaiono i calcolatori f-stop nel lavoro reale
I corsi di fotografia assegnano spesso problemi che convertono una focale dichiarata e il diametro dell'anello di apertura nel numero f stampato sul barilotto; un oracolo affidabile accelera la correzione e le demo. Firmware di fotocamera, app fotografiche mobili e fogli di progettazione obiettivi necessitano dello stesso rapporto per costruire metadati tipo EXIF, confrontare la raccolta luce tra fissi o validare voci di catalogo prima di una scheda prodotto.
Se in seguito serve tabelle di profondità di campo, EV di esposizione da otturatore e ISO, angoli di rifrazione con la legge di Snell o ingrandimento di lente sottile, li tratti come intenti di ricerca e landing separati invece di sovraccaricare questa pagina del calcolatore f-stop.
Casi d'uso
Chiavi di risposta per compiti e laboratorio obiettivi
Converta coppie di focale e diametro di pupilla del manuale in numeri f ed etichette f/N così docenti e auto-correttori condividono un'unica verità di riferimento.
Controlli di sanità in progettazione ottica
Verifichi che un diametro di pupilla proposto per una data focale corrisponda al numero f obiettivo prima di lavoro più approfondito di diffrazione o DOF.
Domande frequenti
Quale formula usa questo calcolatore f-stop?
La definizione classica N = f / D, dove f è la lunghezza focale e D il diametro di apertura (pupilla d'ingresso) nella stessa unità di lunghezza. La risposta restituisce anche l'apertura relativa D/f e un'etichetta f/N stampabile.
Focale e diametro devono usare le stesse unità?
Sì. Entrambe le lunghezze devono usare la stessa unità (ad esempio entrambe in millimetri). Il numero f è adimensionale; mescolare mm e m darebbe silenziosamente un rapporto errato.
Il numero f è la stessa cosa di un passo f-stop intero?
Il numero f N è il rapporto continuo f/D. Le sequenze fotografiche a stop interi (f/1.4, f/2, f/2.8…) sono punti discreti di una progressione geometrica di N; questo strumento restituisce il valore continuo esatto, non un indice di stop arrotondato.
Quanto costa?
Lo strumento del browser è gratuito e gira in locale.
Perché un obiettivo da 50 mm e uno da 100 mm indicano entrambi f/2?
Perché il numero f è un rapporto, non una dimensione. Un 50 mm con pupilla di 25 mm e un 100 mm con pupilla di 50 mm danno entrambi 2, anche se la seconda pupilla è larga il doppio.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/optics/f-number \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"focal_length":50,"aperture_diameter":25}'const res = await fetch("https://api.kit.forhosting.com/optics/f-number", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"focal_length": 50,
"aperture_diameter": 25
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/f-number",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"focal_length": 50,
"aperture_diameter": 25
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/f-number", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"focal_length":50,"aperture_diameter":25}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"focal_length":50,"aperture_diameter":25}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/f-number", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"focal_length": 50,
"aperture_diameter": 25
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.f_number",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Come si definisce e si calcola il numero f
Questo calcolatore esegue solo la divisione in forma chiusa, pulisce il rumore in virgola mobile a dodici cifre significative per un JSON stabile ed etichetta il risultato come f/N così tabelle e stringhe UI restano leggibili. Anche il diametro di apertura deve essere strettamente positivo: quando D tende a zero il rapporto formale diverge, e uno zero esatto dividerebbe per zero, quindi la richiesta fallisce con invalid_input invece di restituire Infinity o NaN.
Cosa invia e cosa riceve in risposta
Entrambi i campi sono obbligatori. Controlli classici da manuale includono un obiettivo da cinquanta millimetri con pupilla da venticinque millimetri che dà N uguale a due, uno da ottanta millimetri con pupilla da dieci millimetri che dà N uguale a otto, e uno da cento millimetri con pupilla da cinquanta millimetri che di nuovo dà f/2. Invii due numeri finiti positivi nei campi focal_length e aperture_diameter, con qualsiasi unità di lunghezza coerente, ad esempio millimetri in fotografia o metri per grandi ottiche telescopiche. Gli alias accettati dal solver includono f, focal, fl e focal_length_mm per la prima lunghezza, e diameter, D, aperture, pupil_diameter e aperture_diameter_mm per la seconda. Campi mancanti, stringhe non numeriche, NaN e Infinity falliscono con invalid_input e non vengono addebitati. Quando aperture_diameter è zero, negativo o infinitesimamente prossimo a zero, la richiesta fallisce con un messaggio che N uguale a f su D dividerebbe per zero, così il client può chiedere una dimensione reale di pupilla invece di indovinare. In caso di successo la risposta restituisce focal_length e aperture_diameter ripuliti, l'f_number adimensionale, la relative_aperture reciproca uguale a D su f, un f_stop_label leggibile come f/2, la stringa di formula N uguale a f/D e unit in dimensionless. Il prezzo delle chiamate API riuscite è la base pubblicata di $0.002 per voce; i fallimenti di validazione non consumano saldo prepagato.
Dove compaiono i calcolatori f-stop nel lavoro reale
I taccuini di ingegneria ottica collegano il diametro della pupilla d'ingresso a diffrazione, profondità di campo ed étendue, e spesso partono da N uguale a f su D prima di calcoli più avanzati; un endpoint di parse puro evita di reimplementare la gestione delle unità in ogni cella. Poiché questa capacità è un motore di parse puro, il prezzo API è la base pubblicata di $0.002 per voce riuscita e la validazione fallita non consuma saldo.
Casi di integrazione
Metadati tipo EXIF per app fotografiche
Calcoli l'apertura relativa da focale e diametro della pupilla d'ingresso misurati o da catalogo costruendo metadati obiettivo o fixture di prodotto.
Domande tecniche
Cosa succede se il diametro di apertura è zero?
La richiesta fallisce con invalid_input. Il numero f N = f/D non è definito quando D = 0, quindi il solver rifiuta un diametro nullo o non positivo invece di restituire Infinity.