Я создал мой неизменны Tensor_field
и функция nabla
, которая действует на тензор (т.е. nabla(a::Tensor_field) = do something
Могу ли я добавить метод к функции для получения в качестве аргумента другой конкретной функции?
Я добавил метод функционировать dot
для тензора:.. Base.dot(a::Tensor_field, b::Tensor_field) = do something...
Теперь я хочу определить новое поведение для функции dot
с nabla
в качестве аргумента. что-то вроде Base.dot(nabla::function, a::Tensor_field) = do something different
.
Я знаю, в Джулии мы можем передавать функции в качестве аргументов других функций, но я не мог найти в документы, как определить метод для «функционального» аргумента.
Если я печатаю typeof(nabla)
выход My_Module_Name.#nabla
, а не реальный DataType ...
Просто уточнить: 'My_Module_Name. # Nabla' _is_ настоящий DataType. Имя является странным и не может быть нормально доступным (поскольку '#' запускает комментарий), но все равно можно получить доступ через 'getfield (My_Module_Name, Symbol (" # nabla "))'. –