El uso de prime"'", en Julia variables

0

Pregunta

Tengo muchas variables y matrices que me gustaría llamar con un primo, como:

xprime, yprime, rprime y así sucesivamente.

Yo creo que no los puedo usar x', y', r' etc. como se usa, por ejemplo, para las matrices traspuestas.

julia> x' = 5
ERROR: syntax: invalid assignment location "x'" around REPL[2]:1
Stacktrace:
 [1] top-level scope at REPL[2]:1

julia> x = [1,2]
2-element Array{Int64,1}:
 1
 2

julia> x'
1×2 LinearAlgebra.Adjoint{Int64,Array{Int64,1}}:
 1  2

Estoy abierto a cualquier sugerencia de una manera más conveniente de xprime, yprime etc. que es bastante largo y feo, creo.

julia variables
2021-11-22 13:53:52
1

Mejor respuesta

10

Usted puede utilizar prime:

julia> x′ = 1
1

julia> x′
1

help?> ′
"′" can be typed by \prime<tab>

Observe la diferencia que yo uso el (prime), mientras que usted trató de usar ' (comilla simple). El uso de una sola cita no está permitido en nombre de la variable como se invoca adjunto de operación en un valor anterior (que puede ver en su ejemplo).

Como se explica en la ayuda para puede escribirlo en Julia REPL y en la mayoría de los editores configurado para admitir Julia escribiendo \prime y pulsando Tab.

2021-11-22 14:38:24

Haciendo esto puede cumplir con los objetivos originales, pero yo tendría que decir que es el mal en estado puro, desde el punto de legibilidad. El ingenuo lector probablemente no tienen idea de que \prime se utiliza en lugar de una sola cita. Esto es similar al uso de mayúsculas Alfa como un nombre de variable. Ver gist.github.com/tdunning/219ec70253542253cd66f1021d57e677 para un ejemplo.
Ted Dunning

De acuerdo - también yo aconsejo que se use cualquiera de las secuencias de caracteres que iba a ser cambiado si alguien usa Unicode normalization en la secuencia que lleva a la confusión del usuario.
Bogumił Kamiński

Así que al final, te sugerimos utilizar xprime, rprime como lo hice yo primero?
JKHA

Depende. Si tiene la intención de su código para ser leído por otros usuarios sin ningún tipo de referencia, a continuación, probablemente sí. Sin embargo, si el código no uso de álgebra lineal (por lo que no hay riesgo de confusión con adjuntos) y, por ejemplo, el código reproduce textualmente las fórmulas matemáticas de papel (donde el primer se utiliza), entonces creo que está bien para usarlo. En resumen, yo diría: debe estar seguro de que la notación que utiliza no llevar al lector a la confusión. Otro ejemplo es que los programadores generalmente son disuadidos de hacer las variables con nombre l como en muchas fuentes se ve de forma muy similar a 1.
Bogumił Kamiński

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................