AArcNerine
KI-Arbeitsumgebung für Code

Zentralwinkel auf der Einheitskugel

Berechne den Zentralwinkel zweier Kugelpositionen in Radiant bei Breitengraden bis ±90 und Längengraden bis ±180 Grad.

● ● ●ArcNerine●
Arbeitsabläufe · Zentralwinkel auf der Einheitskugel ×
from math import asin, cos, isfinite, radians, sin, sqrt
def central_angle(lat1, lon1, lat2, lon2):
    values = (lat1, lon1, lat2, lon2)
    if any(type(x) not in (int, float) or not -limit <= x <= limit
           or not isfinite(x) for x, limit in zip(values, (90, 180, 90, 180))):
        raise ValueError("bounded finite coordinates")
    p, q = radians(lat1), radians(lat2)
    a = sin((q-p)/2)**2 + cos(p)*cos(q)*sin(radians(lon2-lon1)/2)**2
    return 2 * asin(sqrt(min(1.0, max(0.0, a))))
✳Berechne den Zentralwinkel zweier Kugelpositionen in Radiant bei Breitengraden bis ±90 und Längengraden bis ±180 Grad.
✓ ÄnderungenVor dem Anwenden prüfen ↗
Illustration der Arbeitsumgebung
  1. Modelle

    Richten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.

  2. Projekt

    Prüfe gleiche und antipodale Punkte und lehne nicht endliche Koordinaten ohne Annahme eines Erdradius ab.

  3. Vor dem Anwenden prüfen

    Vergleichen Sie das tatsächliche Verhalten mit dem erwarteten Ergebnis. Klären Sie fehlgeschlagene Prüfungen vor weiteren Änderungen.

Arbeitsabläufe

Zentralwinkel auf der Einheitskugel

Arbeitsabläufe ↗
Arbeitsabläufe
from math import asin, cos, isfinite, radians, sin, sqrt
def central_angle(lat1, lon1, lat2, lon2):
    values = (lat1, lon1, lat2, lon2)
    if any(type(x) not in (int, float) or not -limit <= x <= limit
           or not isfinite(x) for x, limit in zip(values, (90, 180, 90, 180))):
        raise ValueError("bounded finite coordinates")
    p, q = radians(lat1), radians(lat2)
    a = sin((q-p)/2)**2 + cos(p)*cos(q)*sin(radians(lon2-lon1)/2)**2
    return 2 * asin(sqrt(min(1.0, max(0.0, a))))
KI-Arbeitsumgebung für Code

Koordinatenkonventionen durch die gesamte Änderung bewahren

ArcNerine bietet für koordinatenbezogene Softwarearbeit eine Windows-Umgebung zur Quellcodeprüfung und zum KI-Gespräch. Bringen Sie die Projektdateien mit und erklären Sie vor einer Implementierungsänderung, was die eingehenden Zahlen darstellen. Einheiten, Koordinatenreihenfolge und zulässige Bereiche gehören zum Verhalten und damit neben der zu ändernden Berechnung in die Anfrage.

Das Beispiel zum Zentriwinkel auf der Einheitskugel liefert eine nützliche Prüfaufgabe. Lassen Sie das verbundene Modell Eingaben in Grad durch eine Routine verfolgen, die Radiant zurückgibt, und untersuchen Sie anschließend die Verwendung des Ergebnisses durch den Aufrufer. Vergleichen Sie zusammenfallende und gegenüberliegende Positionen und besprechen Sie zurückgewiesene nichtendliche Werte. Diese Fälle gemeinsam zu betrachten hilft zu erkennen, wenn eine Codeänderung eine Schnittstellenannahme statt nur die Arithmetik verändert.

Prüfen Sie den Patch mit Blick auf Eingabeprüfungen und Ausgabeverbraucher. Führen Sie die Referenzfälle Ihres Projekts aus und prüfen Sie jede Umwandlungs- oder Anzeigeregel ausdrücklich. Ein ungefiltertes Modell kann helfen, wenn es über einen unterstützten OpenAI-kompatiblen oder Anthropic-Endpunkt mit den erforderlichen Zugangsdaten verfügbar ist. Werkzeuge und Kontextgrenzen stammen von diesem Modell und Server. Ziel ist eine Anwendungsänderung mit weiterhin stimmigen Konventionen; die beispielhafte Geometrieaufgabe bietet einen konkreten Weg zur Überprüfung.

Koordinatenfragen für eine Codeprüfung

Ist die Beispielausgabe eine Entfernung in Kilometern?

Sie ist ein Zentriwinkel in Radiant auf einer Einheitskugel. Eine Interpretation als physische Entfernung erfordert ein zusätzliches Modell und die Wahl eines Radius. Prüfen Sie den Aufrufer, damit er ein Winkelergebnis nicht ohne ausdrückliche Umwandlung als Entfernung bezeichnet.

Was sollte ich zu Breiten- und Längengrad angeben?

Geben Sie Reihenfolge, Einheiten und unterstützte Bereiche an und nehmen Sie diese Erwartungen in die Testfälle auf. Lassen Sie den Assistenten neben der Funktion auch Datenquelle und Verbraucher untersuchen, denn ein vertauschtes Argument kann dennoch eine gültige Zahl sein.

Welche Positionen eignen sich als Referenzfälle?

Verwenden Sie zusammenfallende und antipodische Positionen sowie einen einfachen Zwischenfall mit bekanntem Erwartungswinkel. Prüfen Sie zurückgewiesene nichtendliche und außerhalb des Bereichs liegende Eingaben getrennt, damit ein erfolgreiches Geometrieergebnis keine abgeschwächte Eingabegrenze verdeckt.

Sollte eine Begrenzung die Eingabevalidierung ersetzen?

Nein. Prüfen Sie, warum eine numerische Begrenzung vorhanden ist, und halten Sie die Prüfungen zulässiger Koordinaten ausdrücklich fest. Rundung innerhalb einer Berechnung zu behandeln unterscheidet sich von der Annahme ungültiger Anwendungseingaben. Beide Verhaltensweisen sollten unter eigenen festgelegten Anforderungen getestet werden.

Für Windows herunterladen ↗

ArcNerine · Aktualisiert 2026-10-25