I have a function $f:Dom \to \mathbb{R}^2$ where $Dom\subseteq \mathbb{R}^5$. That is given a point $x\in Dom$ I can compute $f(x)$. I want to plot the boundary of the 2D-region $f(Dom)$. How to do that?

For example, the following is my function $f$:

G1 = {{2, 0}, {0, 1}}
G1 = {{2, 0}, {0, 1}}
PD[j1_, j2_, rj_] := {{j1, rj*j1*j2}, {rj*j1*j2, j2}}
R1[k1_, k2_, j1_, j2_, rj_, rk_] := 0.5*Log[Det[G1.PD[k1,k2,rk].Transpose[G1] + IdentityMatrix[2]]]
R2[k1_, k2_, j1_, j2_, rj_, rk_] := 0.5*Log[Det[G2.(PD[j1,j2,rj]+PD[k1,k2,rk]).Transpose[G2] + IdentityMatrix[2]]/Det[G2.PD[k1,k2,rk].Transpose[G2] + IdentityMatrix[2]]]
f[k1_, k2_, j1_, j2_, rj_, rk_] := {R1[k1_, k2_, j1_, j2_, rj_, rk_],R2[k1_, k2_, j1_, j2_, rj_, rk_]}

And $Dom=\{k_1,k_2,j_1,j_2,r_k,r_j\mid k_1+k_2+j_1+j_2\le P, -1\le rj,rk\le 1\}$ where $P$ is some fixed value say $P=4$.

  • $\begingroup$ The syntax for the definition of f is wrong. Use f[k1_, k2_, j1_, j2_, rj_, rk_] := {R1[k1, k2, j1, j2, rj, rk], R2[k1, k2, j1, j2, rj, rk]}. $\endgroup$ – rhermans Jul 11 '18 at 19:01
  • $\begingroup$ For an arbitrary function f: A -> B there is general no way to find the image of f over a subset. You have to think about the function. Is it convex? Does it map convex shapes to convex shapes? etc. It looks like you have an interesting Math problem here. There's no function I know of that's going to help you reason about this for you though. $\endgroup$ – Searke Jul 11 '18 at 19:42
  • $\begingroup$ May be one brute idea: generate random points in your 5D-space, map them and plot those points to take a first look. If your lucky, may be your regions does not have any holes, but that is something a real mathematician would have to investigate. Then, take one of those points (since it belongs to the 2D-region) and starting from that point maximize the norm of the vector in respect to your 5D-region for every direction of a set of directions of your choice (e.g., every 5 degrees, i.e. for 72 directions). $\endgroup$ – Mauricio Fernández Jul 12 '18 at 17:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.