Можно ли создать черепах квадратной формы, пропорциональной x% площади или размера мировой поверхности в Netlogo?

#netlogo

#netlogo

Вопрос:

Я хотел инициализировать свой мир с помощью черепах, которые теоретически занимали бы x% от общей площади поверхности или размера мира. Как я узнаю, каков точный размер каждой черепахи? Я знаю, что размер мира можно рассчитать по:

 world-width
world-height
  

Мои черепахи имеют треугольный размер и в настоящее время имеют размер 4, и в соответствии с размером патча 5 и размерами мира, установленными на -80 80 -80 80, этот размер идеален, и я хотел бы сохранить его на уровне 4.

Как мне рассчитать, какое количество черепах будет занимать 1%, 5%, 10%, 20% а 40% от всей площади поверхности?

Ответ №1:

Вы на правильном пути с world-width and world-size . Они дают вам размер мира, основанный на количестве патчей.

Если вы хотите, чтобы черепаха имела половину площади поверхности, вам просто нужно обновить ее size переменную, которая также измеряется в патчах. Таким образом, черепаха с size числом 1 в точности такая же высокая и широкая, как один патч.

 to make-half-size-square
  clear-all
  ; assumes we want a square shape, just use `sqrt` on the total world surface area
  let half-surface-size sqrt (world-width * world-height / 2)
  show half-surface-size
  crt 1 [
    set shape "square"
    set size half-surface-size
  ]
end

to make-half-size-circle
  clear-all
  ; assumes we want a circle shape
  let half-surface-size 2 * sqrt ((world-width * world-height / 2) / pi)
  show half-surface-size
  crt 1 [
    set shape "circle"
    set size half-surface-size
  ]
end
  

Тем не менее, пара дополнительных битов информации:

  1. size Единственный контролирует визуальный размер черепахи в представлении мира. Он по-прежнему работает только на одном патче. Если вы хотите получить все черепахи / патчи «под» формой черепахи, вам нужно будет использовать in-radius (для круга) или установить флажок с ограничением, используя черепаху size (для квадрата).
  2. Может показаться, что черепаха занимает не совсем половину площади поверхности. Это связано с тем, что форма, которую использует черепаха, может не доходить до предела ее возможного размера. Даже square форма, которая поставляется с NetLogo, не имеет полностью своих краев в конце, но circle имеет.

Комментарии:

1. Большое спасибо за ответ. На самом деле я хотел создать много черепах, но их общая площадь поверхности составляла половину площади поверхности мира. Как я могу это сделать? В настоящее время они представляют собой треугольники, и их размер установлен равным 4, потому что этот размер идеально подходит для моей визуализации, и они занимают максимальные размеры в редакторе фигур tuirtles. Я использую размер патча 5, а мировая ширина и мировая высота отображаются как 161 и 161 каждый прямо сейчас. Я хочу инициализировать популяцию черепах, которая занимала бы 1%, 5%, 10%, 20% и 40% от общей доступной площади поверхности. Заранее спасибо.

2. Я попытался подсчитать общее количество патчей и разделить их на размер моих треугольников, а затем умножить это число на 0.01, 0.05, 0.1, 0.2 и 0.4, чтобы увидеть, сколько треугольников мне нужно создать, но число далеко.