از پارسکدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.
دو ماه پیش منتشر شده
تعداد بازدید: 210
کد پروژه: 544611
شرح پروژه
#کد_پروژه: 89968
موضوع: پروژه پایتون /
سلام وقت شما بخیر
عنوان پروژه این بوده سلام
دوستان هدف پروژه پایانی
کدی هستش که بتونه یه دستگاه معادله با هر تعداد مجهول رو که کاربر مشخص کرد با روش حذف گوش و یکی از روش های تکرار حل بکنه
درصد خطا زیر ۲ درصد مطرح هستش برای حالات تکرار
یه گزارش کامل به همراه جدول لازم که مراحل تکرار و ... رو توضیح بدید
import numpy as np
# روش حذف گاوسی
def gaussian_elimination(A, b):
n = len(b)
for i in range(n):
# محاسبه محور
max_row = max(range(i, n), key=lambda r: abs(A[r][i]))
A[[i, max_row]] = A[[max_row, i]]
b[i], b[max_row] = b[max_row], b[i]
# عملیات حذف
for j in range(i + 1, n):
factor = A[j][i] / A[i][i]
A[j, i:] -= factor * A[i, i:]
b[j] -= factor * b[i]
# بازگشت مقادیر
x = np.zeros(n)
for i in range(n - 1, -1, -1):
x[i] = (b[i] - np.dot(A[i, i + 1:], x[i + 1:])) / A[i, i]
return x
# روش تکراری (گاوس-سایدل)
def gauss_seidel(A, b, tol=1e-2, max_iterations=100):
n = len(b)
x = np.zeros(n)
for k in range(max_iterations):
x_new = np.copy(x)
for i in range(n):
sum1 = np.dot(A[i, :i], x_new[:i])
sum2 = np.dot(A[i, i + 1:], x[i + 1:])
x_new[i] = (b[i] - sum1 - sum2) / A[i, i]
# بررسی درصد خطا
error = np.linalg.norm(x_new - x, ord=np.inf) / np.linalg.norm(x_new, ord=np.inf)
if error < tol:
return x_new, k + 1, error
x = x_new
raise Exception("روش به همگرایی نرسید.")
# مثال استفاده
A = np.array([[4, 1, 2], [3, 5, 1], [1, 1, 3]], dtype=float)
b = np.array([4, 7, 3], dtype=float)
x_gaussian = gaussian_elimination(np.copy(A), np.copy(b))
x_gauss_seidel, iterations, final_error = gauss_seidel(A, b)
print("روش حذف گاوسی:", x_gaussian)
print("روش گاوس-سایدل:", x_gauss_seidel)
print("تعداد تکرارها:", iterations, "درصد خطای نهایی:", final_error) این هم سورس کدش پایتون
این پروژه شامل 4 فایل مهم است، لطفا قبل از ارسال پیشنهاد حتما نسبت به بررسی این فایل اقدام فرمایید.
مهارت ها و تخصص های مورد نیاز
مبلغ پروژه
480,000 تومان
مهلت برای انجام
3روز
وضعیت مناقصه
انجام شده
درباره کارفرما
عضویت دو سال پیش
قادر به انجام این پروژه هستید؟
مهلت ارسال پیشنهاد قیمت برای این پروژه تمام شده است
به رایگان یک حساب کاربری بسازید
مهارتها و تخصصهای خود را ثبت کنید، رزومه و نمونهکارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.
به شیوهای که دوست دارید کار کنید
برای پروژههای دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصتهای شغلی منحصر به فرد دسترسی پیدا کنید.
با اطمینان دستمزد دریافت کنید
از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.
میخواهید شروع به کار کنید؟
یک حساب کاربری بسازید
بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارتهای شما
است.
پیدا کردن کار (پروژه)
تماشای دمو روش کار