Tag Info

Hot answers tagged

1

The first argument of VectorScale is the "unit scale to use, given as a fraction of the diagonal of the overall bounding box", according to the documentation, so if we dynamically rescale the fraction we use so it is equal to the maximum length vector at each $\theta$ (occurs at the points in the corners), we can get the desired behavior. With[ {xi = -π, ...


1

myVectorPlot[x__]:= VectorPlot[x] /. Arrow[{p_, q_}]:>Arrow[{p + (q - p)/2, q + (q - p)/2}]; Manipulate[ { sample = Table[ {x - (x*Cos[θ] - y*Sin[θ]), y - (x*Sin[θ] + y*Cos[θ])}, {x, -Pi, Pi, 1}, {y, -Pi, Pi, 1} ]; scale = Max[Map[Norm, sample, {2}]]; myVectorPlot[{-x + (x*Cos[θ] - y*Sin[θ]), -y + (x*Sin[θ] + y*Cos[θ])}, {x, -Pi, Pi}, {y, ...


1

I'm interpreting your question as asking how to display all the vectors in your plot scaled to the same length as the vectors in the corners of the plot range. You can do that as follows: With[{max = N[π]}, Manipulate[ VectorPlot[{x - (x Cos[θ] - y Sin[θ]), y - (x Sin[θ] + y Cos[θ])}, {x, -max, max}, {y, -max, max}, Axes -> True, ...


1

First, a fixed version of your code: ClearAll[eOF0, eOF1, eOF2, eOF3] eOF0[int_, dt_, nas_, nts_] := Module[{d = ConstantArray[2, {nas + 1, nts}]}, For[j = nts, j > 1, j--, d = ReplacePart[d, {1, j - 1} -> (1 - int*dt)*d[[1, j]]]]; Grid[d]] eOF0[0.01, 0.1, 4, 4] and a few alternatives eOF1[int_, dt_, nas_, nts_] := Module[{d = ...



Only top voted, non community-wiki answers of a minimum length are eligible