Bill Allombert on Wed, 07 Feb 2024 18:15:37 +0100
|
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: how to determine normal vector for points on a plane in ℤ³
|
- To: pari-users@pari.math.u-bordeaux.fr
- Subject: Re: how to determine normal vector for points on a plane in ℤ³
- From: Bill Allombert <Bill.Allombert@math.u-bordeaux.fr>
- Date: Wed, 7 Feb 2024 18:15:32 +0100
- Arc-authentication-results: i=1; smail; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; d=math.u-bordeaux.fr; s=openarc; t=1707326134; c=relaxed/relaxed; bh=NxgniRcZ4Pi40ne1gJ8cPIv2GbFaX/RMZI/0E74rVBA=; h=DKIM-Signature:Date:From:To:Subject:Message-ID:Mail-Followup-To: References:MIME-Version:Content-Type:Content-Disposition: Content-Transfer-Encoding:In-Reply-To; b=yJOcbP+G1e3J3otP0WAnYBlzFARekP7IZAI2LEter62I6IlYgkByi4pSBoGkOEUDqBCS5nm4+1dT17p4SylOLpVTgAST0iagMHc/mpCIvZx3Y0ryhz2pZ+Lrt7ni6VW4obTdh80nMyfmgG0UUnzMby5hHAZ9tiGELb5vvRrENx7H1dY1+fChY4k8EzgqZVnKuP4X9/+K8sVaetEqc917uOykOYOXLECho85VcpKzzZ/U3vfz7tUk8tU7pYseTuLqbM1BE1peo03/Q1L7aN56ZdIRFf8EXVovcHht0X9ww0XeL2ZVFofuLWI81bCDTY+NTSs2YW42oM6pbyDrTU8vRdu09pQpOsJG8kUy4nL7HWkFiYz5UoMNZ+DUUmhY/UFvG0lrQnMloF4bHH4l1GvfK/ZLQlOwaYsZc+KxdCmove7AE0A2ZgULCknwNT6UzU2Jrl+UHxtbfzqXXumG+b75H2AbOoVaDTy8IjTKFsd5PrvSG/+ARjd9U81DF97IDac6BMKdIwrNNEkOi12ViUil5eTcWs2I55RiJdzVK3YmdibvcJ0lHyEA/9B4I3dRHvqbx7FYBJTCAh1Q+N0PmOzhQLAvA4G2ThhxET20Q+eTGtgEVl3TndyxHN+RattobVI3taLCgiNSP/Z+UAjdksLT/wqUYvxaNXA9Xl/5in3ju+c=
- Arc-seal: i=1; a=rsa-sha256; d=math.u-bordeaux.fr; s=openarc; t=1707326134; cv=none; b=Ld2eLmN7C03zyMjJuSUeTwmBo+Tj8L0l4PaS7mWcsA4qpC3gCBaFLWvfvaNd8r27MEbmS63oulnRu8RTeFy8bDj5zfkW771GUN2WDzIqvC9j628enrx+ptHb5QQS0nlwbfjZQ5hosvHeIDgCtbgfZv6JUHbJl2CRn4ukRIc/L693P9rw3wPQyUTT7M5cprD74Rckxepz1cJAWLoZNT9C8/t30lAR1C7tRq1ovHl7Jyvh3ZGIzFdDM6Ax9ppATGRil89LbyFodnR9envKHk71j+YBSWAqhuzqyDcXbDeLV1mmxIbgxNYoF8VI7XRz8LN6RBHWM3PI+4l2c2uj2ZSuxrQJPbM2YtFB3bk9+j36bF+zpKnbnhrt8gxF7ZTY3yh+4BsvtG0uoj/HUhDCnP5IrpCJBXhmcNGHwNlS1ls2s8uIoM1MyDxyUdVmjE+vqKXLlZO5rl09ADy3Chni8S635C9HWcqfHPDTVjBJQB7bG5PeMZs3s2iUivJjB7vSbPiJiDimJd2GGslMTq0g3fQtAfss74hov6XfiU7Y7ZVV59pWG0Zxh4GvMkZuaJtONzPP2FgtBfPu/7N7ZC2G2S/hn27sNB4WmJoAPIdHXvbNuAc2Ig2QYSt4Ms0BFUHxTvcXQoAgDxFogNTUyeueNSwqxA61PyphEx3RTOymrHFcvoo=
- Authentication-results: smail; dmarc=none header.from=math.u-bordeaux.fr
- Authentication-results: smail; arc=none
- Delivery-date: Wed, 07 Feb 2024 18:15:37 +0100
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=math.u-bordeaux.fr; s=2022; t=1707326134; bh=NxgniRcZ4Pi40ne1gJ8cPIv2GbFaX/RMZI/0E74rVBA=; h=Date:From:To:Subject:References:In-Reply-To:From; b=Xw4IZQL9qJbGIAmDOsgAp8lkEbu8JZ03tk6NpsGoEJZf6YAjOp8MAcJBVg877VE3g Wt5yGuE+1Puz6UBv3wRU6D5lCsPDEC8c7YEVY7DpKxi0ho1AQNFDYZGnRWJfsnVXWg XBVkJQnjcnpL+vniLYbReJMVASiD1ZW+JhjmlQxvpz91xlS9q1WLuc7D8zebsBzJKH /tzeDQXqn4mX3TOEbomVE71DNXvUblYnyMJh+Hqne7oLbDOJjrSAkSC/T1FpwhCzZS 6wDTglslQymEECu41ww+nuOAglgi2MSOf0S1nUabFBHN1o3xiVFgc6tTfn29ctYGQ9 WAVIylOABzDn9tVzpzd20jAQ23YZ/1luqICLg4xvUnx5gkkRpwD56IbVwxiq7+DHmB gVb/GZPoYoNvkFWYAyr7IRoZayTYUTPENPq+9OiW9G5oWcQHi3Dok6i0/FMnQnOG5N g+DcCq95n+B7H/6YgPENzMx+9bFH3PYHw2FtoaBm8hD+aEcf3stybZdB2fK1jc6Nlw hTrDwa82RNu16lgM9EHdoum4WdmoeU5wK8KQWAwSDGoMbyKGjBAsMd0Ox5mTddepDv EdVhFwiTPQcubQg1hzvzQz4QJ66U4PFzdKC7zfjYbNcCn5d4EyaouSvF/I02CDqg4M FvoGMchN2A5LyT5EDpteMV8M=
- In-reply-to: <f919a3b6f0628095bf997ec58cac52c2@stamm-wilbrandt.de>
- Mail-followup-to: pari-users@pari.math.u-bordeaux.fr
- References: <f919a3b6f0628095bf997ec58cac52c2@stamm-wilbrandt.de>
On Wed, Feb 07, 2024 at 05:06:53PM +0100, hermann@stamm-wilbrandt.de wrote:
> I want to determine the normal vector of points in ℤ³ that I know by
> construction are on same plane.
>
> Just learned how to do that with JSCAD "plane.fromPoints()", but while the
> first example result looks OK, null vector as normal vector in 2nd example
> does not make sense:
> https://discord.com/channels/775984095250612234/914627480512503829/1204797915433013289
>
> Since I generated the JSCAD code from PARI/GP, I would like to determine the
> normal vector for say these vertices from above thread (with screenshot
> there) in PARI/GP:
> [[-1, -3, -1], [0, -3, -1], [1, -3, -1], [-2, -2, -1], [-1, -2, -1], [0, -2,
> -1], [1, -2, -1], [2, -2, -1], [-3, -1, -1], [-2, -1, -1], [-1, -1, -1], [0,
> -1, -1], [1, -1, -1], [2, -1, -1], [3, -1, -1], [-3, 0, -1], [-2, 0, -1],
> [-1, 0, -1], [0, 0, -1], [1, 0, -1], [2, 0, -1], [3, 0, -1], [-3, 1, -1],
> [-2, 1, -1], [-1, 1, -1], [0, 1, -1], [1, 1, -1], [2, 1, -1], [3, 1, -1],
> [-2, 2, -1], [-1, 2, -1], [0, 2, -1], [1, 2, -1], [2, 2, -1], [0, 3, -1],
> [1, 3, -1]]
>
> I would say that normal vector should be either [0,0,1] or [0,0,-1].
I assume you means 'the same affine plane', and the normal vector
is not unique.
All you need to do is to find a,b,c,d so that, for all your points,
a*x+b*y+c*z+d=0
So just add a component 1 to your vectors and take the kernel
? matker(Mat(apply(x->concat(x,1),V~)))
%15 = [0;0;1;1]
So a=0, b=0 and c=1 so one of the normal vectors is [0,0,1]
Cheers,
Bill