سؤال

أحتاج إلى معادلة أسية مع المعلمات التالية:

عندما x = 0، y = 153.
عندما x = 500، y = 53.
يجب أن تزيد y بشكل كبير كأسير x 0 وينبغي أن يقلل بشكل كبير عندما تقترب X 500.

لسبب ما لا أستطيع أن أتذكر كيفية القيام بذلك. أنا متأكد من أن ألا أرى المعادلة (أو واحدة مماثلة) يمكنني معرفة البقية.

السياق في البرمجة: هذا للحصول على وظيفة JavaScript التي يغير لون DIV عند الوصول إلى طول الحد الأقصى لعدد Textarea. البدائل الأخرى أو مقتطفات التعليمات البرمجية هي موضع ترحيب كبير.

تحديث:لا أعرف لماذا ولكن -1500 / (x + 15) +153 يعطيني شيئا قريبا من ما أبحث عنه. لذلك يبدو أن ما كنت سأطلبه هو ليس ما أردت حقا.

أعتقد أن ما أبحث عنه هو:
عندما x = 0، y = 53.
عندما x = 500، y = 153.

هل كانت مفيدة؟

المحلول

تحرير (بعد التحديث):

مع تغييراتك، تطلب وظيفة تصاعدي وشيء يشبه Y = 1 / x.

يمكن تغيير نطاق وظيفتك لتناسب الإحداثيات الدقيقة الخاصة بك، على الرغم من أن المنحنى المنحدرات أكثر حادة في البداية.

Y = 154 - 10100 / (20 * x + 100) @ Wolfram Alpha
قطعة أرض 154 - 10100 / (20 * x + 100) من x = 0 إلى x = 500 @ Wolfram Alpha

وإذ تلاحظ الحلول الصحيحة، فإننا نستخدم الحل x = 96، y = 149 لتغيير الصيغة، قم بتحويل هذه القيم إلى نطاق الإحداثيات الخاص بك. هذا سيعطينا شيئا أقرب إلى منحنىك المحدث الذي تنحدرات أكثر قليلا بلطف.

Y = 158 - 2625 / (x + 25) @ Wolfram Alpha
قطعة من 158 - 2625 / (x + 25) من x = 0 إلى x = 500 @ Wolfram Alpha

إليك مؤامرة من الإصدار الخاص بك، للمقارنة.

Y = -1500 / (x + 15) + 153 @ Wolfram Alpha


الإجابة الأصلية (قبل التحديث)

أعتقد أنك سترى بعض التقارب الغريب تجاه لون وجهتك إذا كنت تستخدم مقياسا غير خطي، ولكن مع ذلك، فيمكنك استخدام صيغة عامة وتحديد ما يمنحك متعدد الحدود أو المستردة أفضل النتائج.

أولا، وظيفة الجبر / متعدد الحدود.

A * X ^ N + B = Y

يمكن حل هذه الصيغة العامة في النظام لتعطيك متعدد الحدود من النظام N يناسب منحنى بين نقطتين معروفين. في هذه الحالة، نحل من أجلu003CX = 0, Y = 153> لu003CX = 500, Y = 53> وبعد

استبدال الزوج الإحداثي الأول، نحصل بسهولة على B.

A * (0) ^ N + B = (153)
0 + B = (153)
B = 153

الآن، استبدال الزوج الثاني، يمكننا أن نجد A.

A * (500) ^ N + 153 = (53)
A * (500) ^ N = -100
A = -100 / (500 ^ N)

إذا كنت تريد مقياس خطي، فأنت بديلا N = 1، وهذا يعطينا = -0.20.

-0.20 * X + 153 = Y

إذا كنت تريد مقياسا تربيعيا، فأنت بديلا N = 2، وهذا يعطينا = -0.0004.

-0.0004 * X ^ 2 + 153 = Y

يمكنك أيضا استخدام بعض القيمة غير الصحيحة ل N، بين 1 و 2 (TRY 1.5 أو 1.6)، والتي أعتقد أنها ستمنحك نتائج أفضل. لاحظ أيضا أنه نظرا لأن هذه الوظيفة تزداد، فسيطرح في النهاية أقل من الصفر، ولكن بعد مرور المنحنى فقط خلال النقطة الثانية.

هنا هي الوظيفة الأسية. أنا أستعمل هيا كقاعدة هنا، على الرغم من أنه يمكنك تغييرها إلى أي شيء آخر أكبر من 1. لتناسب منحنى بين نقطتين، سنحصل على أفضل النتائج إذا كانت كلا النقاط لها قيم y أكثر من الصفر. خلاف ذلك، علينا أن نضيف إزاحة وتحديد مكان نريد أن يكون الأساس. لأغراض هنا، سنفترض أن خط الأساس هو y = 0. هذا يعني أنه كما يزيد X، سوف يزحف Y في النهاية نحو، ولكن ليس في الواقع الوصول، 0، بعد أن مرت خلال النقطة الثانية.

A * e ^ (B * X) = Y

مرة أخرى، حل للتنسيق الأول.

A * e ^ (B * 0) = 153
A * e ^ (0) = 153
A * 1 = 153
A = 153

بديلا للحصول على B، مع الإحداثيات الثانية.

153 * e ^ (B * 500) = 53
e ^ (B * 500) = 53 / 153
B * 500 = ln(53 / 153)
B = ln(53 / 153) / 500

LN (VAL) هو السجل الطبيعي الذي يعكس ه ^ فال. تقول حاسبة بلدي أن ب يساوي -0.002120292015680627257791111990627257791119905378211199053782، أو ربما -0.0021 من شأنه أن يعمل باختصار. إذا كنت ترغب في حل هذا من أجل القواعد المستردة الأخرى، فاستخدم هويات الأسس / اللوغاريتم في نفس الموضة لحلها لأي قاعدة أخرى، وتغيير قاعدة LOGARITMM إلى LN () [LOG () في JS] أو سجل () [سجل () / math.log10e في JS].

نصائح أخرى

يجب أن تكون أكثر تحديدا، ولكن Y = 154-X ^ 0.742625 يجب أن تفعل الخدعة. هنا، الرقم العشري هو سجل (101) / سجل (500).

http://www.wolframalpha.com/input/؟i=154-x.^٪ 28Log٪ 28101٪ 29٪ 2FLOG٪ 28599٪ 29٪ 29

لا أعرف ما هو المنحنى هو بالضبط ولكن من المحتمل أن يكون في عائلة1/(x^d)حيث د هو الأسأل الخاص بك. بحث هنا لفكرة ما يبدو عليه المنحنى. هل هذا ما تريده؟

أساسا ربما تريد حل المعادلة اللوجستية DY / DX = K Y (YMAX - Y). الحل في الرابط المقدم.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top