NumPy 1.14 - numpy.polynomial.polyutils.mapdomain()

numpy.polynomial.polyutils.mapdomain




numpy

numpy.polynomial.polyutils.mapdomain

numpy.polynomial.polyutils.mapdomain(x, old, new) [source]

इनपुट बिंदुओं पर रेखीय मानचित्र लागू करें।

रेखीय मानचित्र offset + scale*x जो डोमेन old को डोमेन new पर मैप करता है उसे पॉइंट x लागू किया जाता है।

पैरामीटर:

x : array_like

मैप किए जाने वाले पॉइंट्स। यदि x ndarray का उपप्रकार है, तो उपप्रकार संरक्षित किया जाएगा।

पुराना, नया : array_like

दो डोमेन जो मानचित्र निर्धारित करते हैं। प्रत्येक को (सफलतापूर्वक) ठीक दो मानों वाले 1-डी सरणियों में बदलना चाहिए।

यह दिखाता है:

x_out : ndarray

दो डोमेन के बीच रैखिक मानचित्र के आवेदन के बाद x के समान आकार के बिंदुओं की सरणी।

यह भी देखें

getdomain , mapparms

टिप्पणियाँ

प्रभावी रूप से, यह लागू होता है:

x \ _out = नया [0] + m (x - पुराना [0])

कहा पे

m = \ frac {नया [१] -न्यू [०]} {पुराना [१] -दल [०]}

उदाहरण

>>> from numpy.polynomial import polyutils as pu
>>> old_domain = (-1,1)
>>> new_domain = (0,2*np.pi)
>>> x = np.linspace(-1,1,6); x
array([-1. , -0.6, -0.2,  0.2,  0.6,  1. ])
>>> x_out = pu.mapdomain(x, old_domain, new_domain); x_out
array([ 0.        ,  1.25663706,  2.51327412,  3.76991118,  5.02654825,
        6.28318531])
>>> x - pu.mapdomain(x_out, new_domain, old_domain)
array([ 0.,  0.,  0.,  0.,  0.,  0.])

इसके अलावा जटिल संख्याओं के लिए काम करता है (और इस तरह इसका उपयोग जटिल विमान में किसी भी रेखा को किसी भी अन्य रेखा पर मैप करने के लिए किया जा सकता है)।

>>> i = complex(0,1)
>>> old = (-1 - i, 1 + i)
>>> new = (-1 + i, 1 - i)
>>> z = np.linspace(old[0], old[1], 6); z
array([-1.0-1.j , -0.6-0.6j, -0.2-0.2j,  0.2+0.2j,  0.6+0.6j,  1.0+1.j ])
>>> new_z = P.mapdomain(z, old, new); new_z
array([-1.0+1.j , -0.6+0.6j, -0.2+0.2j,  0.2-0.2j,  0.6-0.6j,  1.0-1.j ])