حاسبة دالة الهافرساين
هافرساين الزاوية 90° يساوي 0.5: فواحد ناقص جيب التمام مقسومًا على اثنين يطابق مربع جيب نصف الزاوية، أي 0.707106781187 مضروبًا في نفسه. وتظهر الصيغتان معًا لتتحققوا من المتطابقة بنظرة واحدة. مجانًا في متصفحكم.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- الزاوية
- 90 deg
- الزاوية (rad)
- 1.5707963268 deg
- الزاوية (درجات)
- 90
- هافرساين
- 0.5
- جتا ثيتا
- 0
هافرساين الزاوية كمية مثلثية موجزة تُعرَّف ب hav(θ) = (1 − cos θ) / 2، وهي مطابقة جبريًا لمربع جيب نصف الزاوية. تستخدم صيغ مسافة الدائرة العظمى وفحوصات الزيادة الكروية وكثير من أوراق الملاحة هذا الشكل لأنه يبقى مستقرًا عدديًا عند الزوايا المركزية الصغيرة حيث تفقد فرق جيوب التمام المباشرة دقتها. تستقبل هذه القدرة زاوية واحدة بالدرجات أو الراديان، وتقيّم التعبيرين المتكافئين، وتعيد هافرساين مقربًا بشكل مستقر مع cos θ و sin(θ/2) حتى تتمكنوا من تدقيق المتطابقة بالنظر.
ما دالة الهافرساين ولماذا وُجدت
ترسم دالة الهافرساين زاوية حقيقية θ إلى الفترة المغلقة [0, 1]. بالتعريف يساوي hav(θ) واحدًا ناقص جيب تمام θ مقسومًا على اثنين. وبفضل متطابقة نصف الزاوية sin²(φ) = (1 − cos 2φ) / 2 حيث φ = θ/2، تكون الكمية نفسها أيضًا مربع جيب نصف الزاوية.
هذه القراءة المزدوجة هي ما يجعلها مفيدة: كانت الكتب والجداول البحرية القديمة تجدول الهافرساينات لكتابة مثلثات كروية دون جذور متداخلة لفروق سالبة، بينما يستخدم الرمز الحديث الجبر نفسه لحساب الزوايا المركزية للدائرة العظمى من فروق العرض والطول. عندما يكون نقطتان على كرة قريبتين، يكون cos c ≈ 1 للزاوية المركزية c، وطرح جيبي تمام شبه متساويين للإحداثيات يلغي أرقامًا معنوية؛ وإعادة الترتيب عبر الهافرساين تُبقي القيم الوسيطة صغيرة وموجبة.
هذه الصفحة ليست أداة مسافة كاملة من نقطة إلى نقطة —تلك الصفحات تطلب زوجين من الإحداثيات— بل اللبنة الابتدائية: بإعطاء θ فقط، الإبلاغ عن hav(θ) والأجزاء التي تثبت المتطابقة. فهم هذه الخطوة ذات العدد الواحد هو ما تحتاجه الواجبات ومراجعات الرمز وملاحظات الهندسة الكروية قبل تجميع الصيغة متعددة الإحداثيات.
النطاق العددي والدقة والفرق عن أدوات المسافة
لأن جيب التمام يمتد على [−1, 1]، يقع التعبير (1 − cos θ)/2 دائمًا في [0, 1] ل θ حقيقية، مع hav(0) = 0 و hav(π) = 1 و hav(π/2) = 1/2. أي انحراف عائم طفيف يدفع القيمة خارج [0, 1] يُقصّ حتى لا يرى المستدعون −1e−16 أو 1 + 1e−16 كهافرساين مشروعة. لا يوجد بحث شبكي ولا عيّنة عشوائية ولا اعتماد على ساعة الجدار: المدخلات المتطابقة تنتج دائمًا المخرج نفسه، ما يجعل القدرة آمنة لاختبارات الوحدة وأوراق العمل دون اتصال والدفاتر القابلة للتكرار.
استخدموها حين تتوفر لديكم إحداثيات أو تحتاجون مثلثات نصف زاوية بإشارات؛ واستخدموا هذه الصفحة حين يكون السؤال ببساطة «ما هافرساين هذه الزاوية؟» بالدرجات أو الراديان. وإذا ركّبتم لاحقًا مسافة هافرساين كاملة، مرّروا كل فرق زاوي إلى هذه الدالة (أو الصيغة المضمنة المكافئة) واجمعوا مع الهافرساين العكسي أو شكل arcsin — تبقى هذه القدرة مركّزة على دالة الزاوية الواحدة كي تظل الوثائق والثوابت صغيرة وواضحة.
حالات الاستخدام
فحوصات هافرساين للواجبات والكتب
يدخل الطلاب 60° أو 90° أو π راديان ويؤكدون أن hav(θ) يساوي (1 − cos θ)/2 و sin²(θ/2) قبل تجميع حل المثلث الكروي الكامل.
خطوات وسيطة في GIS والملاحة
يتحقق المطورون من أن قيم الهافرساين الوسيطة في مسار دائرة عظمى أو لوكسودروم تطابق التعريف المغلق لزاوية واحدة.
الأسئلة الشائعة
ما هافرساين الزاوية؟
hav(θ) = (1 − cos θ) / 2، وهي أيضًا تساوي sin²(θ/2). تعيد هذه الحاسبة تلك القيمة لأي زاوية منتهية بالدرجات أو الراديان.
هل هذا نفسه مسافة الدائرة العظمى؟
لا. أدوات المسافة تأخذ زوجين من العرض والطول. تقيّم هذه الصفحة فقط هافرساين زاوية واحدة —لبنة البناء داخل تلك الصيغ—.
ماذا يحدث إذا لم تكن الزاوية عددًا؟
تُقبل فقط الزوايا العددية المنتهية (أو سلاسل الأرقام التي تُحوَّل إلى أعداد منتهية).
كم يساوي هافرساين الزاوية 90 درجة؟
يساوي 0.5. فجيب تمام 90° هو 0، لذا فإن واحدًا ناقص جيب التمام مقسومًا على اثنين يعطي 0.5، ومربع جيب نصف الزاوية 0.707106781187 يعطي القيمة 0.5 نفسها.
ما مدى القيم التي يأخذها الهافرساين؟
تتراوح دائمًا من 0 إلى 1. فهافرساين 0 هو 0، وهافرساين π هو 1، وهافرساين الزاوية القائمة نصف، لأن جيب تمام أي زاوية حقيقية لا يخرج عن المدى من سالب واحد إلى واحد.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/trig/haversine-function \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"angle":90}'const res = await fetch("https://api.kit.forhosting.com/trig/haversine-function", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"angle": 90
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/trig/haversine-function",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"angle": 90
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/trig/haversine-function", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"angle":90}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"angle":90}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/trig/haversine-function", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"angle": 90
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "trig.haversine_function",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
تُرفض المدخلات غير العددية أو غير المنتهية ب invalid_input. الخوارزمية حساب صرف: حتمية ودون شبكة ومتطابقة في مشغّل المتصفح المجاني ومسار API المدفوع عند $0.002 لكل طلب ناجح.
كيف تستدعون الحاسبة وتقرأون النتيجة
سلسلة formula قصيرة توثّق المتطابقة المستخدمة. أرسلوا حقلًا عدديًا اسمه angle (تُقبل الأسماء البديلة theta و value) واختياريًا unit بقيمة deg أو degrees (الافتراضي) أو rad أو radians. تُسمح سلاسل الأرقام التي تُحوَّل إلى أعداد منتهية؛ الحقول الناقصة والسلاسل الفارغة و NaN و Infinity والكائنات والأنواع غير العددية تفشل ب invalid_input مع تسمية الحقل المشكل. عند النجاح يعيد JSON زاوية الإدخال والوحدة المطبّعة، ويبلغ عن الزاوية بالراديان والدرجات، ويعيد haversine كنتيجة أساسية. للشفافية يعيد أيضًا cos_theta و sin_half و sin_half_squared حتى تؤكدوا أن (1 − cos θ)/2 و sin²(θ/2) يتفقان بعد التقريب. تسعير استدعاء API ناجح مبلغ ثابت $0.002 تحت وحدة item؛ ولا تُحتسب إخفاقات التحقق. العملاء المعتادون: طلاب يتحققون من hav(90°) = 1/2، ومعلمون يعدّون مفاتيح إجابات، ومطورو GIS يراجعون خطوات وسيطة لدائرة عظمى، وأنابيب CI تجمّد JSON المتوقع حتى لا يغيّر إعادة الهيكلة التعريف بصمت.
النطاق العددي والدقة والفرق عن أدوات المسافة
نوايا البحث ذات الصلة —مسافة دائرة عظمى بين زوجي lat/lon، أو sin/cos/tan لنصف الزاوية بإشارات، أو اختزال قوة مربع الجيب— صفحات منفصلة بمداخل وعناوين SEO مختلفة.
حالات التكامل
ثوابت CI لمكتبات الرياضيات الكروية
تجمّد الأنابيب مخرجات JSON الذهبية لزوايا معروفة حتى لا يعيد refactor مستقبلي تعريف hav(θ) أو يقلب الوحدات بصمت.
أسئلة تقنية
كيف تُحسب دالة الهافرساين عبر الإنترنت؟
أرسلوا ب POST زاوية عددية (و unit اختيارية deg أو rad) إلى هذه النهاية، أو استخدموا نموذج المتصفح المجاني. حقل الاستجابة haversine هو النتيجة الأساسية.
هل حاسبة الهافرساين في المتصفح مجانية؟
نعم. يستخدم مشغّل المتصفح المكتبة نفسها التي تستخدمها API ولا يكلّف شيئًا. تفرض API مبلغ $0.002 لكل طلب ناجح من رصيدكم المسبق KIT.