Показать сообщение отдельно
Старый 28.12.2016, 08:39   #550
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,286
По умолчанию

Вернемся к нашей замечательной функции


Больше всего я таких вещах я люблю проверить на ассоциативность. А именно, найти разницу между x~(y~z) и (x~y)~z. Иногда получается забавно. Не разочаровал и этот раз. В отличии от настоящих ученых мой код рабочий, можно пользоваться (язык R). Если поставить k=0 Или k=1 тоже выходит забавно.

Код:
# Чтобы покрасить
surf.colors <- function(x, col = terrain.colors(20)) {
  x.avg <- (x[-1, -1] + x[-1, -(ncol(x) - 1)] +
              x[-(nrow(x) -1), -1] + x[-(nrow(x) -1), -(ncol(x) - 1)]) / 4
  colors = col[cut(x.avg, breaks = length(col), include.lowest = T)]
  return(colors)
}

# Базовая функция
fun1 <- function(x,y,g=0.05){ (x+y+g^2-sqrt((x-y)^2+g^2))/2}
x <- seq(0,1,length=100)
y <- x

# Разница при перестановке
fun2<-function(x,y,k=0.5) {
  fun1(fun1(x,y),k)-fun1(x,fun1(y,k))
}
# построение графика
z <- outer(x,y,fun2)
persp(x,y,z,theta=-30,phi=30,expand=0.5,col=surf.colors(z),ltheta=100,xlab="x",ticktype="detailed",ylab="y",zlab="z")


Если что, мне просто нравится графики строить. Это не для дискуссии: я лучше пойду филологинь травить за то, что они иностранному не так учат или экономистов, что они в экономике не понимают. У филологинь хоть сиськи есть, а у экономистов нормальные здоровые комплексы.
А то что контингент с двух сторон в процессе полемики такие корки мочит, что хоть святых выноси, я комментировать даже не буду. Больше пятисот сообщений в теме ни о чем! Есть что сказать, так напиши статью в нормальный журнал и покажи, что это ерунда. Нет, вместо этого будем засирать Портал аспирантов, делать в четырех строчках кода три ошибки и учить филологов и историков нечеткой логике.

Теперь ответ на судьбоносный вопрос: "Почему старые профессора видят только лженауку в трудах молодых ученых?"
42
Потому, что со временем понимаешь, что все фигня, кроме пчел, а если подумать, то и пчёлы фигня. Не надо было прогуливать "Историю и философию науки", там на этот вопрос даются квалифицированные объяснения.

-----
Нарисовал мультик.



Как это сделано
Код:
frames = 21
kk<-seq(0,1,length.out=frames)
for(i in 1:frames){
  if (i < 10) {name = paste('000',i,'plot.png',sep='')}
  
  if (i < 100 && i >= 10) {name = paste('00',i,'plot.png', sep='')}
  if (i >= 100) {name = paste('0', i,'plot.png', sep='')}
  png(name,width=600,height=600)
  z <- outer(x,y,fun2,k=kk[i])
  persp(x,y,z,theta=-30,phi=30,expand=0.5,col=surf.colors(z),ltheta=100,xlab="x",ticktype="detailed",ylab="y",zlab="z",main=paste0("k=",sprintf("%.2f",kk[i])))
  dev.off()
}
Для сборки использовался ImageMagick
Команда:
Код:
magick *.png -delay 3 -loop 0 output.gif

Последний раз редактировалось Hogfather; 28.12.2016 в 10:37. Причина: Добавил мультик
---------
DNF is not an option
Hogfather вне форума   Ответить с цитированием
Реклама