Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

หาจุดยอด จุดโฟกัส และเส้น준เส้นของพาราโบลาใน Java

พาราโบลา (Parabola) และสมการมาตรฐาน

สมการทั่วไป: y = ax² + bx + c (a ≠ 0)

สูตรสำคัญ

องค์ประกอบสูตร
Vertex (จุดยอด)x = -b/(2a), y = (4ac - b²)/(4a)
Focus (จุดโฟกัส)x = -b/(2a), y = (4ac - b² + 1)/(4a)
Directrix (เส้น준เส้น)y = c - (b² + 1)/(4a)

ตัวอย่างโค้ด

public class Demo { 
    public static void findParabolaProperties(double a, double b, double c) { 
        // Vertex
        double vertexX = -b / (2 * a); 
        double vertexY = (4 * a * c - b * b) / (4 * a); 
        
        // Focus
        double focusX = vertexX; 
        double focusY = (4 * a * c - b * b + 1) / (4 * a); 
        
        // Directrix
        double directrixY = c - (b * b + 1) / (4 * a); 
        
        System.out.printf("จุดยอด (Vertex): (%.4f, %.4f)%n", vertexX, vertexY); 
        System.out.printf("จุดโฟกัส (Focus): (%.4f, %.4f)%n", focusX, focusY); 
        System.out.printf("เส้น준เส้น (Directrix): y = %.4f%n", directrixY); 
    } 
    
    public static void main(String[] args) { 
        double a = 6, b = 2, c = 9; 
        findParabolaProperties(a, b, c); 
    } 
}

ผลลัพธ์

จุดยอด (Vertex): (-0.1667, 8.8333)
จุดโฟกัส (Focus): (-0.1667, 8.8750)
เส้น준เส้น (Directrix): y = -111.0000

คำอธิบาย

โค้ดคำนวณค่าต่างๆ จากสูตรทางคณิตศาสตร์ โดยรับพารามิเตอร์ a, b, c ของสมการ y = ax² + bx + c

ตรวจสอบด้วย Vertex Form

แปลงเป็น vertex form: y = a(x - h)² + k โดย h = -b/(2a), k = (4ac-b²)/(4a)

y = 6x² + 2x + 9
  = 6(x² + 1/3 x) + 9
  = 6(x + 1/6)² - 6(1/36) + 9
  = 6(x + 1/6)² + 53/6
Vertex: (-1/6, 53/6) = (-0.1667, 8.8333) ✓

คุณสมบัติพาราโบลา

  • a > 0 → เปิดขึ้น (Concave up) - Vertex เป็น minimum
  • a < 0 → เปิดลง (Concave down) - Vertex เป็น maximum
  • Focus อยู่ภายในโค้ง Directrix อยู่นอกโค้ง
  • ระยะจาก Vertex ถึง Focus = 1/(4|a|)

กรณีพาราโบลาแนวนอน (x = ay² + by + c)

// สลับบทบาท x และ y
// Vertex: ( (4ac-b²)/(4a), -b/(2a) )
// Focus:  ( (4ac-b²+1)/(4a), -b/(2a) )
// Directrix: x = c - (b²+1)/(4a)

การประยุกต์ใช้

  • Physics: Projectile motion, Reflector design
  • Engineering: Satellite dishes, Headlights, Solar cookers
  • Computer Graphics: Curve rendering
  • Optimization: Quadratic programming