{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2025-12-14T01:33:56.000Z","description":"Problems submitted by members of the MATLAB Central community.","is_default":true,"created_by":161519,"badge_id":null,"featured":false,"trending":false,"solution_count_in_trending_period":0,"trending_last_calculated":"2025-12-14T00:00:00.000Z","image_id":null,"published":true,"community_created":false,"status_id":2,"is_default_group_for_player":false,"deleted_by":null,"deleted_at":null,"restored_by":null,"restored_at":null,"description_opc":null,"description_html":null,"published_at":null},"problems":[{"id":561,"title":"Find the jerk","description":"No, it's not the author of this problem...\r\n\r\nJerk is the rate of change in acceleration over time of an object.  So, if given the position of an object over time in the form of a 1-by-N vector, return the indices i where there is nonzero jerk.  \r\n\r\nSuper rad bonus hint: The signal you need to find the jerk of will be given by the variable sig, created with the commands \r\n\r\n  h = 0.065; % stepsize\r\n  t = -10:h:10;\r\n  sigCoefs = 2*rand(1,3)-1;\r\n  sig = polyval(sigCoefs,t);\r\n  breakPoint = randi(length(sig)-2)+1;\r\n  sig(breakPoint) = (1.01)*sig(breakPoint); % this creates a nonzero jerk\r\n \r\nCheck the signal visually with\r\n\r\n  plot(t,sig,'k.-')\r\n\r\nNow, using just sig, determine breakPoint.\r\n ","description_html":"\u003cp\u003eNo, it's not the author of this problem...\u003c/p\u003e\u003cp\u003eJerk is the rate of change in acceleration over time of an object.  So, if given the position of an object over time in the form of a 1-by-N vector, return the indices i where there is nonzero jerk.\u003c/p\u003e\u003cp\u003eSuper rad bonus hint: The signal you need to find the jerk of will be given by the variable sig, created with the commands\u003c/p\u003e\u003cpre class=\"language-matlab\"\u003eh = 0.065; % stepsize\r\nt = -10:h:10;\r\nsigCoefs = 2*rand(1,3)-1;\r\nsig = polyval(sigCoefs,t);\r\nbreakPoint = randi(length(sig)-2)+1;\r\nsig(breakPoint) = (1.01)*sig(breakPoint); % this creates a nonzero jerk\r\n\u003c/pre\u003e\u003cp\u003eCheck the signal visually with\u003c/p\u003e\u003cpre class=\"language-matlab\"\u003eplot(t,sig,'k.-')\r\n\u003c/pre\u003e\u003cp\u003eNow, using just sig, determine breakPoint.\u003c/p\u003e","function_template":"function idx = findAJerk(sig)\r\n  idx = find(sig\u003e0);\r\nend","test_suite":"%% \r\n\r\n  h = 0.065; % stepsize\r\n  t = -10:h:10;\r\n\r\nfor tr = 1:1000\r\n  sigCoefs = 2*rand(1,3)-1;\r\n  sig = polyval(sigCoefs,t);\r\n  breakPoint = randi(length(sig)-2)+1;\r\n  sig(breakPoint) = (1.01)*sig(breakPoint);\r\n  assert(any(abs(findAJerk(sig) - breakPoint)\u003c=6)) % extra wide window out of kindness\r\nend\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":4,"created_by":2688,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":73,"test_suite_updated_at":"2012-04-07T16:14:29.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2012-04-07T03:32:53.000Z","updated_at":"2026-01-31T12:36:27.000Z","published_at":"2012-04-07T03:37:20.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eNo, it's not the author of this problem...\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eJerk is the rate of change in acceleration over time of an object. So, if given the position of an object over time in the form of a 1-by-N vector, return the indices i where there is nonzero jerk.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eSuper rad bonus hint: The signal you need to find the jerk of will be given by the variable sig, created with the commands\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[h = 0.065; % stepsize\\nt = -10:h:10;\\nsigCoefs = 2*rand(1,3)-1;\\nsig = polyval(sigCoefs,t);\\nbreakPoint = randi(length(sig)-2)+1;\\nsig(breakPoint) = (1.01)*sig(breakPoint); % this creates a nonzero jerk]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eCheck the signal visually with\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[plot(t,sig,'k.-')]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eNow, using just sig, determine breakPoint.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"}],"problem_search":{"errors":[],"problems":[{"id":561,"title":"Find the jerk","description":"No, it's not the author of this problem...\r\n\r\nJerk is the rate of change in acceleration over time of an object.  So, if given the position of an object over time in the form of a 1-by-N vector, return the indices i where there is nonzero jerk.  \r\n\r\nSuper rad bonus hint: The signal you need to find the jerk of will be given by the variable sig, created with the commands \r\n\r\n  h = 0.065; % stepsize\r\n  t = -10:h:10;\r\n  sigCoefs = 2*rand(1,3)-1;\r\n  sig = polyval(sigCoefs,t);\r\n  breakPoint = randi(length(sig)-2)+1;\r\n  sig(breakPoint) = (1.01)*sig(breakPoint); % this creates a nonzero jerk\r\n \r\nCheck the signal visually with\r\n\r\n  plot(t,sig,'k.-')\r\n\r\nNow, using just sig, determine breakPoint.\r\n ","description_html":"\u003cp\u003eNo, it's not the author of this problem...\u003c/p\u003e\u003cp\u003eJerk is the rate of change in acceleration over time of an object.  So, if given the position of an object over time in the form of a 1-by-N vector, return the indices i where there is nonzero jerk.\u003c/p\u003e\u003cp\u003eSuper rad bonus hint: The signal you need to find the jerk of will be given by the variable sig, created with the commands\u003c/p\u003e\u003cpre class=\"language-matlab\"\u003eh = 0.065; % stepsize\r\nt = -10:h:10;\r\nsigCoefs = 2*rand(1,3)-1;\r\nsig = polyval(sigCoefs,t);\r\nbreakPoint = randi(length(sig)-2)+1;\r\nsig(breakPoint) = (1.01)*sig(breakPoint); % this creates a nonzero jerk\r\n\u003c/pre\u003e\u003cp\u003eCheck the signal visually with\u003c/p\u003e\u003cpre class=\"language-matlab\"\u003eplot(t,sig,'k.-')\r\n\u003c/pre\u003e\u003cp\u003eNow, using just sig, determine breakPoint.\u003c/p\u003e","function_template":"function idx = findAJerk(sig)\r\n  idx = find(sig\u003e0);\r\nend","test_suite":"%% \r\n\r\n  h = 0.065; % stepsize\r\n  t = -10:h:10;\r\n\r\nfor tr = 1:1000\r\n  sigCoefs = 2*rand(1,3)-1;\r\n  sig = polyval(sigCoefs,t);\r\n  breakPoint = randi(length(sig)-2)+1;\r\n  sig(breakPoint) = (1.01)*sig(breakPoint);\r\n  assert(any(abs(findAJerk(sig) - breakPoint)\u003c=6)) % extra wide window out of kindness\r\nend\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":4,"created_by":2688,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":73,"test_suite_updated_at":"2012-04-07T16:14:29.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2012-04-07T03:32:53.000Z","updated_at":"2026-01-31T12:36:27.000Z","published_at":"2012-04-07T03:37:20.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eNo, it's not the author of this problem...\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eJerk is the rate of change in acceleration over time of an object. So, if given the position of an object over time in the form of a 1-by-N vector, return the indices i where there is nonzero jerk.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eSuper rad bonus hint: The signal you need to find the jerk of will be given by the variable sig, created with the commands\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[h = 0.065; % stepsize\\nt = -10:h:10;\\nsigCoefs = 2*rand(1,3)-1;\\nsig = polyval(sigCoefs,t);\\nbreakPoint = randi(length(sig)-2)+1;\\nsig(breakPoint) = (1.01)*sig(breakPoint); % this creates a nonzero jerk]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eCheck the signal visually with\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[plot(t,sig,'k.-')]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eNow, using just sig, determine breakPoint.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"}],"term":"tag:\"jerk\"","current_player_id":null,"fields":[{"name":"page","type":"integer","callback":null,"default":1,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"per_page","type":"integer","callback":null,"default":50,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"sort","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"body","type":"text","callback":null,"default":"*:*","directive":null,"facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":false},{"name":"group","type":"string","callback":null,"default":null,"directive":"group","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"difficulty_rating_bin","type":"string","callback":null,"default":null,"directive":"difficulty_rating_bin","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"id","type":"integer","callback":null,"default":null,"directive":"id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"tag","type":"string","callback":null,"default":null,"directive":"tag","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"product","type":"string","callback":null,"default":null,"directive":"product","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_at","type":"timeframe","callback":{},"default":null,"directive":"created_at","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"profile_id","type":"integer","callback":null,"default":null,"directive":"author_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_by","type":"string","callback":null,"default":null,"directive":"author","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player_id","type":"integer","callback":null,"default":null,"directive":"solver_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player","type":"string","callback":null,"default":null,"directive":"solver","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"solvers_count","type":"integer","callback":null,"default":null,"directive":"solvers_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"comments_count","type":"integer","callback":null,"default":null,"directive":"comments_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"likes_count","type":"integer","callback":null,"default":null,"directive":"likes_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leader_id","type":"integer","callback":null,"default":null,"directive":"leader_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leading_solution","type":"integer","callback":null,"default":null,"directive":"leading_solution","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true}],"filters":[{"name":"asset_type","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":"\"cody:problem\"","prepend":true},{"name":"profile_id","type":"integer","callback":{},"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":"author_id","static":null,"prepend":true}],"query":{"params":{"per_page":50,"term":"tag:\"jerk\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"jerk\"","","\"","jerk","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f4f4639b560\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f4f4639b4c0\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f4f4639ac00\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f4f4639b7e0\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f4f4639b740\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f4f4639b6a0\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f4f4639b600\u003e":"tag:\"jerk\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f4f4639b600\u003e":"tag:\"jerk\""},"queried_facets":{}},"query_backend":{"connection":{"configuration":{"index_url":"http://index-op-v2/solr/","query_url":"http://search-op-v2/solr/","direct_access_index_urls":["http://index-op-v2/solr/"],"direct_access_query_urls":["http://search-op-v2/solr/"],"timeout":10,"vhost":"search","exchange":"search.topic","heartbeat":30,"pre_index_mode":false,"host":"rabbitmq-eks","port":5672,"username":"search","password":"J3bGPZzQ7asjJcCk","virtual_host":"search","indexer":"amqp","http_logging":"true","core":"cody"},"query_connection":{"uri":"http://search-op-v2/solr/cody/","proxy":null,"connection":{"parallel_manager":null,"headers":{"User-Agent":"Faraday v1.0.1"},"params":{},"options":{"params_encoder":"Faraday::FlatParamsEncoder","proxy":null,"bind":null,"timeout":null,"open_timeout":null,"read_timeout":null,"write_timeout":null,"boundary":null,"oauth":null,"context":null,"on_data":null},"ssl":{"verify":true,"ca_file":null,"ca_path":null,"verify_mode":null,"cert_store":null,"client_cert":null,"client_key":null,"certificate":null,"private_key":null,"verify_depth":null,"version":null,"min_version":null,"max_version":null},"default_parallel_manager":null,"builder":{"adapter":{"name":"Faraday::Adapter::NetHttp","args":[],"block":null},"handlers":[{"name":"Faraday::Response::RaiseError","args":[],"block":null}],"app":{"app":{"ssl_cert_store":{"verify_callback":null,"error":null,"error_string":null,"chain":null,"time":null},"app":{},"connection_options":{},"config_block":null}}},"url_prefix":"http://search-op-v2/solr/cody/","manual_proxy":false,"proxy":null},"update_format":"RSolr::JSON::Generator","update_path":"update","options":{"url":"http://search-op-v2/solr/cody"}}},"query":{"params":{"per_page":50,"term":"tag:\"jerk\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"jerk\"","","\"","jerk","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f4f4639b560\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f4f4639b4c0\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f4f4639ac00\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f4f4639b7e0\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f4f4639b740\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f4f4639b6a0\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f4f4639b600\u003e":"tag:\"jerk\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f4f4639b600\u003e":"tag:\"jerk\""},"queried_facets":{}},"options":{"fields":["id","difficulty_rating"]},"join":" "},"results":[{"id":561,"difficulty_rating":"easy"}]}}