数学星空
发表于 2020-1-6 22:53:42
18棵17行结果:
初始数据:
[, , , , , , , , , , , , , , , , ]
[, , , , , , , , , , , , , , , , , ]
变换基点:
A-->
I--> [-1/2, -sqrt(3)/6, 1]
K[-1, 0, 1]-->
Q-->
变换矩阵
[, , [-14/9, 2/3, -8/9]]
变换后坐标
, , , [-3/22, -(5*sqrt(3))/66, D], , [-3/10, sqrt(3)/30, F], [-3/8, -sqrt(3)/24, G], , [-1/2, -sqrt(3)/6, I], , , [-1/8, -sqrt(3)/24, L], , [-3/26, -sqrt(3)/78, N], [-1/22, -(5*sqrt(3))/66, O], , ,
画图得到
数学星空
发表于 2020-1-6 22:58:34
18棵17行结果:
初始数据:
[, , , , , , , , , , , , , , , , ]
[, , , , , , , , , , , , , , , , , ]
变换基点
B-->,
I--> [-1/2, -sqrt(3)/6, 1],
K[-1, 0, 1]--> ,
R-->
变换矩阵
[, [-1/27*sqrt(3), 1/18*sqrt(3), 1/54*sqrt(3)], [-1/9, -1/3, -4/9]]
变换后坐标
, , [-3/10, sqrt(3)/30, C], , [-3/8, -sqrt(3)/24, E], , , [-3/22, -(5*sqrt(3))/66, H], [-1/2, -sqrt(3)/6, I], [-1/8, -sqrt(3)/24, J], , , [-3/38, -(7*sqrt(3))/114, M], , , [-1/10, sqrt(3)/30, P], ,
画图得到
数学星空
发表于 2020-1-6 23:03:15
18棵17行结果:
初始数据:
[, , , , , , , , , , , , , , , , ]
[, , , , , , , , , , , , , , , , , ]
变换基点
C-->,
E[-2, 2, 1]-->[-1/2, -sqrt(3)/6, 1],
N-->,
D-->
变换矩阵
[, [-1/27*sqrt(3), -1/54*sqrt(3), 1/54*sqrt(3)], [-1/9, 4/9, -13/9]]
变换后坐标
, , , , [-1/2, -sqrt(3)/6, E], [-1/4, sqrt(3)/12, F], [-3/26, -sqrt(3)/78, G], , , [-3/28, sqrt(3)/84, J], [-1/20, -sqrt(3)/60, K], , [-3/20, -(7*sqrt(3))/60, M], , , , , [-3/8, -sqrt(3)/24, R]
画图得到
mathe
发表于 2020-1-7 07:51:00
下面这个代码可以对于一个输入的果树,输出所有的同构变换
代码需要使用nauty库,可以从 http://pallini.di.uniroma1.it/ 下载
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <algorithm>
#include <assert.h>
#define MAXN 128
#include "nauty/naugroup.h"
#include "nauty/nauty.h"
#include <string.h>
#include <ctype.h>
#include <vector>
#include <set>
const int MAX_NODE_NUM=24;
const int MAX_EDGE_NUM=(((MAX_NODE_NUM-1)/2)*MAX_NODE_NUM)/3;
const int NODES_PER_EDGE=4;
const int NUM_NODES=MAX_NODE_NUM;
const int MAX_TOTAL_EDGES=MAX_EDGE_NUM;
char chessboard;
char used;
char line_buf;
char line_buf2;
int line_count;
int eq_count;
char line;//keep parent input here
void sort_edge(char buf)
{
int i,j;
for(i=0;i<NODES_PER_EDGE;i++)for(j=i+1;j<NODES_PER_EDGE;j++){
if(buf>buf&&buf>=0){
char tmp=buf;buf=buf;buf=tmp;
}
}
}
struct Perm{
int data;
Perm(){int i;for(i=0;i<NUM_NODES;i++)data=0;}
};
int cur_nodes;
std::vector<Perm> allperms;
void anaperm()
{
std::set<int> curindexes;
int i,j;
int mask;
printf("Dump perm:\n");
memset(mask,-1,sizeof(mask));
for(i=0;i<cur_nodes;i++){
if(mask>=0)continue;
int newindex=0;
curindexes.clear();
for(j=0;j<allperms.size();j++){
int t = allperms.data;
curindexes.insert(t);
}
std::set<int>::iterator it;
for(it=curindexes.begin();it!=curindexes.end();++it){
mask[*it]=newindex++;
}
printf("P<%d>\n",(int)curindexes.size());
for(j=0;j<allperms.size();j++){
std::set<int>::iterator it;
printf("\t");
for(it=curindexes.begin();it!=curindexes.end();++it){
int ind = allperms.data[*it];
printf("%c",'A'+ind);
}
printf("\n");
}
printf("\n");
}
}
void writeautom(int *p, int n)
{
int i;
int node_find=0;
Perm perm;
int j=0;
for(i=0;i<n;++i){
if(p<cur_nodes){
node_find=1;
perm.data=p;
}else{
node_find=1;
}
}
allperms.push_back(perm);
}
void output_cur(int nodes)
{
graph g1, g2;
int orbits;
EMPTYGRAPH(g1, MAXM, line_count+nodes);
grouprec *group;
int i,j;
int degree;
memset(degree,0,sizeof(degree));
for(i=0;i<line_count;i++){
for(j=0;j<NODES_PER_EDGE;j++){
if(line_buf>=0)degree]++;
}
}
for(i=0;i<line_count;i++){
for(j=0;j<NODES_PER_EDGE;j++){
if(line_buf>=0){
ADDONEEDGE(g1, line_buf, nodes+i,MAXM);
}
}
}
cur_nodes=nodes;
int lab, ptn, lab2;
static DEFAULTOPTIONS_GRAPH(options);
statsblk stats;
memset(&stats, 0, sizeof(stats));
EMPTYGRAPH(g2, MAXM, line_count+nodes);
int m = MAXM, n = line_count+nodes;
options.getcanon = TRUE;
options.defaultptn = FALSE;
options.userautomproc = groupautomproc;
options.userlevelproc = grouplevelproc;
for(i=0;i<n;++i){lab=i;ptn=1;}
ptn=0;ptn=0;
allperms.clear();
densenauty(g1, lab, ptn, orbits, &options, &stats, m, n, g2);
group = groupptr(FALSE);
makecosetreps(group);
allgroup(group, writeautom);
anaperm();
}
void init()
{
int i,j;
line_count=0;eq_count=0;
for(i=0;i<NUM_NODES;i++)for(j=0;j<NUM_NODES;j++){
chessboard=-1;
}
for(i=0;i<NUM_NODES;i++)used=0;
}
char test(int x,int y,int z, int w)
{
if(chessboard>=0||chessboard>=0||
chessboard>=0||chessboard>=0||
chessboard>=0||chessboard>=0)
return 0;
return 1;
}
void set_to(int x,int y, int z,int w, int value)
{
if(w>=0){
chessboard=chessboard=chessboard=
chessboard=chessboard=chessboard=
chessboard=chessboard=chessboard=
chessboard=chessboard=chessboard=value;
}else{
chessboard=chessboard=
chessboard=chessboard=
chessboard=chessboard=value;
}
}
void setv(int x,int y,int z,int w)
{
if(w<0)w=-1;
set_to(x,y,z,w,line_count);
used++;
used++;
used++;
if(w>=0)used++;
line_buf=x;
line_buf=y;
line_buf=z;
line_buf=w;
line_count++;
if(w>=0)eq_count+=2;else eq_count++;
}
void process_one_line(char *input)
{
int i;
init();
i=strlen(input);
while(i>0&&input!=' '&&(input<'A'||input>'Z'))i--;
if(i<=0)return;
input='\0';
if(i%4!=0){
fprintf(stderr,"Invalid input %s\n",input);
return;
}
int bc=i/4;
int maxnode=0;
for(i=0;i<bc;i++){
setv(input-'A',input-'A',input-'A',input-'A');
}
for(i=0;i<bc*4;i++){
if(input-'A'>maxnode)maxnode=input-'A';
}
printf("%s\n",input);
output_cur(maxnode+1);
}
int main()
{
int lc=0;
int start=time(NULL);
while(fgets(line,1024,stdin)){
if(line<'A'||line>'Z')
continue;
process_one_line(line);
}
return 0;
}
以671#第一个16棵15行数据为例子:我们可以输入
BCHIADGJBEGKDFIKAFHLCEJLCFGMDEHMAEINBFJNACKOBDLOABMPCDNPEFOP
代码输出:
字母ABCDEF之前的置换和余下10个字母之间的置换,两个都是120行,说明这个自同构群是120阶的。
我们感兴趣的是其中素数阶自同构变换。而120的素因子有5,3,2,
所以我们需要寻找其中5阶,3阶和2阶自同构变换,看是否可以对应相应的旋转变换或对称变换(2阶的才可能对称)。
比如P<6>前几项为:
ABCDEF
ABEFCD
CDABFE
CDFEAB
ECADBF
ACFEBD
DCEFBA
EFABDC
BFECDA
BDEFAC
第一行代表恒等变换,所有元素都不变。
第二行代表A,B保持不变,CE互换,DF互换,可能是以AB为对称轴的对称变换,也可能是将A,B映射到无穷远直线后的中心对称变换。
第三行代表A,C互换,B,D互换和E,F互换,同样可能是轴对称或中心对称变换
第四行代表A->C->F->B->D->E->A,是一个6阶自同构变换,我们可以测试这个变换的平方变换,即A->F->D->A 以及C->B->E->C探测这是否为一个3阶旋转变换
第五行D,F保持不变,A->E->B->C->A是一个四阶自同构,由于有两个不动点,无法变换为90度旋转变换,但是可以探测其平方变换是否可以变换为轴对称
第六行A保持不变,B->C->F->D->E->B, 是一个五阶变换,我们需要探测其是否为5阶旋转变换。
为此,我们可以将B,C,F,D分别变换为正五边形前四个顶点的坐标。
计算得出变换阵为
S=[-0.80901699437494742410229341718281905886 2.6180339887498948482045868343656381177 -0.50000000000000000000000000000000000000]
[-2.4898982848827802734015846213978370554 0 1.5388417685876267012851452880184549120]
[-2.6180339887498948482045868343656381177 2.6180339887498948482045868343656381177 -1.6180339887498948482045868343656381177]
变换后各点坐标为
(08:09) gp > A=h(1+t,-t,1)
%356 = [-2.6284852756056206792 E-39, -2.6284852756056206792 E-39]
(08:09) gp > B=h(0,1,0)
%357 =
(08:09) gp > C=h(1,0,0)
%358 =
(08:09) gp > D=h(-t,1+t,1)
%359 = [-0.80901699437494742410229341718281905886, -0.58778525229247312916870595463907276860]
(08:09) gp > E=h(0,0,1)
%360 =
(08:10) gp > F=h(1,1,1)
%361 = [-0.80901699437494742410229341718281905887, 0.58778525229247312916870595463907276859]
(08:10) gp > G=h(0,1,1)
%362 =
(08:10) gp > H=h(1,2+t,0)
%363 =
(08:10) gp > II=h(1,1+t,0)
%364 = [-0.80901699437494742410229341718281905887, 2.4898982848827802734015846213978370554]
(08:10) gp > J=h(1,0,1)
%365 =
(08:10) gp > K=h(0,-t,1)
%366 = [-0.80901699437494742410229341718281905886, -2.4898982848827802734015846213978370554]
(08:10) gp > L=h(-t,0,1)
%367 =
(08:10) gp > M=h(1+t,1,1)
%368 = [-2.6180339887498948482045868343656381177, -9.509949066069770468 E-39]
(08:10) gp > N=h(1,1+t,1)
%369 = [-0.11803398874989484820458683436563811772, 0.36327126400268044294773337874030937480]
(08:10) gp > OO=h(-t,-t,1)
%370 = [-0.11803398874989484820458683436563811772, -0.36327126400268044294773337874030937481]
(08:10) gp > P=h(1+t,1+t,1)
%371 = [-0.38196601125010515179541316563436188228, -3.632477311958332928 E-39]
作图得出
mathe
发表于 2020-1-7 09:38:48
3阶变换比较麻烦。
如果我们找到一个3阶变换,其中包含两个以上不动点,那么必然不是3阶旋转变换。
而如果只有一个不动点,那么可以尝试将不动点映射为正三角形中心,而3个依次变换的3阶变换点映射为正三角形三个顶点。
而如果没有不动点,那么我们需要尝试找两组对应的依次变换的3阶点。
如果上面所有测试过程试验后并没有成功找到3阶旋转变换,那就说明不存在旋转对称的结果。
以670#中数据
A[+1 ,0 , +1]
B[+1 ,0 , 0]
C
D
E[+1 ,-1 , 0]
F
G[+1 ,+1 , 0]
H
I[+1 ,-1 , +1]
J[-1 ,0 , +1]
K[+2 ,-1 , +1]
L[+2 ,+1 , +1]
M[+1 ,+2 , +1]
N[-1 ,+1 , +1]
O[+2 ,-3 , +1]
BEFGCDFHABHJACEKBDIKADGLAFIMCGJMEHINBCLNDEJOFKLO
为例,对应变换为
Dump perm:
P<3>
ABD
BDA
DAB
P<3>
CEF
EFC
FCE
P<3>
GHK
HKG
KGH
P<3>
IJL
LIJ
JLI
P<3>
MNO
NOM
OMN
这是一个3阶变换,第一个恒等变换,第二个和第三个互逆,所以随便试验那个都是等价的。
选择第二个,于是有变换A->B->D->A以及C->E->F->C.
于是计算直线AC, BE,DF的交点
1.如果三条直线交于一点,那么这个交点只能作为变换的不动点,可以尝试将它映射为正三角形中心。
但是本题数据不符合。
2. 三条直线依次两两交于点U,V,W而且这些点和A,B,D; C,E,F 都不同,
那么如果是旋转变换,那么必然有交比, , 都相等,如果不相等,那么必然不是旋转变换,淘汰。如果相等,那么可以继续
3. 三条直线依次两两交于点U,V,W而且{U,V,W}={A,B,D}或{U,V,W}={C,E,F}
在本题中,正好有{U,V,W}={C,E,F}
2和3的结果都找到三角形{U,V,W}而且点A,B,D依次在边UV, VW, WU上,
我们需要尝试将U,V,W映射到正三角形三个顶点,而B,A分别在两边上相对位置相同,为此,我们可以做带参数h的映射 V->(0,0), W->(1,0), U->(cos(pi/3), sin(pi/3)), B->(1-h,0), A->(h*cos(pi/3), h*sin(pi/3))
上面W,U,B,A的映射唯一确定一个带参数h的射影变换,其中C,F映射后坐标固定,我们还需要计算D映射后的坐标并且要求UD : DW=h : (1-h),由此计算得出h需要满足一个41次方程,其中只有5个实数解。其中一个解h=0对应变换不可逆,所以依次选择余下4个h,它们都把(U,V,W)或者说(C,E,F)映射为正三角形但是没有一个是旋转变换,这说明这个图也不存在对称方案:
mathe
发表于 2020-1-7 09:58:51
而我们现在再以670#的数据
A
B[+1 ,0 , 0]
C
D[-1 ,+1 , +1]
E[+1 ,+1 , 0]
F[+1 ,0 , +1]
G
H[+1 ,-1 , 0]
I
J[+1 ,+2 , +1]
K[-1 ,0 , +1]
L[-1/2 ,+3/2 , +1]
M[+1 ,+1 , +1]
N[-2 ,+2 , +1]
O[-1 ,+5/3 , +1]
BCEHACGIBFGKAEJKAFHLDEILABDMCFJMDGHNBIJNCDKOLMNO
来说明二阶变换,
其变换群总是保持C,D,K,M,O为不动点,但是A,B互换,E,G互换,F,J互换,H,I互换,L,N互换
由于不动点CDKO四点共线,如果我们将CDKO映射为对称轴,M为无穷远点,可能可以得到轴对称图形。
而如果将CDKO映射为无穷远直线,M映射为对称中心,可能可以得到中心对称图形。
为此,我们可以试探A->(-1,1),B->(-1,-1), E->(1,1), G->(1,-1)看看是否M可以映射为轴对称图形
以及试探A->(-1,1), B->(1,-1), E->(1,1), G->(-1,-1)看看是否映射为中心对称图形
1.轴对称试探
A->(-1,1),B->(-1,-1), E->(1,1), G->(1,-1):
变换阵S=
[ 1 0 -1]
[ 1 01]
[-1 2 -1]
变换结果除了M在意料中是无穷远点,K也是无穷远点:
为了把额外无穷远点K去除,我们需要改变横轴无穷远点,由此将变换阵S再左乘上带参数r的变换阵
[ 1 0 0]
[ 0 1 0]
[ 1 0 -r]
然后在参数r=0.4时为了调整纵横比将横坐标再放大到双倍,得到
2.中心对称
A->(-1,1), B->(1,-1), E->(1,1), G->(-1,-1)得出
变换阵
[-101]
[ 1 -21]
[-10 -1]
结果
mathe
发表于 2020-1-7 13:17:53
672#的17棵15行整数解
ABDGCFGIDEHIBFHKBCELEGJMCDKMACHNDFJNAEFOGHLOBIJPAKLPAIMQBNOQ
mathe
发表于 2020-1-7 14:51:31
17棵16行实数解没有对称解
[+1*t^3-2*t^2+3*t-1]
A[+1,+0,0];
B(+0,+1)
C(1-t,t^2 - t + 1)
D(-t^2 + t,1-t)
E[+1,-t^2 + t - 2,0];
F(+0,+0)
G(t,+1)
H[+1,1-t,0];
I(+0,t^2 - t + 1)
J[+0,+1,0];
K(+1,+0)
L(1-t,t^2 - 2*t + 2)
M(1-t,+0)
N(-t,t^2 - t + 1)
O(+1,+1)
P(-1*t^2+1*t-1,t^2 - 2*t + 2)
Q(+1,t^2 - 2*t + 2)
AEHJBFIJCEGKDFGLBDEMAFKMCJLMACINBHLNABGOCDHODIKPEFNPGHIQJKOQALPQ
数学星空
发表于 2020-1-7 18:04:22
超级嵌套五角形代数表示(16棵15行)
初始数据:
[, , , , , , , , , , , , , , , ]
[, , , , , , , , , , , , , , ]
变换基点:
M-->[-cos(1/10*Pi), sin(1/10*Pi), 1]
P--> ,
N-->
I-->
变换矩阵
[[(50*s^3 + 117*s^2 + 31*s - 8)/(33*s^3 + 73*s^2 + 19*s - 5), 1/4*(-125*s^3 - 281*s^2 - 73*s + 19)/((33*s^3 + 73*s^2 + 19*s - 5)*(1 + t)), (s^3*(-200*t - 75) + (-468*t - 187)*s^2 + (-124*t - 51)*s + 32*t + 13)/(132*s^3 + 292*s^2 + 76*s - 20)],
,
[-(2049*s^3 + 4747*s^2 + 1249*s - 325)*(1 + t)/((8 + 4*t)*(317*s^3 + 731*s^2 + 192*s - 50)), (75 - 125*t + (781*t - 487)*s^3 + (481*t - 287)*s + (1823*t - 1101)*s^2)/(1268*s^3 + 2924*s^2 + 768*s - 200), (-200 - 325*t + (1249*t + 768)*s + (2049*t + 1268)*s^3 + (4747*t + 2924)*s^2)/(1268*s^3 + 2924*s^2 + 768*s - 200)]])
变换后坐标:
[(-6825655*s^3 - 15792900*s^2 - 4153095*s + 1081080)/(4435592*s^3 + 10262774*s^2 + 2698816*s - 702522), (3317*s^3 + 7671*s^2 + 2017*s - 525)/(1562*s^3 + 3646*s^2 + 962*s - 250), A],
[(6825655*s^3 + 15792900*s^2 + 4153095*s - 1081080)/((11612508*t + 7176916)*s^3 + (26868426*t + 16605652)*s^2 + (7065644*t + 4366828)*s - 1839238*t - 1136716), (-400 - 525*t + (3317*t + 2536)*s^3 + (2017*t + 1536)*s + (7671*t + 5848)*s^2)/((1562*t - 974)*s^3 + (3646*t - 2202)*s^2 + (962*t - 574)*s - 250*t + 150), B],
[-5*(2 + t)*(1104415*s^3 + 2555340*s^2 + 671983*s - 174922)/((5806254*s^3 + 13434213*s^2 + 3532822*s - 919619)*(1 + t)), ((634*t - 781)*s^3 + (1462*t - 1823)*s^2 + (384*t - 481)*s - 100*t + 125)/((2049*s^3 + 4747*s^2 + 1249*s - 325)*(1 + t)), C],
,
[(s^3*(-11044150*t - 4218495) + (-25553400*t - 9760500)*s^2 + s*(-6719830*t - 2566735) + 1749220*t + 668140)/((11612508*t + 7176916)*s^3 + (26868426*t + 16605652)*s^2 + (7065644*t + 4366828)*s - 1839238*t - 1136716), (325 - 200*t + (1268*t - 2049)*s^3 + (2924*t - 4747)*s^2 + (768*t - 1249)*s)/((4098*t + 2536)*s^3 + (9494*t + 5848)*s^2 + (2498*t + 1536)*s - 650*t - 400), E],
[(1081080 + 2830300*t + s*(-10872925*t - 4153095) + s^3*(-17869805*t - 6825655) + s^2*(-41346300*t - 15792900))/((27660608*t + 4435592)*s^3 + (63999626*t + 10262774)*s^2 + (16830104*t + 2698816)*s - 4380998*t - 702522), ((5366*t + 2049)*s^3 + (12418*t + 4747)*s^2 + (3266*t + 1249)*s - 850*t - 325)/((8196*t + 6634)*s^3 + (18988*t + 15342)*s^2 + (4996*t + 4034)*s - 1300*t - 1050), F],
[-5*t*(3573961*s^3 + 8269260*s^2 + 2174585*s - 566060)/((27660608*t + 11612508)*s^3 + (63999626*t + 26868426)*s^2 + (16830104*t + 7065644)*s - 4380998*t - 1839238), ((4585*t + 487)*s^3 + (10595*t + 1101)*s^2 + (2785*t + 287)*s - 725*t - 75)/((5660*t + 1562)*s^3 + (13140*t + 3646)*s^2 + (3460*t + 962)*s - 900*t - 250), G],
[(s^3*(-6825655*t - 9432815) + (-15792900*t - 21825300)*s^2 + s*(-4153095*t - 5739455) + 1081080*t + 1494020)/((4435592*t - 9918240)*s^3 + (10262774*t - 22948530)*s^2 + (2698816*t - 6034840)*s - 702522*t + 1570910), ((-1268*t - 5853)*s^3 + (-2924*t - 13519)*s^2 + (-768*t - 3553)*s + 200*t + 925)/((5072*t + 8582)*s^3 + (11696*t + 19746)*s^2 + (3072*t + 5182)*s - 800*t - 1350), H],
[(-75*s^3 - 187*s^2 - 51*s + 13)/(132*s^3 + 292*s^2 + 76*s - 20), (-2049*s^3 - 4747*s^2 - 1249*s + 325)/(2536*s^3 + 5848*s^2 + 1536*s - 400), I],
[(3911380 + 2830300*t + s^3*(-17869805*t - 24695460) + s*(-10872925*t - 15026020) + s^2*(-41346300*t - 57139200))/((16048100*t + 8871184)*s^3 + (37131200*t + 20525548)*s^2 + (9764460*t + 5397632)*s - 2541760*t - 1405044), ((4585*t + 3804)*s^3 + (10595*t + 8772)*s^2 + (2785*t + 2304)*s - 725*t - 600)/((5660*t + 3124)*s^3 + (13140*t + 7292)*s^2 + (3460*t + 1924)*s - 900*t - 500), J],
[(s^3*(-24695460*t - 6825655) + (-57139200*t - 15792900)*s^2 + s*(-15026020*t - 4153095) + 3911380*t + 1081080)/((43708708*t + 16048100)*s^3 + (101130826*t + 37131200)*s^2 + (26594564*t + 9764460)*s - 6922758*t - 2541760), ((8683*t + 1268)*s^3 + (20089*t + 2924)*s^2 + (5283*t + 768)*s - 1375*t - 200)/((9758*t + 4098)*s^3 + (22634*t + 9494)*s^2 + (5958*t + 2498)*s - 1550*t - 650), K],
[(2162160 + 2830300*t + s^3*(-17869805*t - 13651310) + s^2*(-41346300*t - 31585800) + s*(-10872925*t - 8306190))/((27660608*t + 8871184)*s^3 + (63999626*t + 20525548)*s^2 + (16830104*t + 5397632)*s - 4380998*t - 1405044), ((8683*t + 6634)*s^3 + (20089*t + 15342)*s^2 + (5283*t + 4034)*s - 1375*t - 1050)/((9758*t + 3124)*s^3 + (22634*t + 7292)*s^2 + (5958*t + 1924)*s - 1550*t - 500), L],
[(125*s^3 + 281*s^2 + 73*s - 19)/(132*s^3 + 292*s^2 + 76*s - 20), (781*s^3 + 1823*s^2 + 481*s - 125)/(2536*s^3 + 5848*s^2 + 1536*s - 400), M],
[(-5522075*s^3 - 12776700*s^2 - 3359915*s + 874610)/(5806254*s^3 + 13434213*s^2 + 3532822*s - 919619), (634*s^3 + 1462*s^2 + 384*s - 100)/(2049*s^3 + 4747*s^2 + 1249*s - 325), N],
[(s^3*(-28913955*t - 11044150) + (-66899700*t - 25553400)*s^2 + s*(-17592755*t - 6719830) + 4579520*t + 1749220)/((62498132*t + 23225016)*s^3 + (144604904*t + 53736852)*s^2 + (38027036*t + 14131288)*s - 9898712*t - 3678476), ((12781*t + 7415)*s^3 + (29583*t + 17165)*s^2 + (7781*t + 4515)*s - 2025*t - 1175)/((13856*t + 5660)*s^3 + (32128*t + 13140)*s^2 + (8456*t + 3460)*s - 2200*t - 900), O],
其中:
t^2 + 3*t + 1 = 0 ,{t = -0.38196601125010}, {t = -2.61803398874990}
s^4 - 4*s^3 - 14*s^2 - 4*s + 1 = 0,[{s = 0.158384440324536}, {s = 6.31375151467504}, {s = -0.509525449494429}, {s = -1.96261050550515}]
取{s = 0.158384440324536, t = -0.38196601125010}
得到
[, [-2.48983442817669, -0.809016994416148, B], , [-1.53880114294888, 2.11803398881176, D], , [-0.0000139827489347497, -4.84689576090527*10^(-13), F], [-6.51879112609281, 2.11803398955404, G], [-0.587769938250253, -0.809016994349770, H], , , , [-4.02787370805532, -5.54508497109113, L], [-0.951056516295215, 0.309016994366550, M], , , ]
画图得到
数学星空
发表于 2020-1-7 18:23:19
16棵14行结果
初始数据:
[, , , , , , , , , , , , , , , ]
[, , , , , , , , , , , , , ]
变换基点
-->,
-->[-1/2, -sqrt(3)/6, 1],
-->,
-->
变换矩阵
[, [-1/18*sqrt(3), -1/108*sqrt(3), 1/54*sqrt(3)], [-1/6, -4/9, -1/9]]
变换后坐标
[, , [-1/5, (2*sqrt(3))/15, C], , [-1/20, -sqrt(3)/60, E], [-1/2, -sqrt(3)/6, F], , , , [-2/7, sqrt(3)/21, J], [-1/23, (2*sqrt(3))/69, K], , , [-1/26, (5*sqrt(3))/78, N], , [-1/2, (5*sqrt(3))/6, P]]
画图得到
初始数据:
[, , , , , , , , , , , , , , , ]
[, , , , , , , , , , , , , ]
变换基点
-->,
-->[-1/2, -sqrt(3)/6, 1],
-->,
-->
变换矩阵
[, , [-1, -5/9, 1/9]]
变换后坐标
, , , [-3/26, -sqrt(3)/78, D], , , [-1/8, -sqrt(3)/24, G], [-3/10, sqrt(3)/30, H], [-3/8, -sqrt(3)/24, I], , , , [-1/2, -sqrt(3)/6, M], [-1/10, sqrt(3)/30, N], ,
画图得到
初始数据:
[, , , , , , , , , , , , , , , ]
[, , , , , , , , , , , , , ]
变换基点
-->[[-1/4, 1/6*sqrt(3), 1],
[-1, 1, 1, H]-->[-1/2, 0, 1],
-->,
-->
变换后坐标
, , , [-1/8, sqrt(3)/12, D], , , [-1/9, sqrt(3)/9, G], [-1/2, 0, H], [-1/3, sqrt(3)/9, I], , , , [-1/4, sqrt(3)/6, M], [-1/6, 0, N], ,
画图得到