কম্পিউটার টিউটোরিয়াল

C#-এ MathF.Sinh() মেথড: হাইপারবোলিক সাইন গণনা


C#-এ MathF.Sinh() মেথডটি একটি float মানের হাইপারবোলিক সাইন (hyperbolic sine) ফেরত দেয়। হাইপারবোলিক সাইন সংজ্ঞা: sinh(x) = (eˣ - e⁻ˣ) / 2। এটি .NET Core 2.1+ এ উপলব্ধ।

সিনট্যাক্স (Syntax)

public static float Sinh(float x);

উদাহরণ ১: অসীম এবং ডিগ্রি-রেডিয়ান কনভার্সন

using System;

public class Demo
{
    public static void Main()
    {
        float val1 = float.PositiveInfinity;
        float val2 = float.NegativeInfinity;
        // ২০ ডিগ্রি রেডিয়ানে রূপান্তর
        float val3 = (20f * MathF.PI) / 180f;
        
        Console.WriteLine("MathF.Sinh(val1) = " + MathF.Sinh(val1));
        Console.WriteLine("MathF.Sinh(val2) = " + MathF.Sinh(val2));
        Console.WriteLine("MathF.Sinh(val3) = " + MathF.Sinh(val3));
    }
}

আউটপুট

MathF.Sinh(val1) = Infinity
MathF.Sinh(val2) = -Infinity
MathF.Sinh(val3) = 0.356198

উদাহরণ ২: বড় সংখ্যা এবং NaN

using System;

public class Demo
{
    public static void Main()
    {
        float val1 = 55f;
        float val2 = float.NaN;
        
        Console.WriteLine("MathF.Sinh(val1) = " + MathF.Sinh(val1));
        Console.WriteLine("MathF.Sinh(val2) = " + MathF.Sinh(val2));
    }
}

আউটপুট

MathF.Sinh(val1) = 3.847393E+23
MathF.Sinh(val2) = NaN

MathF.Sinh() বৈশিষ্ট্যসমূহ

ইনপুটআউটপুটব্যাখ্যা
PositiveInfinityInfinityeˣ অনন্ত বড় হয়
NegativeInfinity-Infinitye⁻ˣ অনন্ত বড় হয়
NaNNaNঅপরিবর্তিত
00sinh(0) = 0
বড় ধনাত্মক সংখ্যাখুব বড় ধনাত্মকএক্সপোনেনশিয়াল বৃদ্ধি

হাইপারবোলিক ফাংশন সমূহ

MathF ক্লাসে অন্যান্য হাইপারবোলিক ফাংশনও রয়েছে:

  • MathF.Cosh(x) - হাইপারবোলিক কোসাইন: (eˣ + e⁻ˣ)/2
  • MathF.Tanh(x) - হাইপারবোলিক ট্যানজেন্ট: sinh(x)/cosh(x)

প্রয়োগিক উদাহরণ: ক্যাটেনারি কার্ভ (Catenary Curve)

একটি লटकমান ছাড় বা চেইনের আকৃতি হাইপারবোলিক কোসাইন দ্বারা বর্ণিত হয়, কিন্তু সাইনও فیজিক্সে ব্যবহৃত হয়।

using System;

public class CatenaryDemo
{
    public static void Main()
    {
        // y = a * cosh(x/a) - catenary equation
        // slope = sinh(x/a)
        
        float a = 10f; // scaling factor
        float x = 5f;
        
        float slope = MathF.Sinh(x / a);
        float y = a * MathF.Cosh(x / a);
        
        Console.WriteLine($"At x={x}: y={y:F2}, slope={slope:F4}");
    }
}

নোট: MathF.Sinh() ফ্লোট প্রিসিশনের কারণে খুব বড় মানের জন্য এক্সপোনেনশিয়াল ওভারফ্লো হতে পারে (Infinity ফেরত দেয়)।

  1. C#-এ MathF.Sin() মেথড: ফ্লোট সাইন ফাংশন ব্যবহার

  2. C#-এ MathF.Truncate() মেথড উদাহরণসহ

  3. C#-এ MathF.Tanh() মেথড উদাহরণসহ

  4. C#-এ MathF.Tan() মেথড উদাহরণসহ